计算机 中 二进制 减法 的拓展问题—— 计算机 数学 高手进
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/23 16:33:15
计算机 中 二进制 减法 的拓展问题—— 计算机 数学 高手进
我作业有一道题:
完成下列二进制数的减法运算:(b) 00001100-11110111
这道题分析说先把减数化成补码的形式,也就是要把11110111化成补码,怎么化啊?它的最高位已经是1了。
如果把一个二进制数例如00001111化成补码,先在最高位取1,成10001111,再把各位取反成11110000,加1得11110001,这就是00001111的补码,但是上面那个题它的第一位已经是1了,怎么化呀??
我作业有一道题:
完成下列二进制数的减法运算:(b) 00001100-11110111
这道题分析说先把减数化成补码的形式,也就是要把11110111化成补码,怎么化啊?它的最高位已经是1了。
如果把一个二进制数例如00001111化成补码,先在最高位取1,成10001111,再把各位取反成11110000,加1得11110001,这就是00001111的补码,但是上面那个题它的第一位已经是1了,怎么化呀??
如果人工计算,应该按照减法进行,即:
0000 1100 - 1111 0111 = 0001 0101。
但是,CPU中,只有加法器,并没有减法器,遇到减法,CPU就要将减数全部的位,都求反加一,再与被减数相加,就是:
0000 1100 + 0000 1001 = 0001 0101。 和人工计算的结果相同。
注意:这里讲的“减数全部的位,都求反加一”,并不是常说的求“补码”,这是在CPU中自动进行的,无论这个数字,原来是不是补码,只要是做“减法”,CPU都要自动转换,包括最高位。
上述说法,可以参考《计算机组成原理》。
一般常说的求“补码”,是针对负数而言,由人工进行的。
规则是:符号位为1,不要变化,仅仅对后面的数值位,由原码求反加一。
0000 1100 - 1111 0111 = 0001 0101。
但是,CPU中,只有加法器,并没有减法器,遇到减法,CPU就要将减数全部的位,都求反加一,再与被减数相加,就是:
0000 1100 + 0000 1001 = 0001 0101。 和人工计算的结果相同。
注意:这里讲的“减数全部的位,都求反加一”,并不是常说的求“补码”,这是在CPU中自动进行的,无论这个数字,原来是不是补码,只要是做“减法”,CPU都要自动转换,包括最高位。
上述说法,可以参考《计算机组成原理》。
一般常说的求“补码”,是针对负数而言,由人工进行的。
规则是:符号位为1,不要变化,仅仅对后面的数值位,由原码求反加一。
计算机二进制转换十进制问题
计算机中二进制数和十进制数的转换方法?
一些关于计算机数学,MATLAB的问题.
计算机二进制怎么算
计算机中数据的表示问题
初一数学计算机利用的是二进制数,它共有两个数码0、1,十进制数2004是二进制下
初一数学计算机利用的是二进制数,它共有两个数码0、1,十进制数2008是二进制下
英译汉,计算机方面,高手进!
计算机中二进制的乘法和除法如何用加法来实现的
字符g的ASCII码是什么,在计算机中存储的二进制数是什么?
数学推理与证明计算机是将信息转换成二进制数进行处理的,二进制即“逢2进1”,如(1101)2表示二进制数,将他转换成十进
在计算机中,为什么要采用二进制来表示数据?