[C con Clase] RESPRESENTACIÓN VALORES HEXADECIMALES

Susana Sacie susanitis en gmail.com
Mar Nov 24 14:09:23 CET 2009


Estoy realizado un proyecto con un lector usb para leer datos de un
pasaporte en visual Studio 2008. En el punto donde estoy tengo que
transmitir y recibir  del lector una serie de bytes en hexadecimal y
analizar algunos bits. El caso es que con las librerias que proporcina el
lector transmito y recibo  los datos en un array de caracteres .

Si yo  espero recibir el valor hexadecimal '0008B1' lo que recibo es:

si tengo seleccionado  protocolo ASCII:  la cadena "0008B1" //es con el que
trabajo

si tengo seleccionado protocolo binario: la cadena "00 08 B1"



la variable que uso de buffer es :

char buffer[512];  //donde    cada posición del array almacena 1 carácter de
los anteriores obviamente.



Si yo quiero transmitirle el valor ‘3412’ se lo transmito como una cadena
“3412”.



El problema viene porque conseguí por Internet código que me está ayudando a
programar, y cuando tiene que tx algo lo declara de la siguiente forma:

-si queremos tx al pasaporte el valor hexadecimal ‘3412’ lo define de la
siguiente forma:



unsigned char buffer[2]={0x12,0x34};// donde vemos que cada posición
almacena un byte hexadecimal   y ordenados de menos significativo a mas
significativo, byte a byte.



El problema que tengo es que tengo mucho codigo que trabaja con este
formato. No entiendo porque todos los valores a tx al lector son declarados
de esta forma si el lector no puede recibir los  datos en ese formato.

No se que hacer porque tengo algoritmos que  trabajan sobre un valor
recibido previamente del lector, pero yo recibo los datos en formato “3412”
y el algoritmo espera {0x12,0x34}.

muchas gracias por vuestra valiosa ayuda. Si no fuera por ustedes...
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20091124/b9810f13/attachment.html>


Más información sobre la lista de distribución Cconclase