八章运算方法.pptVIP

  1. 1、本文档共144页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
八章运算方法

◆ 用一个进位保存加法器(5位)对部分积PP0、PP1、 PP2进行加法 ◆ 用一个并行加法器将输出S和C相加 图8.19 用进位保存加法器实现3×3的乘法器 3. 两个4位数相乘的Wallace树 乘法1011×1110 部分积: PP0 = 000 0000 PP1 = 001 0110 PP2 = 010 1100 PP3 = 101 1000 第一个进位保存加法器的输出为:S = 011 1010 C = 0000 1000 第二个进位保存加法器的输出为:S = 0110 1010 C = 0 0011 0000 并行加法器输出最终积: 1001 1010 图8.20 4×4的Wallace树乘法器 PP0 部分积的个数随着乘数位数的增加而增加。因此当乘数位数较大时,Wallace树可以利用并行操作。 图8.21 8×8的Wallace树乘法器 8.5 浮点数 8.5.1 数据格式 一个数在科学记数法中包含: 符号 小数或有效值(尾数) 指数(阶) 例如:–1234.5678表示为 –1.2345678×103 1.浮点数的规格化 有效值是一个没有前导0的小数。 –1234.567的规格化浮点表示:–.1234567×104 2.特殊值(特殊处理) ◆ 0不能被规格化 ◆ 正无穷大和负无穷大 ◆ 非法操作,如∞/∞或对负数开平方 我们称其结果为不存在的数,记为NaN。 3. 浮点数格式 ◆ 每个浮点数包括:1位符号、定长的有效值、阶 ◆ 浮点数X记为XSXFXE 其中:XS表示符号 XF表示有效值 XE表示阶 例如:值–1234.5678(= –0104 ) XS = 1,XF =XE = 4 ◆ 小数点隐含表示 位于有效值的最高有效位的左边 4. 移码 ◆ 常用移码表示阶码 ◆ 移码是在实际阶值上加一个偏移量 [X]移=X+2n-1 X:n位的二进制数 ◆ 与补码的关系 ◆ 优点:便于比较数值的大小 5. 二进制表示的规格化浮点数(除了0、+/- ∞、 NaN)的有效值的最高位为1,在有效值寄存器中 可以不保存该位。 例:在字长为8位的机器中,[x]移=27+x 设 x=+1100101 则 [x]移=27+11001011100101设 x=-1100101 则 [x]移=27-110010111100101◆ 考虑溢出情况:用CU←X + Y代替U←X + Y,并将C 的值赋给溢出标志。 ◆ PM = 0时符号—幅值表示加减法的RTL代码 PM’1:Us←Xs,CU←X + Y PM’2:OVERFLOW←C (2) 第二种情况:PM = 1 ◆ X和Y相对幅值的问题 当X Y时,U应为X – Y ,即X + Y’ + 1。 当X Y时,X – Y将产生期望值Y – X的负数, 该值必须取反。 0结果问题 当X=Y时,执行CU←X + Y’ + 1,得U =0且C= 1 因0总是做为 +0保存,要将结果的符号设置为0。 ◆ X≠Y时结果的符号问题 从表8.11中发现:X Y时,Us与Xs的值相同 X Y时,Us与Xs的反码相同 通过取其2的补码,或(X – Y)’ + 1来实现。减法 CU←X + Y’ + 1同时也实现了X与Y的比较,通过C,可以判断是否要将结果(X – Y)取负。 ◆ PM = 1时符号—幅值表示加减法的RTL代码 当X Y时,C = 1,Z = 0 当X = Y时,C = 1,Z = 1 当X Y时,C = 0 将OVERFLOW设置为0,因为PM = 1时不可能发生溢出。 PM 1:CU←X + Y’ + 1,OVERFLOW←0 CZ’PM 2:Us←Xs CZ PM 2:Us←0 C’PM 2:Us←Xs’,U←U’ + 1 2.完整的RTL代码(包括PM = 0和PM = 1两

文档评论(0)

118books + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档