- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
lecture-2-2x.ppt
Lecture 2-2 计算机中数的运算方法 定点原码的一位乘法 设:X XsXnXn-1….X3X2X1 Y YsYnYn-1…Y3Y2Y1 则,X*Y (Xs?Ys)( XnXn-1….X3X2X1)* (YnYn-1…Y3Y2Y1) 手工乘法过程:X +1101;Y +1011 X*Y: 1101 被乘数(十进制数13) ?1011 乘数(十进制数11) 1011 1101 0000 1011 (积十进制数143) 原码一位乘法逻辑图 定点原码的一位乘法 例 部分积 乘数 被乘数: 1101 00 0000 1 0 1 1 +X 00 1101 00 1101 右移1位 00 0110 1 1 0 1 1 丢失 个位运算 +X 00 1101 01 0011 右移1位 00 1001 1 1 1 0 1 丢失 十位运算 +0 00 0000 00 1001 右移1位 00 0100 1 1 1 1 0 丢失 百位运算 +X 00 1101 01 0001 右移1位 00 1000 1 1 1 1 1 丢失 千位运算 乘积高位 乘积低位 定点原码1位乘法器实现 设置3个寄存器:部分积寄存器A,被乘数寄存器B,乘数寄存器C(部分积寄存器)和1个计数器。 定点补码1位乘法 [X*Y]补 [X]补*[Y]补 Booth 1位乘法规则: 将部分积初始化为0; 通过将乘数的尾部增加1位0作为[Y]补的第n+1位; 比较Yi与Yi-1; i n+1,……,2,1 若Yi-Yi-1 1, 则部分积作加[X]补运算; 若Yi-Yi-1 –1,则部分积作加[-X]补运算; 若Yi-Yi-1 0, 则部分积作加0运算(加0运算可以省略) 运算完成后,部分积右移1位,得到新的部分积; 反复n+1次,但最后一次不移位,所得的结果即为[X*Y]补。 定点补码1位乘法 例 被乘数: X –0.1101, 乘数: Y 0.1011 [X]补 11.0011 [–X]补 00.1101 部分积 乘数 [Y]补 00.1011 00 0000 0.1 0 1 1 0 初始值,最后一位补0 –X 00 1101 10为–X 再右移 00 1101 右移1位 00 0110 1 0.1 0 1 1 0 丢失 个位运算 +0 00 0000 11 仅右移 00 0110 右移1位 00 0011 0 1 0.1 0 1 1 丢失 十位运算 +X 11 0011 01为+X 再右移 11 0110 右移1位 11 1011 0 0 1 0. 1 0 1 丢失 百位运算 –X 00 1101 10为–X 再右移 00 1000 右移1位 00 0100 0 0 0 1 0.1 0 丢失 千位运算 +X 11 0011 01为+X 11 0111 0 0 0 1 符号运算,不右移 乘积高位 乘积低位 定点原码2位乘法 原理: 00─部分积Pi 右移两位, 01─部分积Pi+X 右移两位 10 ─部分积Pi+2X 右移两位 11 ─部分积Pi+3X 右移两位 但Pi+3X 用 Pi﹣X +4X来替代, 4X用C 1来标志 法则: 定点原码2位乘法 例 假定X 0.100111, Y 0.100111 [X]补 0.100111 [–X]补 1.011001 部分积 乘数 欠位C 00.000000 1 0 0 1 1 1 0 Pi–X 2–2 1→C –X 11.011001 11.011001 右移两位 11.110110 0 1 1 0 0 1 1 Pi+2X 2–2 0→C +2X 01.001110 01.000100 右移两位 00.010001 0 0 0 1 1 0 0 Pi+2X 2–2 0→C +2X 01.001110 01.011111 右移两位 00.010111 1 1 0 0 0 1 0 X?Y 0.01XXXXXXXXXX 定点补码2位乘法 规则:设乘数Y的尾数有n位,则当n位奇数时,取符号位1位,Yn+1 0,共作(n+1)/2次运算,最后一次操作仅右移1位,以获得符号位;当n为偶数时,取符号位2位, Yn+1 0,共作n/2+1次运算,最后一次不必移位。 Yn+1+Yn–2Yn –1 定点补码2位乘法 例1 X –0.1101 Y –0.1011 [X]补 1.0011 [Y]补 1.0101 [X]补 111.0011 2[X]补 110.0
文档评论(0)