2009汇编语言程序设计第一章.ppt

  1. 1、本文档共102页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
什么是进位记数制? 基数:在进位记数制中,一种记数制允许选用基本数字符号的个数叫做基数。 系数:在任意数位上出现的基本数字符号。 位权:在一个数中,系数在不同数位代表的值不同,如果基数为R,则第n位的位权为Rn, 每个系数表示的数值等于它本身乘以位权。 补码运算规律的优势 补码减法不需要判断被减数与减数的大小关系 - 如果解释为无符号数,实际完成的运算为256+1-2=255 如果解释为补码,则为1-2 = -1 “数的运算”与“编码解释”结合 运算规则不随编码解释而改变 + 1 无符号数编码解释: 2+255 = 257 补码解释: 2+(-1) = 1 原码 要求ALU中不但提供加法器,而且要提供减法器,计算机的硬件逻辑因此变得更复杂。 如果是减法,则需要区分减数和被减数。 专门针对原码设计的加法器和减法器称为原码加法器和原码减法器。 原码 原码运算的实质: (1)符号与数值是分离的,符号判断与数值运算分别进行。 (2)在对其数值部分实施运算时,实质上是无符号数运算。 补码 原码解决了正负数在机器内的表达问题,但是硬件操作并不方便,而且会使硬件逻辑变得相对复杂。 为了解决这些问题,计算机设计者使用了二进制数的另一种编码表示,补码。 补码 补码的含义是指正数和负数的编码是互补的形式。 如果两个数的值相等,而符号相反,那么使用它们的补码直接相加就会等于0的补码,形成一种编码耦合。 补码 补码的统一定义: [X]补 = 2n+X (补码存在字长限制,n表示字长) 正数和零的补码(字节) [+59]补 = 28+= 100000000 += 1(舍去) (8位以内的部分为补码) M只是在第8位上为1(从第0位开始计位编号),因为字节长度限制,相加结果仍等于正数真值。 结论:正数或0的补码就是它的真值本身。 负数的补码 [-59]补 = 28+(= 100000000 -= 可以看到,负数的补码已与真值完全不一样,但是却实现了编码耦合: [+59]补+[-59]补 =11000101 = 100000000 = 28 由真值求相应的补码 例1.18 设A=+65,B=-65,则用8位二进制数表示的补码为: [A]补 [B]补=2n+B=256+(-65) =100000000 练习: [A]补+ [B]补=? 补码的基本运算规律 补码基本运算规律:[+X]补+[-X]补 = 2n 加上字长限制:[+X]补+[-X]补 = [0]补 由已知补码求真值 如果把补码变回二进制数真值,则先判断符号位。 如果是正数,那么补码本身就是真值。 如果为负数,就用2n减去补码,也就是求负数补码的逆过程。 已知负数补码求真值 [X]补 = 2n+X -X= 2n- [X]补 注:所求结果只包括数值部分,需添加负号才能形成完整真值。 由已知补码求真值 例7.分别求已知补11010011的真值。 为正数,补码等于真值为负数, 100000000= 真值为 –快速求负数补码的方法 正数补码就是它的真值本身。 负数补码则是把数值先变反,再加1,就得到补码。 快速求负数补码的方法 例8.使用变反加1的方法求负数补码 真值:- 相反数变反: 加 1: 快速求负数补码的方法 验算10100111 = 0(舍去第8位) 验算过程解释正数补码)+值变反的结果)+1 =1 去掉超出字节范围的第8位以后,结果一定为0的补码。 变反加1的实质 一个M位的二进制形式(数或编码)A,将其变反加1后得到的结果为耦合的二进制形式A’,满足A+A’=2M。 可推论:A’变反加1应得到A。 去掉负号的负数真值与负数补码是相互耦合的二进制形式。 快速由负数补码求真值的方法 变反加1的方法可以由负数真值计算补码;这个方法同样

文档评论(0)

junjun37473 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档