var
s: string;
v: Int64;
begin
Memo1.Lines.Clear;
Memo1.Lines.Add('[Decimal -> Hex]');
Memo1.Lines.Add('-10');
// -10 を Byte (8 bit) の 16 進数表現で表示
s := IntToStrEx(Byte(-10), 16, SizeOf(Byte) * 2);
Memo1.Lines.Add('Byte: ' + s);
// -10 を Word (16 bit) の 16 進数表現で表示
s := IntToStrEx(Word(-10), 16, SizeOf(Word) * 2);
Memo1.Lines.Add('Word: ' + s);
// -10 を Longword (32 bit) の 16 進数表現で表示
s := IntToStrEx(Longword(-10), 16, SizeOf(Longword) * 2);
Memo1.Lines.Add('Longword: ' + s);
// -10 を UInt64 (64 bit) の 16 進数表現で表示
s := IntToStrEx(-10, 16, SizeOf(UInt64) * 2);
Memo1.Lines.Add('UInt64: ' + s);
Memo1.Lines.Add('');
Memo1.Lines.Add('[Hex -> Decimal]');
// 'FF' を 16 進数 -> 10 進値
s := 'FF';
Memo1.Lines.Add('0x' + s);
v := Shortint(StrToIntEx(s, 16));
Memo1.Lines.Add('Shortint: ' + IntToStr(v));
v := Byte(StrToIntEx(s, 16));
Memo1.Lines.Add('Byte: ' + UIntToStr(v));
v := Smallint(StrToIntEx(s, 16));
Memo1.Lines.Add('Smallint: ' + IntToStr(v));
v := Word(StrToIntEx(s, 16));
Memo1.Lines.Add('Word: ' + UIntToStr(v));
Memo1.Lines.Add('');
// 'FFFF' を 16 進数 -> 10 進値
s := 'FFFF';
Memo1.Lines.Add('0x' + s);
v := Smallint(StrToIntEx(s, 16));
Memo1.Lines.Add('Smallint: ' + IntToStr(v));
v := Word(StrToIntEx(s, 16));
Memo1.Lines.Add('Word: ' + UIntToStr(v));
v := Longint(StrToIntEx(s, 16));
Memo1.Lines.Add('Longint: ' + IntToStr(v));
v := Longword(StrToIntEx(s, 16));
Memo1.Lines.Add('Longword: ' + UIntToStr(v));
Memo1.Lines.Add('');
// 'FFFFFFFF' を 16 進数 -> 10 進値
s := 'FFFFFFFF';
Memo1.Lines.Add('0x' + s);
v := Longint(StrToIntEx(s, 16));
Memo1.Lines.Add('Longint: ' + IntToStr(v));
v := Longword(StrToIntEx(s, 16));
Memo1.Lines.Add('Longword: ' + UIntToStr(v));
v := StrToIntEx(s, 16);
Memo1.Lines.Add('Int64: ' + IntToStr(v));
v := UInt64(StrToIntEx(s, 16));
Memo1.Lines.Add('UInt64: ' + UIntToStr(v));
Memo1.Lines.Add('');
// 'FFFFFFFFFFFFFFFF' を 16 進数 -> 10 進値
s := 'FFFFFFFFFFFFFFFF';
Memo1.Lines.Add('0x' + s);
v := StrToIntEx(s, 16);
Memo1.Lines.Add('Int64: ' + IntToStr(v));
v := UInt64(StrToIntEx(s, 16));
Memo1.Lines.Add('UInt64: ' + UIntToStr(v));
end;
|