1.hextobin() 十六進製制轉換二進位制
所在單元:classes
delphi語法:
functionhextobin(text, buffer: pchar; bufsize: integer): integer
描述:呼叫hextobin函式轉換十六進製制字串到相應的二進位制值。
text是乙個表示十六進製制值的字串。
buffer返回轉換後的二進位制結果值。
buffersize表示buffer的大小。text需要指向至少2*bufsize的十六進製制字元,因為每兩個十六進製制字元表現為乙個位元組。
hextobin返回在buffer中因為text沒有包含有效的十六進製制字元('0'..'f')而還沒有被用的字元數量.
注意:十六進製制數必須使用小寫字元;hextobind不能識別大寫字元。
2.bintohex() 二進位制轉換十六進製制
所在單元:classes
delphi語法:
procedurebintohex(buffer, text: pchar; bufsize: integer);
描述:呼叫bintohex轉換buffer中的二進位制值為它所表示的十六進製制字串
buffer是乙個位元組的緩衝區,其中包含二進位制值
text返回乙個以null為結束字元的字串,表示buffer作為十六進製制數的值
bufsize表示buffer的大小。text需要指向一系列字元,這些字元至少有2*bufsize大小位元組。
3.inttohex()將整型數轉換為十六進製制數
所在單元:sysutils
delphi語法:
functioninttohex(value: integer; digits: integer):string; overload;
functioninttohex(value: int64; digits: integer):string; overload;
描述:inttohex轉換乙個數字為這個數字十六進製制表示的字串。value是要轉換的數字。引數digits指定字元最小寬度,最小寬度不足時將用0填充。
4.strtoint()字串轉換成整型數
所在單元:sysutils
delphi語法:
functionstrtoint(consts:string): integer;
描述:返回字串s轉換成整數,字串非整數表達時將引起異常,十六進製制字串轉換為整型數要求在字串前面新增$即可。
5.把乙個整數變成二進位制字串
functioninttobinarystr(theval: longint):string;
var
counter: longint;
begin
iftheval = 0thenbegin
result := '0';
exit;
end;
result := '';
counter := $80000000;
while((counterandtheval) = 0)dobegin
counter := countershr1;
if(counter = 0)thenbreak;
end;
whilecounter > 0dobegin
if(counterandtheval) = 0thenresult := result + '0'
elseresult := result + '1';
counter := countershr1;
end;
end;
// binary to integer
functionbintoint(value:string): integer;
var
i, ivaluesize: integer;
begin
result := 0;
ivaluesize := length(value);
fori := ivaluesizedownto1do
ifvalue[i] = '1'thenresult := result + (1shl(ivaluesize - i));
end;
// integer to binary
functioninttobin(value: longint; digits: integer):string;
var
i: integer;
begin
result := '';
fori := digitsdownto0do
ifvalueand(1shli) <> 0then
result := result + '1'
else
result := result + '0';
end;
6.十六進製制轉換二進位制
functionhextobin(hexadecimal:string):string;
const
bcd:array[0..15]ofstring=
('0000', '0001', '0010', '0011', '0100', '0101', '0110', '0111',
'1000', '1001', '1010', '1011', '1100', '1101', '1110', '1111');
var
i: integer;
begin
fori := length(hexadecimal)downto1do
result := bcd[strtoint('$' + hexadecimal[i])] + result;
end;
7.八進位制和十進位制的轉換
functionocttoint(value:string): longint;
var
i: integer;
int: integer;
begin
int := 0;
fori := 1tolength(value)do
begin
int := int * 8 + strtoint(copy(value, i, 1));
end;
result := int;
end;
functioninttooct(value: longint; digits: integer):string;
var
rest: longint;
oct:string;
i: integer;
begin
oct := '';
whilevalue <> 0do
begin
rest := valuemod8;
value := valuediv8;
oct := inttostr(rest) + oct;
end;
fori := length(oct) + 1todigitsdo
oct := '0' + oct;
result := oct;
end;
delphi 進製轉換
1.hextobin 十六進製制轉換二進位制 所在單元 classes delphi語法 functionhextobin text,buffer pchar bufsize integer integer 描述 呼叫hextobin函式轉換十六進製制字串到相應的二進位制值。text是乙個表示十六進...
Delphi進製轉換函式
二進位制轉換 function bintodec value string integer var str string i integer begin str uppercase value result 0 for i 1 to length str do result result 2 ord...
delphi 十進位制十六進製制轉換
delphi有提供十進位制轉換成十六進製制的函式 inttostr 返回值為string 十進位制轉十六進製制 var i integer str string begin i 255 showmessage inttohex i,2 ff 2表示返回的位數 另外,formart也有把十進位製用十六...