十六进制转化成二进制的问题
function T16210(k: string): integer; //十六进制字符串转换为十进制数
begin
result := StrtoInt('$' + k);
end;
function T1022(i:integer):string; //10进制转2进制
var
j: integer;
s: string;
begin
j := i;
s := ' ';
while j >= 2 do
begin
if (j mod 2) = 1 then
begin
s := '1' + s;
j := j div 2;
end
else
begin
s := '0' + s;
j := j div 2;
end;
end;
s := chr(ord('0') + j) + s;
result := s;
end;
procedure TForm1.Button1Click(Sender: TObject);
var str:string;
begin
str:=inttostr(T16210(edit1.Text));
edit1.Text:= str;
end;
输入小一点的数字比如 f,ff,1234,abc,都可以正常转化
可是我要转化的是比较大的数字.
比如以下几组数字,
要转化的16进制数
8524B5C8
8524B5C7
8524B5C6
转化结果(明显就不对)
-2061236984
-2061236985
-2061236986
这是什么原因了,得用什么办法解决啊?
begin
result := StrtoInt('$' + k);
end;
function T1022(i:integer):string; //10进制转2进制
var
j: integer;
s: string;
begin
j := i;
s := ' ';
while j >= 2 do
begin
if (j mod 2) = 1 then
begin
s := '1' + s;
j := j div 2;
end
else
begin
s := '0' + s;
j := j div 2;
end;
end;
s := chr(ord('0') + j) + s;
result := s;
end;
procedure TForm1.Button1Click(Sender: TObject);
var str:string;
begin
str:=inttostr(T16210(edit1.Text));
edit1.Text:= str;
end;
输入小一点的数字比如 f,ff,1234,abc,都可以正常转化
可是我要转化的是比较大的数字.
比如以下几组数字,
要转化的16进制数
8524B5C8
8524B5C7
8524B5C6
转化结果(明显就不对)
-2061236984
-2061236985
-2061236986
这是什么原因了,得用什么办法解决啊?
...全文
相关推荐
批量将二进制文件转化成十六进制
标题"批量将二进制文件转化成十六进制"指的是一个程序或工具,它的功能是将多个二进制文件转换成十六进制格式。这种转换对于分析二进制数据,尤其是在调试或逆向工程中非常有用。
Stack练习:: 十进制正整数转化成二进制
标题中的“Stack练习:: 十进制正整数转化成二进制”表明这是一个关于编程技术的话题,特别是涉及数字系统转换,即从十进制数转换到二进制数。
C++十六进制转二进制
理解不同进制间的转换对于提升编程能力及问题解决能力非常有帮助。
JPG图片转化成十六进制数据的程序
总的来说,"JPG图片转化成十六进制数据的程序"是一个实用的工具,它展示了如何利用C++进行文件操作和数据转换,这对于任何涉及到二进制数据处理的IT专业人员来说都是一个重要的技能。
notepad++二进制(十六进制)查看插件
在安装或使用HexEditor插件之前,建议先阅读这个文件,确保正确无误地集成和使用插件,避免遇到任何潜在问题。


语言基础/算法/系统设计
