- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
x86汇编第一课北航
数制转换
1)其他进制数到十进制数的转换
方法:按权weight展开再求和
例:十进制数321 = 3 * 100 + 2 * 10 + 1 * 1
= 3 * 102 + 2 * 101 + 1 * 100
二进制-十进制
例: 1101B = ? D,写为按权展开再求和形式:
1 1 0 1B = 1*23+1*22+0*21+1*20 = 8+4+0+1 = 13
1 1 0 1B = 23+22+20 = 8+4+0+1 = 13
十六进制-十进制
例:64H = ?D
64H = 6*161+4*160 = 96+4 =100
八进制-十进制
例:64Q = ?D
64Q = 6*81+4*80 =48+4 =52
2)十进制数到其他进制数的转换
十进制-二进制(整数)
方法:不断地除以2,取余数,直到商为0。
例1:123= ? B
123D = 01 111 011B=
十进制-十六进制(整数)
方法:不断地除以16,取余数,直到商为0。
例:123D = ? H
123D = 7B H
十进制-八进制(整数)
方法:不断地除以8,取余数,直到商为0。
例:123D = ? Q
123 D = 173 Q
3)二进制与十六进制、八进制之间的相互转换
二制数四位一读就得到十六进制数 。
二制数三位一读就得到八进制数。
例:
123D = 111 1011B= 7B H
123D = 1 111 011B= 173 Q
可见,数制转换的重点是掌握十进制与二进制之间的转换
十 二(十六进制、八进制)
4)十进制与BCD码之间的相互转换
8421BCD码——用二进制形式表示的十进制数
压缩BCD码——4位二进制数表示1位十进制数
例:12 = 0001 0010 BCD=0000 1100b
非压缩BCD码——8位二进制数表示1位十进制数
例:12 =0000 0001 0000 0010 BCD
数据在计算机中的存放
(占8位、16位、32位、64位,。。。)
8位:一个字节BYTE 8 bit
16位:一个字WORD
32位:一个双字DOUBLE WORD
例如,20D = 1 0100B,(计算机中不存十进制数,需转换为二进制数)
占一个字节存放为:0001 0100 B MOV AX,BX, MOV AL, 20
占一个字存放为: 0000 0000 0001 0100 B MOV AX,20
无符号数的存放(纯正数,无需写正号)
不论占BYTE还是WORD,所有位都用于表示数值。
例:100D = 0 110 0100B 占一个BYTE存放,左补一个0
= 0000 0000 0110 0100B 占一个WORD存放,左补9个0
例:256 = 1 0000 0000 B 字节放不下,只能占一个WORD存放 MOV AX,256
= 0000 0001 0000 0000 B 不够16位左补0
1111 1111
注意:左边补的0均表示数
一个字节BYTE所能存放的无符号数的范围(最小到最大):
1111 1111B 255=1*27+1*26+1*25+。。。+1*20
。。。
1000 0001B 129=1*27+1*20
1000 0000B 128=1*27
0111 1111B 127=1*26+1*25+。。。+1*20
。。。
0000 0010B 2
0000 0001B 1
0000 0000B 0(最小值)
可知,一个字节BYTE(8位二进制数)存放的的无符号数的范围是
0?255
同理可得,一个WORD(16位二进制数)存放的无符号数的范围是
0 ? 65535(1111 1111 1111 1111B)
0000 0000 0000 0000
2. 有符号数(又称带符号数)的存放
(可能为正,也可能为负,必须+或-,以补码形式存放),为了得到补码,先需求原码和反码。
1)原码(最高位用于表示符号:0表示+号,1表示-号
其余低位用于表示数据)
以下以8位BYTE为例
例:[+100]原 = 0 110 0100 B (D7位的0表示+)
[-100]原 = 1 110 0100 B
文档评论(0)