(转)计算机组成与结构:原码、反码、补码、移码、二进制乘除法运算

原码:

最高位为符号位,0表示正数,1表示负数。

正数的原码:等于本身

负数的原码:等于(1-本身)

例如:X = +0.1011 , 原码 = 01011 ;

           X = - 0.1011 , 原码 = 11011 ;(小数点可以保留或者省略)

补码:

最高位为符号位,0表示正数,1表示负数。

正数(X)的补码:等于本身。

负数(X)的补码:等于(2+X)=(2-|X|),(各位取反,末尾加一)

例如:X = +0.1011 , 补码 = 0.1011 ;

           X = -0.1011 , 补码 = 1.0101 ;

正0的补码 = 负0的补码 = 0.0000 。

补码加法运算:[X+Y]的补码 = [X]的补码 + [Y]的补码 。

反码:

最高位为符号位,0表示正数,1表示负数。

正数(X)的反码 = 本身

负数(X)的反码 = 2 - (2的(-n)次幂)+ X , (各位取反)

例如:X = +0.1011 (n = 4), 反码 = 0.1011 ;

           X = -0.1011 (n = 4) , 反码 = 1.0100 ;

正0的反码 = 0.0000 , 负0的反码 = 1.1111 ;

移码:

最高位为符号位,1表示正数,0表示负数。

正数(X)的移码 = 2的n次幂 + X的补码 = 符号位+本身 ;

负数(X)的移码 = X的补码 - 2的n次幂 = 符号位+(各位取反,末尾加一)

例如:X = +1011 , 补码 = 01011 , 移码 = 11011 ;

           X = -1011 , 补码 = 10101 , 移码 = 00101 ;

二进制乘法运算:

一、定点数一位乘法:

注意:如果小数点后面有4位,则要进行右移4次,如果有6位,则要进行右移6次,依次类推。

在求部分积时,由于前一次部分积的最低位不再参与运算,因此可将其右移一位,相加数可直送而不必偏移,于是用N位加法器就可实现两个N位数相乘。

部分积右移时,乘数寄存器同时右移一位,这样可以用乘数寄存器的最低位来控制相加数(取被乘数或零0),同时乘数寄存器的最高位可接收部分积右移出来的一位,因此,完成乘法运算后,A寄存器中保存乘积的高位部分,乘数寄存器中保存乘积的低位部分。

(原码右移,最高位补0)(补码右移,最高位不变)

1.定点数原码一位乘法:

[X·Y]的原码 = [X]的原码 · [Y]的原码 = (符号位异或).(数值位两个数绝对值之积) 。

例题:

答案:X·Y = 0.10001111

解析:第一步:因为乘数的最后一位是1,所以部分积应该+X,得00.1101,然后进行右移一位,将最后移出的那一位变成乘数的首位,乘数也进行右移一位,最后一位移出丢失。

           第二部:重复上面的步骤。

          因为小数点后面有四位,所以共需要进行4此移位,4次加法,最后符号位进行异或,判断正负,得出结果。

注:    (乘数的最后一位为1,部分积+X)

           (乘数的最后一位为0,部分积+0)

2.定点补码一位乘法:

定点原码一位乘法用的是【原码】进行运算,例如+X是加的X的原码。

而定点补码一位乘法用的是【补码】进行运算,例如+X是加的X的补码。

注:在[X·Y]中,如果Y为负数,需要补充进行(-[X]的补码)操作;Y为正数,则不需要。

例如:

答案:[X·Y]的补码 = 0.10001111

解析:因为Y为负数,所以最后要进行加上  (-[X]的补码)  的操作。

3.布斯(Booth)公式:

乘数的  最后一位 - 前一位 = 0 ,则部分积 + 0 ;

乘数的  最后一位 - 前一位 = 1; 则部分积 + [X]的补码 ;

乘数的  最后一位 - 前一位 = -1;则部分积 + [-X]的补码 ;

最后一步不移位。

例如:

二、定点数二位乘法

注意:如果小数点后面有4位,则要进行右移2次,如果有6位,则要进行右移3次,和定点一位乘法不同。

                                                          原码两位乘法规则:

