运算方法与运算部

运算方法与运算部

ID:38743314

大小:1.36 MB

页数:46页

时间:2019-06-18

运算方法与运算部_第1页
运算方法与运算部_第2页
运算方法与运算部_第3页
运算方法与运算部_第4页
运算方法与运算部_第5页
资源描述:

《运算方法与运算部》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、运算方法与运算部件——定点运算定点运算移位运算1加减运算2乘法运算3除法运算42郑州大学软件学院移位运算计算机中小数点位置是约定的,当对计算机中的数进行左右移操作时,相当于对其进行了相应的乘除运算十进制:100左移一位成为1000,相当于乘以10;右移两位为1,相当于除以100=102二进制:1101=13,左移一位,低位补什么?右移一位,低位补什么?机器数移位后空出的位置补0还是1,取决于该数是有符号数还是无符号数对有符号数的移位称为算术移位,对无符号数的移位称为逻辑移位3郑州大学软件学院移位运算算术移位规则移位后符号位

2、不变正数:移位后的空位均用0补足负数:原码补0,反码补1,补码左0右1(左移时空位补0,右移时空位补1)4郑州大学软件学院移位运算算术移位例1设机器字长为8位(含1位符号位),将十进制数26的原、反、补码分别左、右移一位和两位后的结果及其对应真值,并分析结果的正确性。解:26=11010B,[26]原=0,0011010+60,0000110+130,0001101+1040,1101000+520,0110100+260,0011010移位前[A]原=[A]补=[A]反对应的真值机器数移位操作左移一位左移两位右移一位右移

3、两位正数移位后符号位均不变,但左移后最高位丢失1时,结果出错;右移后最低位丢1时,精度降低若对此数左移三位,结果如何?5郑州大学软件学院移位运算算术移位例1设机器字长为8位(含1位符号位),将十进制数-26的原、反、补码分别左、右移一位和两位后的结果及其对应真值,并分析结果的正确性。解:-26=-11010B,[26]原=1,0011010–61,0000110–131,0001101–1041,1101000–521,0110100–261,0011010移位前对应的真值机器数移位操作原码左移一位左移两位右移一位右移两位

4、负数原码移位后,前后空位均补06郑州大学软件学院移位运算–61,1111001–131,1110010–1041,0010111–521,1001011–261,1100101移位前对应的真值机器数移位操作–71,1111001–131,1110011–1041,0011000–521,1001100–261,1100110移位前对应的真值机器数移位操作补码反码左移一位左移两位右移一位右移两位左移一位左移两位右移一位右移两位负数反码移位后,前后空位均补1负数补码移位后,后空补0,前空补1各种码制的负数移位后符号位均不变负数

5、原码左移后最高位丢失1时,结果出错;右移后最低位丢1时,精度降低负数补码左移后最高位丢失0时,结果出错;右移后最低位丢1时,精度降低负数反码左移后最高位丢失0时,结果出错;右移后最低位丢0时,精度降低7郑州大学软件学院移位运算算术移位的硬件实现(a)真值为正(b)负数的原码(c)负数的补码(d)负数的反码000108郑州大学软件学院逻辑移位逻辑移位规则逻辑左移时,高位丢弃,低位补0逻辑右移时,低位丢弃,高位补0eg:01010011,逻辑左移为10100110算术左移为0010011010110010,逻辑右移为01011

6、001(视为补码)算术右移为11011001为避免算术左移时丢失有效位,通常在状态寄存器中指定一位存放算术左移时移出的进位信息9郑州大学软件学院知识回顾数制——数值的处理定点数——小数点问题有符号数——符号问题码制原码——解决了负数问题,但运算复杂补码——解决了负数运算问题定点移位运算——帮助解决乘除问题10郑州大学软件学院定点加减运算补码定点加减法运算规则1溢出及其检测2补码定点加法器311郑州大学软件学院1、补码加法两个补码表示的数相加,符号位参加运算,且两数和的补码等于两数补码之和。即:[X+Y]补=[X]补+[Y]

7、补2、补码减法原则上讲:[X-Y]补=[X]补-[Y]补可见需要一个减法器,而现在只有加法器,如何得到[X-Y]补呢?我们可以根据补码加法公式推出:[X-Y]补=[X+(-Y)]补=[X]补+[-Y]补这样,减法的问题就归结到如何求[-Y]补的问题了。知识回顾:[-Y]补=/[Y]补+1即,[-Y]补等于[Y]补连同符号位在内求反加1。补码定点加、减运算12郑州大学软件学院例1、Y=0.1010[Y]补=0.1010[-Y]补=1.0110例2、Y=-0.1010[Y]补=1.0110[-Y]补=0.1010例3、已知[X

8、]补=0.0010,[Y]补=1.1010求[X-Y]补=?解:[X]补=0.0010+)[-Y]补=0.0110[X-Y]补=0.1000这就是运算求得的正确结果。补码定点加、减运算13郑州大学软件学院例4、已知[X]补=1.1011,[Y]补=0.0110求[X-Y]补=?解:[X]补=0.0010

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。