ein normaler Integer ist 32bit(4 Byte) groß. Wenn du 2 darin 2 Integer speichern willst dürfen diese jeweils nur 2 Byte groß sein sonst gibts ein Problem.
Funktionieren würde es mit move (speicher direkt kopieren) oder mit Bytes shiften oder durch definieren eines neuen Types oder....
Delphi-Quellcode:
type
TInteger = packed record
case Bool of
True : (NormalInt: Integer);
False : (Part1: SmallInt;
Part2: SmallInt;);
end;
var
Variable: TInteger;
begin
Varialbe.Part1 := Zahl1;
Variable.Part2 := Zahl2;
Variable.NormalInt := Variable.NormalInt xor Zahl3;
end;
Die Variante von fJeins ist natürlich um einiges kürzer