|
La codifica Binary-coded decimal (BCD) è un modo comunemente utilizzato in informatica ed elettronica per rappresentare le cifre decimali in codice binario.
In questo formato ogni cifra di un numero è rappresentata da un codice binario di quattro bit, il cui valore è compreso tra 0 (0000) e 9 (1001). Le restanti sei combinazioni possono essere usate per rappresentare simboli. Per esempio il numero 127 è rappresentato in BCD come 0001, 0010, 0111.
Poiché i computer memorizzano i dati in byte di otto bit, è possibile memorizzare una cifra per byte e riempire i restanti quatto bit con zeri o uno (come nel codice EBCDIC), oppure mettere due cifre per byte, modalità chiamata packet BCD. I numeri packet BCD normalmente terminano con un codice di segno, solitamente 1100 per il + e 1101 per il meno. La cifra 127 si rappresenta 11110001, 11110010, 11110111 in EBCDIC e 00010010, 01111100 in packet BCD.
Sebbene il BCD comporti un notevole spreco di bit (circa 1/6 di memoria inutilizzata in packet BCD), in alcuni casi è preferibile perché ha una diretta corrispondenza con il codice ASCII. È sufficiente infatti sostituire i primi quattro bit inutilizzati con 0011 per ottenere il corrispondente ASCII.
Il codice BCD è molto usato in elettronica, specialmente in circuiti digitali privi di microprocessore, perché facilita la visualizzazione di lunghe cifre su display a sette segmenti, infatti ad ogni display fisico corrisponde esattamente una cifra. Esistono appositi circuiti integrati che effettuano la conversione da BCD nella corrispondente sequenza di accensione dei segmenti. Anche l'esecuzione di semplici calcoli aritmetici è più semplice da effettuarsi su cifre BCD per circuiti logici combinatori.
Il BIOS dei personal computer memorizzano la data e l'ora in formato BCD, presumibilmente per ragioni storiche.
|