Y(i-1)Y(i)C操作操作
000部分积+0,右移2位0->C
001+X,右移2位0->C
010+X,右移2位0->C
011+2X,右移2位0->C
100+2X,右移2位0->C
101-X,右移2位1->C
110-X,右移2位1->C
111+0,右移2位1->C

解析:第一次乘数的最后两位是11,而C的初始值是0,所以就是110,在上方表格中找到110,对应的操作是(-X,右移两位,C赋值为1),用补码来算,也就是+[-x]的补码,然后将C赋值为1,重复上面的操作。

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
大工19秋《计算机组成原理》在线作业2 试卷总分:100 得分:100 一、单选题 (共 10 道试题,共 50 分) 1.如果M是负数,那么由M的补码求M的原码时将()。 [A.]除符号位外,其他位求反后末位加1 [B.]除符号位外,其他位求反 [C.]符号位变反,其他各位不变 [D.]所有位变反,末位加1 参考选择是:A 2.若x的补码为0.10111,则x的原码为()。 [A.]1.11010 [B.]1.10101 [C.]0.11010 [D.]0.10111 参考选择是:D 3.在机器数()中,零的表示形式是唯一的。 [A.]补码移码 [B.]补码反码原码 [C.]原码补码 [D.]原码移码 参考选择是:A 4.定点原码一位乘法是()。 [A.]被乘数用原码表示,乘数取绝对值 [B.]用反码表示操作数,然后直接相乘 [C.]先取操作数绝对值相乘,符号位单独处理 [D.]乘数用反码表示,被乘数取绝对值,然后相乘 参考选择是:C 5.机器数10000001B,代表()。 [A.]以上三个数都有可能 [B.]一定是-127 [C.]一定是-126 [D.]一定是-1 参考选择是:A 6.假定下列字符码中有奇偶校验位,但没有数据错误,采用偶校验的字符码是()。 [A.]11010110 [B.]11010001 [C.]11001011 [D.]11000001 参考选择是:B 7.若x的补码为0.11111,则x的原码为()。 [A.]1.11010 [B.]1.10101 [C.]0.11111 [D.]0.11010 参考选择是:C 8.假定下列字符码中有奇偶校验位,但没有数据错误,采用奇数校验的字符码是()。 [A.]以上都对 [B.]11010110 [C.]11001011 [D.]11000001 参考选择是:A 9.假设浮点数采用补码表示,则判断运算结果是否为规格化数的方法是()。 [A.]阶符与数符相同为规格化数 [B.]阶符与数符相反为规格化数 [C.]数符与尾数小数点后第一位数字相同为规格化数 [D.]数符与尾数小数点后第一位数字相反为规格化数 参考选择是:D 10.在定点运算器中产生溢出的主要原因是()。 [A.]运算过程中最高位产生了进位 [B.]运算过程中最低位产生了进位 [C.]运算的结果超出了机器的表示范围 [D.]寄存器的位数太多,不得不舍弃最高有效位 参考选择是:C 二、判断题 (共 10 道试题,共 50 分) 11.一个用双符号位表示的变形补码11.110001是正数。 参考选择是:错误 12.补码中的零,表示形式是唯一的。 参考选择是:正确 13.移码中的零,表示形式是唯一的。 参考选择是:正确 14.八进制数据31化成十进制数据为30。 参考选择是:错误 15.相对击打式打印机而言,非击打式打印机噪音低、耗材成本高。 参考选择是:正确 16.扫描仪和摄像机都是图像输入设备。 参考选择是:正确 17.显示器上显示的内容既有机器输出的结果,又有用户通过键盘输入的内容,所以显示器 既是输入设备也是输出设备。 参考选择是:错误 18.计算机中的所有数据传送方式都必须由CPU控制实现。 参考选择是:错误 19.机械式鼠标和光电式鼠标基本相同,都是把鼠标器的移动距离和方向变为脉冲信号送 给计算机,计算机再根据脉冲信号确定鼠标移动的距离。 参考选择是:正确 20.没有设置乘法和除法指令的计算机系统中,就不能实现乘法运算。 参考选择是:错误 ----------------------- 大工19秋《计算机组成原理》在线作业2答案全文共3页,当前为第1页。 大工19秋《计算机组成原理》在线作业2答案全文共3页,当前为第2页。 大工19秋《计算机组成原理》在线作业2答案全文共3页,当前为第3页。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蔡军帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值