- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
步骤2:尾数求和 [X+Y]浮 = 00 111, 0011) + 00 111, 11 = 00 111, 1111) 步骤3:计算结果规格化 [X+Y]浮 为非规格化数,左归一位, 阶码减一, 00110, 111) 步骤4:舍入处理 [X+Y]浮 = 00 110, 11 (0舍1如法) [X+Y]浮 = 00 110, 11 (截去法) 步骤5:溢出判断 无溢出 [X+Y]浮 = 2110 x (-00 * * 例 设x=2010?0 y=2100 ?(-0, 求x+y。 解: 阶码采用双符号位, 尾数采用单符号位, 则它们的浮点表示分别为 [x]浮= 00 010, 0 [y]浮= 00 100, 1(1) 求阶差并对阶 △E = Ex- Ey= [Ex]补+ [-Ey]补= 00 010 + 11 100 = 11 110 [x]浮=00 100, 011) 其中(11)表示Mx右移2位后移出的最低两位数。 即△E为-2, x的阶码小, 应使 Mx右移两位, Ex加2, * (2)尾数求和 (4) 舍入处理 采用0舍1入法处理, 则有: 1+ 1 1 011) + 1 111) (3) 规格化处理 尾数运算结果的符号位与最高数值位为同值,应执行左规处理,结果为110), 阶码为00 011。 (5) 判断溢出 阶码符号位为00,不溢出,故得最终结果为 x + y = 2011 × (-0 * 例:两浮点数x = 201×0.1101,y = 211×(-0.1010)。假设尾数在计算机中以补码表示,可存储4位尾数,2位保护位,阶码以原码表示,求x+y。 解:将x,y转换成浮点数据格式 [x]浮 = 00 01, 00.1101 [y]浮 = 00 11, 11.0110 步骤1:对阶,阶差为11-01=10,即2,因此将x的尾数右移两位,得 [x]浮 = 00 11, 00.001101 步骤2:对尾数求和,得: [x+y]浮 = 00 11, 11.100101 步骤3:由于符号位和第一位数相等,不是规格化数,向左规格化,得 [x+y]浮 = 00 10, 11.001010 步骤4:截去。 [x+y]浮 = 00 10, 11.0010 步骤5: 数据无溢出,因此结果为 x+y = 210×(-0.1110) * 浮点乘除法运算 1.浮点乘法、除法运算规则 设有两个浮点数x和y: x=2Ex·Mx y=2Ey·My 浮点乘法运算的规则是: x?y=2(Ex+ Ey) · (Mx? My) 即: 乘积的尾数是相乘两数的尾数之积; 乘积的阶码是相乘两数的阶码之和。 浮点除法运算的规则是: x÷y=2(Ex-Ey) · (Mx÷My) 即:商的尾数是相除两数的尾数之商; 商的阶码是相除两数的阶码之差。 * 2. 浮点乘、除法运算步骤 浮点数的乘除运算大体分为四步: (1) 0 操作数检查; (2) 阶码加/减操作; (3) 尾数乘/除操作; (4) 结果规格化及舍入处理。 * (2) 浮点数的阶码运算 ? 对阶码的运算有+1、-1、两阶码求和、两阶码求差四种, 运算时还必须检查结果是否溢出。 ? 在计算机中, 阶码通常用补码或移码形式表示。 ①移码的运算规则和判定溢出的方法 移码的定义为 [x]移 = 2n +x - 2n ≤ x 2n [x]移+ [y]移 = 2n +x+ 2n +y = 2n +[x+y]移 按此定义, 则有 = 2n +(2n +(x+y)) [x+y]移 = -2n + [x]移 + [y]移 * 考虑到移
文档评论(0)