Nein, denn 9 * 256 = 2304 + 41 = 2345
Da habe ich wohl was falsch verstanden:
Habe diesen Code gefunden, der da was ganz anderes ausgibt...
Delphi-Quellcode:
Example code : Illustrate Ho and Lo functions
var
i : Integer;
begin
i := $2345; // $2345 hex : $23 hi byte, $45 lo byte
ShowMessage(Format('Integer = $%x', [i]));
ShowMessage(Format('Hi byte = $%x', [Hi(i)]));
ShowMessage(Format('Lo byte = $%x', [Lo(i)]));
end;
Show full
unit code
Integer = $2345
Hi byte = $23
Lo byte = $45
Hm, die Hi-LO Functionen funktionieren da wohl auch nur mit Word (0..65535) und nicht mit Integer(...-3-2-1 0 1 2 3...)?
Gut für meinen Zweck mache ich mir einen:
Delphi-Quellcode:
Type
TMyshrtInt = Record
h,l : shortint
end;
Eigentlich könnte man da auch statt 'ShortInt' Integer verwenden.
Delphi 2005 und die CPU nutzt doch die vollen 32Bit. Und Shortint bringt wohl keinen Schnelligkeitsvorteil.