大学计算机解题
抱歉,正确答案如下。
首先要明白,在计算负数的加法时,计算机首先将其转换成二进制。
对变换后的数字进行进一步的运算得到结果。
几个名词:
源代码:通过将数字转换成二进制而获得的一系列数字。
逆码:将原码反过来得到的一系列数字。
补数:将1加到补数上得到的一系列数。
这道题的计算过程;
-50
原始代码:10110010
逆码:11001101。
补充:11001110
-100
原代码:11100100。
逆码:10011011。
补码:10011100
补加结果:0110101010。
结果的补码:01101010。
结果原码:01101010。
结果转换成十进制:106。
显然结果不正确,正确结果是-150。
错误原因:八位二进制数代表十进制数,第一位代表数字符号。
那么,计算机在这个问题中能表示的最小负数是1111111,也就是-127。
问题中正确的结果应该是-150,也就是说电脑不会。
表达出来(学术词变成溢出)。
Ps:现在的电脑都能正确计算出结果。