发布网友 发布时间:2024-12-22 14:44
共2个回答
热心网友 时间:2024-12-22 16:40
x = 0.1101,y = -0.1110,求 x / y。分别用原码一位除法和补码一位除法求解。
------------------------
计算:x / y = (0.1101) / (-0.1110)。
分子分母小数点都右移四位,值不变。
即有:x = 1101、y = -1110。
所以:x / y = (0.1101) / (-0.1110) = -1101 / 1110。
转为十进制:x / y = -13 / 14。
(由此可知:x = 13、y = -14。)
立即就可得出:商 Q = 0、余数 R = 13。
验算:X = Q * Y + R = 0 * (-14) +13 = 13。
经过验算可知:商 Q = 0、余数 R = 13,是正确的答案。
但是,用计算机中的原码一位除法和补码一位除法,都得不出这个正确答案。
计算机组成原理,所讲的,是错误的方法。
热心网友 时间:2024-12-22 16:36
用原码一位除恢复余数和不恢复余数计算X/Y求出商及余数,X=-0.01110,Y=-0.10101。
原码的缺点:原码不dao能直接参加运算,可能会出错。
例如数学上,(-1)=000000001+10000001=10000010,换算成十进制为-2。显然出错了。所以原码的符号位不能直接参与运算,必须和其他位分开,这就增加了硬件的开销和复杂性。
原码一位乘法中,符号位与数值位是分开进行计算的。运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或。原码一位乘法的每一次循环的操作是最低位为1,加被乘数的绝对值后右移1位;最低位为0,加0后右移1位。几位乘法就循环几次。
扩展资料:
x为正整数时,[X]原=x;
x为负整数时,[X]原=2的n次方-x;
x为负小数时,[X]原=1-x;
计算机中所有的数均用0,1编码表示,数字的正负号也不例外,如果一个机器数字长是n位的话,约定最左边一位用作符号位,其余n-1位用于表示数值。
在符号位上用"0"表示正数;用"1"表示负数。数值位表示真值的绝对值。凡不足n-1位的,小数在最低位右边加零;整数则在最高位左边加零以补足n-1位。这种计算机的编码形式叫做原码。
参考资料来源:百度百科-原码