Perchè e lettere ùn sò micca in una fila in EBCDIC?

U standard ASCII hè statu aduttatu in u 1963, è avà quasi nimu usa una codificazione chì i primi 128 caratteri differenu da ASCII. In ogni casu, finu à a fine di u seculu passatu, EBCDIC hè stata utilizata attivamente - a codificazione standard per i mainframes IBM è i so computers EC cloni sovietici. EBCDIC resta a codificazione primaria in z/OS, u sistema operatore standard per i mainframes IBM Z moderni.

Ciò chì chjappà immediatamente l'ochju quandu sguardu à EBCDIC hè chì e lettere ùn sò micca in una fila: trà I и J è trà R и S ci eranu pusizioni inutilizate (nantu à l'urdinatore ES per questi intervalli distribuitu caratteri cirillichi). Quale averia pensatu di codificà e lettere cù spazi ineguali trà e lettere adiacenti ?

Perchè e lettere ùn sò micca in una fila in EBCDIC?

U nomu stessu EBCDIC ("Extended BCDIC") suggerisce chì sta codificazione - a cuntrariu di ASCII - ùn hè micca stata creata da zero, ma basatu annantu à a codificazione BCDIC di sei bit, chì hè stata utilizata dapoi. IBM 704 (1954):

Perchè e lettere ùn sò micca in una fila in EBCDIC?

Ùn ci hè micca una cumpatibilità inversa immediata: una funzione còmuda di BCDIC chì hè stata persa in a transizione à EBCDIC era chì i numeri 0-9 currisponde à i codici 0-9. Tuttavia, ci sò spazii di sette codici trà I и J è in ottu codici trà R и S sò digià stati à BCDIC. Da induve sò vinuti ?

A storia di (E)BCDIC principia simultaneamente cù a storia di IBM - assai prima di l'urdinatori elettronichi. IBM hè stata furmata com'è u risultatu di a fusione di quattru cumpagnie, di quale a più avanzata tecnologicamente era a Tabulating Machine Company, fundata in u 1896 da Herman Hollerith, l'inventore. tabulatore. I primi tabulatori simpricimenti cuntà u nùmeru di carte perforate in un locu specificu; ma in u 1905 Hollerith principia a pruduzzione decimale tabulaturi. Ogni carta per u tabulatore decimale era custituitu di campi di lunghezza arbitraria, è i numeri scritti in questi campi in a forma decimale abituale sò stati suminati nantu à u ponte sanu. A scomposizione di a mappa in campi hè stata determinata cunghjuntendu i fili nantu à u patch panel di u tabulatore. Per esempiu, nantu à sta carta perforata Hollerith, guardatu in a Biblioteca di u Cungressu, u numeru 23456789012345678 hè chjaramente stampatu, scunnisciutu cum'è divisu in campi:

Perchè e lettere ùn sò micca in una fila in EBCDIC?

U più attentu pò avè nutatu chì nantu à a carte Hollerith ci sò 12 fila per i buchi, anche se deci sò abbastanza per i numeri; è in BCDIC, per ogni valore di i dui bits più significativu, solu 12 codici sò usati da 16 pussibuli.

Di sicuru, questu ùn hè micca una coincidenza. Inizialmente, Hollerith intendeva filari supplementari per "marchi spiciali" chì ùn anu micca aghjuntu, ma solu cuntatu - cum'è in i primi tabulatori. (Oghje li chjameremu "campi di bit".) In più, trà i "marchi spiciali" era pussibule di stabilisce indicatori di gruppu: se a tabulazione necessitava micca solu i sume finali, ma ancu intermedii, allora u tabulatore si ferma quandu. hà rilevatu un cambiamentu in qualcunu di l'indicatori di u gruppu, è l'operatore hà avutu a riscriva i subtotali da i tavulini digitali nantu à carta, resettate u bordu, è ripiglià a tabulazione. Per esempiu, quandu si calculanu i saldi contabili, un gruppu di carte puderia currisponde à una data o una contraparte.

In u 1920, quandu Hollerith s'era digià ritirata, sò stati utilizati "tabulatori di typing", chì eranu cunnessi à un teletipu è puderanu stampà i subtotali stessi senza avè bisognu di l'intervenzione di l'operatore. A difficultà avà era di determinà ciò chì ognunu di i numeri stampati si riferiva. In u 1931, IBM hà decisu di utilizà "marchi speciali" per indicà e lettere: una marca in a 12a fila indicava a lettera da A à I, in u 11 - da J à R, à zero - da S à Z. U novu "tabulatore di l'alfabetu" puderia stampà u nome di ogni gruppu di carte cù i subtotali; in questu casu, a colonna ininterrotta hè diventata in un spaziu trà caratteri. Per piacè nutate chì S hè designatu da a cumminazzioni di buchi 0 + 2, è a cumminazzioni 0 + 1 ùn hè micca stata aduprata urigginariamente per u timore chì dui buchi accantu à l'altru in a listessa colonna causanu prublemi meccanichi in u lettore.

Perchè e lettere ùn sò micca in una fila in EBCDIC?

Avà pudete vede a tavola BCDIC da un angulu ligeramente sfarente:

Perchè e lettere ùn sò micca in una fila in EBCDIC?

Eccettu chì u 0 è u spaziu sò invertiti, i dui bits più significativu definiscenu a "marca speciale" chì hè stata perforata in a carta punch per u caratteru currispundenti da u 1931; è i quattru bits menu significativu determinanu u cifru perforatu in a parte principale di a carta. Simbulu sustegnu & - / hè statu aghjuntu à i tabulatori IBM in l'anni 1930, è a codificazione BCDIC di questi caratteri currisponde à e cumminazzioni di buchi perforati per elli. Quandu u supportu per un numeru ancu più grande di caratteri era necessariu, a fila 8 hè stata perforata cum'è una "marca speciale" addiziale - cusì, puderia esse finu à trè buchi in una colonna. Stu formatu di carte perforate hè stata praticamente invariata finu à a fine di u seculu. In l'URSS, abbandunonu i codificazioni latinu è di puntuazione di IBM, è per e lettere cirilliche punched parechji "marchi speciali" à una volta in e fila 12, 11, 0 - micca limitatu à trè buchi in una colonna.

Quandu l'urdinatore IBM 704 hè statu creatu, ùn anu micca pensatu longu à a codificazione di caratteri per questu: anu pigliatu a codificazione digià utilizata in carte perforate in quellu tempu, è solu "mettenu in u so locu". In u 0, durante a transizione da BCDIC à EBCDIC, i quattru bits d'ordine bassu di ogni simbulu sò stati lasciati immubiliati, ancu s'è i bits d'ordine altu sò stati mischiati un pocu. Cusì, u furmatu di carta perforata sceltu da Hollerith à u principiu di u seculu passatu hà influinzatu l'architettura di tutti i computer IBM, finu à l'IBM Z.

Source: www.habr.com

Add a comment