2.3.2 定点原码两位乘

讨论x * y = z 采用原码两位乘法,已知x和y,如何求得z

原码两位乘法和原码一位乘法一样,符号位不参加运算
部分积和被乘数x均采用三位符号,乘数y末位每次要加一个c,c一开始是0
根据如下法则进行运算:

操作 C值变化
000 部分积加0,    右移两位 0
001 部分积加|x|, 右移两位 0
010 部分积加|x|, 右移两位 0
011 部分积加2|x|,右移两位 0
100 部分积加2|x|,右移两位 0
101 部分积减|x|, 右移两位 1
110 部分积减|x|, 右移两位 1
111 部分积加0,    右移两位 1

而乘数y用双符号还是单符号表示得根据乘数y的数值的奇偶性判断,而且最后一步移位与否也与乘数y的数值的奇偶性有关:
· 如果乘数y的尾数n的位数为偶数,则乘数y用双符号表示,最后一步不移位
· 如果乘数y的尾数n的位数为奇数,则乘数y用单符号表示,最后一步要移一位
根据以上步骤我们就可以求得x * y的源码。

举个栗子~(栗子真的超好吃的啊啊啊啊呀~)

例如:x = -0.1101,y = 0.0110,求[x*y]原。

符号位是不参与运算哒,所以已经知道最后的结果是负啦~

先写出|x|和2|x|的值再说,用三位符号位表示哦~:
|x| = 000.1101, 2|x| = 001.1010

因为y的尾数n有4位是偶数,所以乘数y要用双符号表示,而且最后一步是不用移位的~
所以 |y| = 00.0110

一开始部分积为 000.0000,乘数为00.01100(先在末尾加个c,c一开始是0)

此时y = 00.01100的最后三位是100,根据运算法则,加2|x|:
000.0000 + 001.1010 = 001.1010

对部分积右移两位,得到:000.011010,而乘数c变成了0,y移动三位,c添加在末尾,所以此时的乘数变为了00.010,最后三位是010

根据运算法则,加|x|:部分积加0,     右移两位
000.011010 + 000.1101 = 001.001110

右移两位,得到:000.01001110,而乘数c变为了0,y移动三位,c添加在末尾,所以此时的乘数变为了00.0,因为最后三位是000

因为这已经是最后一步了,因为y是偶数所以最后一步不用移位~

这样的话,外加前面已知的符号位是负号,就可以得知最后结果[x * y]原 = -1.01001110
————————————————
以上来源于CSDN博主「柳婼」的原创文章(有修改)
原文链接:https://blog.csdn.net/liuchuo/article/details/52922479

这里我需要再加一个例子,还有遇到-x时情况:

例题:用原码两位乘计算X*Y 。x=1100,y=-0111

符号结果为负.

先写出 |x| = 00011002|x| = 0011000,这题里需要用到-x,计算机中-X*的操作可以由+[-X*]补 来替代,也就是+[-X]补 = 1110100.(原码转补码)

一开始部分积为0000000,y=0111,c=0,那么y结尾加c取到的应该为110,所以需要加[-X]补,部分积:

0000000+1110100=1110100右移两位:1111101,此时c变为1

y结尾加c取为011,需要加2|x|,部分积:

1111101+0011000=0010101,右移两位:0000101,此时c变为0;

此时已经y取完了(注意最后一次移位后,若c=1,需要补充一次+|x|的操作),加上符号位1⊕0=1,所以X*Y= -1010100

