BCD - Binary-coded decimal

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

A codificação BCD (Binary-Coded Decimal) é usada com frequência em sistemas binários quando o resultado numérico deve ser mostrado no sistema decimal. Exemplos de uso são mostrar o valor numérico em um mostrador para a visualização por humanos. Apesar de existirem diferentes tipos de códigos BCD (ver notas no final da página), o mais utilizado é o BCD8421 que atribui os pesos binários normais aos bits. Assim o valor decimal do código BCD de um dígito () pode ser obtido fazendo a operação a mesma operação para obter o valor de um número binário de 4 bits:

Decimal binário (4 bits) BCD
0 0000 0000
1 0001 0001
2 0010 0010
3 0011 0011
4 0100 0100
5 0101 0101
6 0110 0110
7 0111 0111
8 1000 1000
9 1001 1001

No caso de valores representados com mais de um digito BCD cada dígito corresponde a um valor do sistema decimal (0 a 9) conforme tabela acima, e o valor é obtido considerando a ordem normal de leitura dos números decimais (..., Milhar, Centena, Dezena, Unidade). A tabela abaixo mostra alguns valores entre 0 e 99 representados em BCB.

Decimal binário (8 bits) dezena BCD unidade BCD
0 00000000 0000 0000
2 00000020 0000 0010
9 00001001 0000 1001
10 00001010 0001 0000
11 00001011 0001 0001
19 00010011 0001 1001
62 00111110 0110 0010
90 01011010 1001 0000
99 01100011 1001 1001
Notas
  • Apesar de não ser comum, é possivel realizar somas diretas de números BCD (ver wikipedia)
  • Outros códigos além do BCD8421 foram usados e publicados (ver wikipedia)
  • Existem algoritmos eficientes para software e hardware para fazer a conversão entre binário e BCD (ver Double Dabble)