Classe para BCD compactado?

Alguem sabe me dizer se existe alguma classe de transforme um número em um bcd compactado?

se alguem conhece alguma classe que faz isso, ou tem um algoritimo para isso, por favor me diga, pois acho que vai seu um pouco trabalhoso criar esta classe.

obrigado
feokuma

Eu nao diria que o formato BCD é compactado. Na realidade ele desperdiça espaço em um byte. Onde poderiamos armazenar valores entre 0 e 255, neste formato so armazenamos entre 0 e 99. Acho mais facil escreve uma rotina, ou classe, que faça a conversão do que procurar um solução pronta. Resumidamente, o calculo seria para armazenar o numero 57 (em decimal) por exemplo seria o seguinte 5*16+5=85. Para fazer o calculo inverso divide o numero 85 por 16. O resultao inteiro da divisao eh o primeiro digito e o resto da divisao, o segundo digito.

Espero ter ajudado.

tenho que usar o bcd por causa de um protocolo de comunicação com um equipamento.

não entendi muito bem o calculo que vc fez. o 16 é exatamente o quê?

bom de qualquer maneira, já é um alívio que alguem tenha respondido.

muito obrigado jcarlos

feokuma

Olá. Como no sistema BCD cada digito decimal ocupa 4 bits dentro de um byte. Precisamos dividir por 16 (2^4) para separarmos os 2 digitos.

sds,
JCARLOS