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
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.
Ù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.
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.
Avà pudete vede a tavola BCDIC da un angulu ligeramente sfarente:
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