文档章节

初学 Delphi 嵌入汇编[16] - 进制的表示方法

涂孟超
 涂孟超
发布于 2014/09/26 15:35
字数 405
阅读 14
收藏 0
关于进制:

生活中有 7进制(星期)、60进制(小时)、10进制(算术)等等.
计算机要用到 10进制、16进制、2进制和 8进制.
8进制用得少了, 但也有, 譬如 Unix 服务器上的文件属性.

2进制是计算机容易识别的; 10进制是人容易识别的, 据说 10进制源自于人有十个手指.

计算机为什么会使用 8进制和 16进制呢? 因为: 2 3=8; 2 4=16; 这样比较容易和 2进制换算.
从这里也能看出, 2进制和 10进制的换算相对复杂些.

下面例子中说明了进制的表示方法, 七个函数都会返回整数 255:
//十进制
function Fun0: Integer;
asm
  mov eax, 255
end;

//十进制数后面也可以加个 D(大小写无关)
function Fun1: Integer;
asm
  mov eax, 255D
end;

//二进制后面加 B(大小写无关)
function Fun2: Integer;
asm
  mov eax, 11111111B
end;

//八进制后面加 O(大小写无关)
function Fun3: Integer;
asm
  mov eax, 377O
end;

//十六进制前面加 $
function Fun4: Integer;
asm
  mov eax, $FF
end;

//十六进制也可以是后面加 H(大小写无关)
function Fun5: Integer;
asm
  mov eax, 0FFH {使用这种方法, 数字的首位不能是字母, 不然会被认为成标识符}
end;

//非汇编代码的 Delphi 只支持用 $ 表示十六进制
function Fun6: Integer;
begin
  Result := $FF;
end;


//测试
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(Fun0)); {255}
  ShowMessage(IntToStr(Fun1)); {255}
  ShowMessage(IntToStr(Fun2)); {255}
  ShowMessage(IntToStr(Fun3)); {255}
  ShowMessage(IntToStr(Fun4)); {255}
  ShowMessage(IntToStr(Fun5)); {255}
  ShowMessage(IntToStr(Fun6)); {255}
end;

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2008/01/25/1053778.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
关于C51与汇编的实用混合编程

最近研究了下51的混合编程,总结一下吧! 1.生成C51的汇编源码 右键单击项目文件,在弹出的opinion for file ....选择上生成SRC文件,这个可以产生汇编源文件,也能允许在C51中嵌入A51,即汇...

文剑Boy
2014/05/01
0
0
[汇编]神奇的进制转换以及计算器的使用

在学习汇编的时候,可能很多朋友很头疼的就是进制间转换问题 我在这里大概说一下比较简单的转换方法,就是计算器,我只说一下Windows下默认的计算器。Linux的朋友可以在网上搜搜在线的,有很...

陈冠羽
2013/04/22
0
5
delphi 进制转换

----二进制到16进制 function BinaryToHex(strBinary: string): string; var vD: Byte; i: integer; vHextStr: String; vP: PChar; vLen: integer; begin vLen := length(strBinary); if vLe......

鹅倌
2017/06/16
0
0
怎么判断以太坊地址是不是智能合约?

使用web3.js web3.eth.getCode()方法返回指定地址上代码的16进制字符串,由于普通账户地址处没有代码,因此将仅返回16进制前缀。利用这个我们可以进行判断,例如: 在solidity中实现 在合约内...

os2man
04/28
0
0
tcpdump抓包命令

该命令是抓包分析工具,可以将数据包的头或者是整个包抓取下来进行分析,支持针对特定协议、主机进行过滤,同时支持逻辑操作。 #抓取本机第一个网络接口通常是eth0上所有的包tcpdump 抓取指定...

linuxjavachen
2017/05/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

(荷兰)彼得·冯·门施著:博物馆学研究的目的

博物馆学研究的目的 (荷)彼得·冯·门施 尽管诸多关于博物馆学认知目的的不同看法可以被归纳为数个主要群体,但没有一个群体可以被称为“学派”。一般来说,学派是由于博物馆学研究目的的不...

乔老哥
8分钟前
0
0
Vue slot的用法

之前看官方文档,由于自己理解的偏差,不知道slot是干嘛的,看到小标题,使用Slot分发内容,就以为 是要往下派发内容。然后就没有理解插槽的概念。其实说白了,使用slot就是先圈一块地,将来...

peakedness丶
20分钟前
1
0
解析如何用爬虫程序批量采集梨视频数据

本文介绍如何使用爬虫程序免费采集梨视频拍客的视频标题、链接、简介等信息。 采集字段: 视频标题 视频链接 点赞数 视频时长 发布时间 拍客 拍客链接 视频简介 标签 功能点目录: 如何对采集...

技术阿飞
26分钟前
2
0
《阿里铁军》的读书笔记和读后感范文2600字

《阿里铁军》的读书笔记和读后感范文2600字: 在中国互联网,有一个流传很广的说法是,百度强在技术,腾讯强在产品,阿里强在运营。虽然发展到今天,已经不能再用这样简单的视角来看待这三个...

原创小博客
55分钟前
5
0
怎样实际项目中运用责任链模式

1 模式概要 1.1 简介 责任链模式为请求创建一个接收者对象链,每个接收者都包含对另一个接收者的引用,如果一个对象不能处理该请求,那么它会把请求传给下一个接收者,依此类推 责任链模式避...

小刀爱编程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部