BCD (sigles de l'anglès Binary-coded decimal, decimal codificat en binari), o BCD8421, és un sistema numèric usat en sistemes computacionals i electrònics per a codificar nombres enters positius i facilitar les operacions aritmètiques. És un codi ponderat a causa del fet que cada posició numèrica té un pes específic (8421).

Fonaments

modifica

En BCD cada xifra que representa un dígit decimal (0, 1,...8 i 9) es representa amb el seu equivalent binari en quatre bits (nibble o quartet) (és així perquè és el nombre de bits necessari per a representar el nou, el nombre més alt que es pot representar en BCD). En la següent taula es mostren els codis BCD més emprats:

Decimal Natural Aiken 8 4 2 1 Excess-3
0 0000 0000 0000 0011
1 0001 0001 0001 0100
2 0010 0010 0010 0101
3 0011 0011 0011 0110
4 0100 0100 0100 0111
5 0101 1011 0101 1000
6 0110 1100 0110 1001
7 0111 1101 0111 1010
8 1000 1110 1000 1011
9 1001 1111 1001 1100


Com s'observa amb el BCD només s'utilitzen 10 de les 16 (= s4) possibles combinacions que es poden formar amb nombres de 4 bits, això significa que el sistema perd capacitat de representació, encara que facilita la comprensió dels nombres. Això és perquè el BCD només s'usa per a representar xifres no nombres en general. Això vol dir que per a nombres de més d'una xifra fan falta nombres BCD per a compondre-lo. A primera vista això pot semblar més complex però en realitat de cara al càlcul i la programació de sistemes digitals és summament pràctic, ja que permet treballar de fet amb nombres decimals ordinaris fent ús només dels bits possibles que atorga un circuit digital típic ON (1) / OFF (0).

Des que els sistemes informàtics començaren a emmagatzemar les dades en conjunts de vuit bits (octet), hi han dues maneres comunes d'emmagatzemar les dades BCD:

  • Omissió dels quatre bits més significatius(com succeïx en el EBCDIC)
  • Emmagatzemant de dues dades BCD, és el denominat BCD "empaquetat", en el qual també és inclòs en primer lloc el signe, en general amb 1100 per al + i 1101 per al -.

D'aquest mode, el nombre 127 seria representat amb (11110001, 11110010, 11110111) en el EBCDIC o (00010010, 01111100) en el BCD empaquetat.

El BCD segueix sent àmpliament utilitzat per a emmagatzemar dades, en aritmètica binaria o en electrònica. Els nombres es poden mostrar fàcilment en visualitzadors de set segments enviant cada quartet BCD a un visualitzador. La BIOS d'un ordinador personal emmagatzema generalment la data i l'hora en format del BCD, probablement per raons històriques es va evitar la necessitat de la seva conversió en ASCII.

L'avantatge del codi BCD front a la representació binària clàssica és que no hi ha límit per a la mida d'un nombre. Els nombres que es representen en format binari estan generalment limitats pel nombre major que es pot representar amb 8, 16, 32 o 64 bits. Per al contrari utilitzant BCD afegir un nou dígit només implica afegir una nova seqüència de 4 bits.

Vegeu també

modifica