加减交替法(不恢复余数法)

您所在的位置:网站首页 负数左移一位 加减交替法(不恢复余数法)

加减交替法(不恢复余数法)

2024-07-11 01:57| 来源: 网络整理| 查看: 265

前言

加减交替法处理思想是先减后判,如果减余数后发现不够减,则下一步中改为加除数操作。

运算一步加减完成时,遵循的规则 当余数为正时,表示够减,即商上1,在进行下一次商时,将余数(此时为正)左移一位,减去除数。当余数为负时,表示不够减,即商上0,在进行下一次商时,将余数(此时为正)左移一位,加上除数。运算时需要双符号补码,所以应先把给定的定点数转换为补码形式,需要注意的是,除数的负数也要转换为双符号补码,方便后面作减法。因为在计算机中减一个数等于加这个数的负数。而补码正是用来做加减法的。操作的步数n 是由要求的n位商决定的,如果第n步 余数为负,则需增加一步恢复余数,即 +Y ,增加的这一步不移位。 实例练习

题目:

X=0.1011 Y=0.1101 用加减交替法求X/Y

解: [X]补 =0.1011 对应的双符号位补码为 00 1011 [Y]补 =0.1101 对应的双符号位补码为 00 1101 [-Y]补 =1.0011 对应的双符号位补码为 11 0011

开始计算,X先减一下Y,即X+[-Y] 我们用双符号补码来做 在这里插入图片描述 根据规则,结果若是负数,代表不够减,下一步应该+Y,则商上0,并且在进行下一步之前让余数左移一位。即余数11 1110变为 11 1100

开始下一步 在这里插入图片描述 根据规则,结果若是正数,代表够减,下一步应该-Y,(-Y 就是加上-Y) 则商上1,并且在进行下一步之前让余数左移一位。即余数00 1001 变为 01 0010

开始下一步 在这里插入图片描述 根据规则,结果若是正数,代表够减,下一步应该-Y,(-Y 就是加上-Y) 则商上1,并且在进行下一步之前让余数左移一位。即余数00 0101 变为00 1010

开始下一步 在这里插入图片描述

11代表双符号位的负数,根据规则,结果若是负数,代表不够减,下一步应该+Y,则商上0,并且在进行下一步之前让余数左移一位。即余数11 1101变为 11 1010

开始下一步

在这里插入图片描述 00代表双符号位的正数,根据规则,结果若是正数,代表够减,则商上1,

这时候商了五次,到了X和Y的位数

最终商总共上了01101 所以最终结果的数值位为1101 符号位为相除两数符号的异或值,在这里都是0和0 即最终异或值应该为0

另外还应该加上余数00 0111(上图最后双符号位形式) 即0.0111 (正常形式)

最后结果为0.1101 + 0.0111 × 2-4



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3