TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Dajosco en 11 de Agosto de 2005, 13:04:00

Título: Como seleccionar Big o Little Endian
Publicado por: Dajosco en 11 de Agosto de 2005, 13:04:00
Hay alguna forma de elegir si quiero trabajar en formato Big o Little Endian, es decir la forma en que guarda en la memoria por ejemplo un entero?
Ej:
 int16 contador;

 contador=0x1234;


en la memoria, el compilador por defecto lo guarda como 3412, mi pregunta es hay alguna forma de seleccionar que lo guarde como 1234? Rebotado

Gracias Sonrisa Gigante
Título: RE: Como seleccionar Big o Little Endian
Publicado por: laloavr en 22 de Agosto de 2005, 13:11:00

que yo sepa no se puede en CPUs que tienen formato Fijo como en el caso de los PICs , tendias de descomponer tu entero (el compilador CCS tiene unas funciones para eso) y luego almacenarlo a tu gusto.
Título: RE: Como seleccionar Big o Little Endian
Publicado por: Dajosco en 23 de Agosto de 2005, 08:05:00
Estoy de acuerdo que eso suele ser asi en los procesadores de 16bits, pero porque en uno de 8 bits? si al final es el compilador el que genera el codigo para tratar este tipo de datos, o estoy equivocado!?

Gracias

  Saludos
Título: RE: Como seleccionar Big o Little Endian
Publicado por: laloavr en 23 de Agosto de 2005, 23:23:00

Hay procesadores de 32 y 16 bits (Del Tipo ARM) que si permiten cambiar el orden (peso numerico)de los datos con instrucciones implementadas en su set por tanto al compilador le resulta transparente realizar esa tarea no es asi en el caso de los PICs
para lo cual el compilador CCS trae unas funciones para el manejo especial de tratamiento del peso numerico de los datos.


 Saludos