Ist denn mein Vorgehen richtig oder wird es bei Bit-Endigan-Maschinen Fehler verursachen?
Code: Alles auswählen
var i: LongWord; //longword =4byte
begin
//00000012 <-- Im Speicher/Datei steht die Zahl so, 4 byte hex-zahl
//Hier wird gelesen
TBinaryObjectReader1.Read(i,4);
//danach ist i=301989888 als $12000000
// ich schiebe i 3 Bytes rechts dann wird draus $00000012
i:=i shr 24;
// ist also richtig
// muß man für die Big-Endian-Maschinen 3 Bytes links schieben?
end;