Little / Big Endian
-
Ich hätte eine Frage bei der Speicherbelegung des unsigned short int
COde:
******************
union test{unsigned short int name;
};
....
union test testreferenz;testreferenz.name = 0xFFFAA; //>>>>>>>>>>>
*******************************
meine Frage: 0xFFFAA ist die erte HEX Zahl nachdem 0x die kleinste Adresse oder die größte?
Um dann später das Big / Little Endian richtig rauszubekommen.Gruß
-
Was?
-
Literale im Quellcode sind von Menschen für Menschen geschrieben und die Ziffernfolge ist daher, wie in unserem Kulturkreis üblich, Big-Endian.
Das ist die Antwort auf deine Frage, aber irgendwie klingt die Art der Frage danach, dass du irgendwie sehr falsche Vorstellungen hast, was die Thematik angeht. Was genau, kann ich nicht sagen, weil dein Beitrag sehr schwer lesbar ist. Ich musste bestimmt 3x lesen, um mir irgendwie die Frage zusammen zu reimen.
-
Passt denn 0xFFFAA überhaupt in einen short? Eher Shrott.
Ansonsten hilft dir vielleichtunion deadbeef { unsigned char c[4]; // hier: .c[3] = 0xde, .c[2] = 0xad, .c[1] = 0xbe, .c[0] = 0xef unsigned short s[2]; // big endian: .s[0] = 0xdead - hier: little endian: .s[0] = 0xbeef unsigned long l; // Eingabe: .l = 0xdeadbeef };