- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十一-十三讲_第六章_计算机的运算方法
第6章 计算机的运算方法 6.1 无符号数和有符号数 6.2 数的定点表示和浮点表示 6.3 定 点 运 算 6.4 浮点四则运算 6.5 算术逻辑单元 5. 补码乘法 设 被乘数 乘数 [x]补 = x0. x1x2 xn … [y]补 = y0. y1y2 yn … ① 被乘数任意,乘数为正 同原码乘 但 加 和 移位 按 补码规则 运算 乘积的符号自然形成 ② 被乘数任意,乘数为负 乘数[y]补,去掉符号位,操作同 ① 最后 加[–x]补,校正 (1) 补码一位乘运算规则 6.3 以小数为例 ③ Booth 算法 (被乘数、乘数符号任意) 设[x]补 = x0.x1x2 xn [y]补 = y0.y1y2 yn … … [x · y]补 = [x]补( 0.y1 yn ) – [x]补 · y0 … = [x]补(y1 2-1+y22-2+ +yn2-n) – [x]补 · y0 … = [x]补(–y0+y1 2-1+y22-2+ +yn2-n) … = [x]补[–y0+(y1 – y12-1)+(y22-1–y22-2)+ +(yn2-(n-1)–yn2-n)] … = [x]补[(y1–y0)+(y2–y1)2-1+ +(yn–yn-1)2-(n-1)+(0 –yn)2-n)] … y1 2-1 + + … yn 2-n –[x]补= +[–x]补 2-1 = 20 – 2-1 2-2 = 2-1 – 2-2 2-1 2-2 = [x]补[(y1–y0)+(y2–y1)2-1+ +(yn+1–yn)2-n] … 6.3 附加位 yn+1 ④ Booth 算法递推公式 [z0]补= 0 [z1]补= 2-1{(yn+1–yn)[x]补+[z0]补} yn+1 = 0 [zn]补= 2-1{(y2–y1)[x]补+[zn-1]补} … [x · y]补= [zn]补+(y1–y0)[x]补 最后一步不移位 如何实现 yi+1–yi ? 0 0 0 1 1 0 1 1 1 +[x]补 1 +[–x]补 1 1 0 1 -1 0 6.3 yi yi+1 操作 yi+1–yi 例6.23 已知 x = +0.0011 y = – 0.1011 求[x·y]补 解: 0 0 . 0 0 0 0 1 1 . 1 1 0 1 1 1 . 1 1 0 1 0 0 . 0 0 1 1 1 1 . 1 1 0 1 0 0 . 0 0 1 1 1 1 . 1 1 0 1 1 . 0 1 0 1 0 0 0 . 0 0 0 1 1 1 1 . 1 1 0 1 1 1 0 0 . 0 0 0 1 1 1 1 1 1 . 1 1 0 1 1 1 1 1 [x]补 = 0.0011 [y]补 = 1.0101 [–x]补 = 1.1101 +[–x]补 1 1 . 1 1 1 0 1 1 0 1 0 1 1 +[x]补 0 0 . 0 0 0 0 1 1 1 0 1 0 1 +[–x]补 1 1 . 1 1 1 0 1 1 1 1 0 1 1 0 0 . 0 0 0 0 1 1 1 1 1 0 1 +[–x]补 +[x]补 ∴ [x·y]补 =1 最后一步不移位 6.3 补码右移 补码右移 补码右移 补码右移 + + + + + (2) Booth 算法的硬件配置 A、X、Q 均 n + 2 位 移位和加受末两位乘数控制 6.3 0 A n+1 n + 2 位加法器 控 制 门 0 X n+1 0 Q n n+1 移位和加 控制逻辑 计数器 C GM 00,11 01 10 右移 1. 浮点数的表示形式 Sf 代表浮点数的符号 n 其位数反映浮点数的精度 m 其位数反映浮点数的表示范围 jf 和 m 共同表示小数点的实际位置 6.2 jf j1 j2 jm Sf S1 S2 Sn … … j 阶码 S 尾数 阶符 数符 阶码的 数值部分 尾数的数值部分 小数点位置 2. 浮点数的表示范围 –2( 2
文档评论(0)