2.3 二进制乘法运算(定点原码两位乘)相关推荐

  1. 【计算机组成原理】定点乘法运算之原码两位乘法

    讨论x * y = z 采用原码两位乘法,已知x和y,如何求得z 原码两位乘法和原码一位乘法一样,符号位不参加运算 部分积和被乘数x均采用三位符号,乘数y末位每次要加一个c,c一开始是0 根据如下法则 ...

  2. 定点乘法运算之原码一位乘法

    x * y = z 讨论已知x和y的情况下,怎么通过原码一位乘法方法得出z~~ 首先说下运算规则~ 1. z的符号位通过x和y的符号位进行异或运算得到~(这个很好理解哒,负负得正,正正得正,正负得负嘛 ...

  3. 2.2.2 .6定点数的乘法运算-1原码一位乘法

    XYXZNB哈哈哈哈(๑•̀ㅂ•́)و✧买!୧(﹒︠ᴗ﹒︡)୨ 加法移位运算如何实现,那这小节中我们要学习定点数的源码乘法如何实现,那由于今天窗外的雨下的很大,所以可能会有一些雨声的录入好的,那这个小 ...

  4. 计算机组成原理源码,计算机组成原理源码两位乘课程设计报告.docx

    PAGE 沈阳航空航天大学 计算机组成原理课程设计报告 院系 计算机学院 专 业 题目 定点原码两位乘法程序的设计与实现 班级 姓 名 学号 指导教师 以下内容由指导教师填写 序号 评价项目 评分 满 ...

  5. [计算机组成原理]2-8、定点数原码一位乘法

    前言 在学习定点数的原码一位乘法之前,我们要知道我们在学的是什么,定点数的原码乘法其实完全用十进制的乘法规则来计算,只需要将逢十进一改为逢二进一即可: 既然我们都知道定点数的原码乘法了,我们为什么还要 ...

  6. 加减法、原码一位乘法、Booth算法、恢复余数法、加减交替法符号位及小结

    在学习计算机组成原理的计算方法时,或为步骤疑惑,或为题目难倒,本文主要介绍思路以及对常用类型小结 个人总结,仅供参考,能力有限,难免出错,欢迎大家讨论,书籍参考唐朔飞版<计算机组成原理> ...

  7. 【细碎知识2】定点数的乘除运算(原码一位乘、恢复余数法、加减交替法)

    目录 1.定点数的乘法 1.1 原码一位乘 2.定点数的除法 2.1 恢复余数法 2.2 加减交替法 2.3 比较恢复余数法和加减交替法 方法要搭配例题一起看,才能看懂 1.定点数的乘法 定点数的乘法 ...

  8. 计算机组成二进制除法,计算机组成原理:3.4.1 定点原码 除法器

    <计算机组成原理:3.4.1 定点原码 除法器>由会员分享,可在线阅读,更多相关<计算机组成原理:3.4.1 定点原码 除法器(28页珍藏版)>请在人人文库网上搜索. 1.计算 ...

  9. (计算机组成原理)第二章数据的表示和运算-第二节5:定点数乘法运算(原码/补码一位乘法)

    文章目录 一:乘法运算基本思想 二:原码一位乘法 (1)实现原理 (2)手算模拟 三:补码一位乘法( B o o t h Booth Booth

最新文章

  1. 中国最齐全的主要电子商务网站(B2C)
  2. 题目 1470:【蓝桥杯】【入门题】【基础练习VIP】时间转换
  3. 通过Lazada日销千件,国内爆款如此打开东南亚爆单之门
  4. mysql基础(全,必看)
  5. HTML中的meta(转载)
  6. Spring mvc介绍
  7. mysql基准测试总结 一
  8. day6:vcp考试
  9. js 获取浏览器 滚动的高度
  10. 卸载并安装谷歌浏览器
  11. CNKI知网查重账号和密码怎么申请
  12. 十张图,详解用户分层怎么做
  13. Python Spark RDD
  14. 海外媒体传播必做的三大社交媒体平台
  15. 方法详解(命名规则)
  16. AMD CPU VMware 16 Pro安装macOS 10.15
  17. 根除 ff新鲜事 互联网毒瘤
  18. void在java中是什么意思_java中void什么意思
  19. Windows事件查看器_ID一览表
  20. [ERP/鼎捷E10][产品结构管理]料件认可

热门文章

  1. 电子类专业技术个人学习路线总结(大一到大三)
  2. C++输入输出(学号姓名性别)
  3. 零基础抖音电商主播培训计划直播脚本话术大全范文ppt模板
  4. 25岁德邦被京东收购,网友:这次。。。
  5. php判断顺子对子,豹子对子顺子乱子 函数判断
  6. 苏宁11.11:系统拆分的一些经验谈
  7. 关于carsim2016破解问题
  8. 开源许可协议:GPL、LGPL、AGPL、MPL和BSD、MIT、Apache
  9. 中国矿业大学教务系统服务器,中国矿业大学教务系统入口:http://jwb.cumt.edu.cn/...
  10. 电脑每次启动都检测硬盘