Wenn ich im Assembler mit DW 1333 einen Wert in zwei Bytes an der Adresse 80h speichere, welches Byte ist high? 80h oder 81h?
Gast
#578821
Das kommt auf die "Endianness" des verwendeten Controllers an. Da ich deinen nicht kenne, würde ich einen kleinen Test vorschlagen: Bekanntes Bitmustern reinschreiben und dann nachgucken.
Gast
#578822
...wie wärs mit ausprobieren, schau dir das assemblierte hex-file an... 13 steht in 80h und 33 in 81h
Gast
#578826
Also wärs dann Big Endian, oder?
Gast
#578832
Lustig, höre das zum ersten Mal, dass es noch vom uC abhängt. Habe einen 8252 Atmel
Gast
#578848
Naja, es haengt ausschliesslich vom Controller ab. 8 bit controller haben fast keine 16 bit operationen. Abgesehen von adress Manipulationen, und operationen mit dem pointer register. Daher sieht man die Endian'nes daran, wie der controller einen Load oder store 16bit codiert. Intel architekturen sind little Endian, motorola & powerPC big Endian. Little Endian heisst low byte on low adress.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.