什么是二进制数的减法?
通过对减数执行二进制补码来减去二进制数。二进制补码是通过以下步骤完成的-
对每个数字进行补码。即,将1更改为0,将0更改为1。
将1添加到输出。
下面的例子说明了使用上述步骤对二进制数字进行减法运算。
示例:11101011-01100110
从第一个值11101011中减去第二个值01100110。
首先对第二个值01100110应用二进制补码,即按照所示的两个步骤进行操作。
Step 1: 0 1 1 0 0 1 1 0
1 0 0 1 1 0 0 1 (change 1 to 0 and 0 to 1)
Step 2: 1 0 0 1 1 0 0 1
+1 (add 1)1 0 0 1 1 0 1 0 (resultant)
1
Then, add the resultant to the first value.
1 1 1 0 1 0 1 1 (first value)
+1 0 0 1 1 0 1 0 (resultant)1 0 0 0 0 1 0 1(output)
ignore 1 1 1 1 1 1
The output is 10000101.它可以理解从大数中减去小数的过程。最高有效位(MSB)或最左边的位设置为1以表示负数。MSB称为符号位。其余7位用于表示值。
以下是从较小的数字中减去较大的数字的步骤-
它可以将二进制补码应用于较小的数字。
它用于将结果值与较小的数字相加。
它可以将MSB更改为0。
它可以对结果数字应用二进制补码。
MSB表示负值。
示例:10010101–10110100
Step 1: 1 0 1 1 0 1 0 0 (greater number)
0 1 0 0 1 0 1 1 (change 1 for 0 and 0 for 1)
0 1 0 0 1 0 1 1
+1 (add 1)0 1 0 0 1 1 0 0 1 1
Step 2: 1 0 0 1 0 1 0 1 (smaller number)
+0 1 0 0 1 1 0 0 (add the resultant value to smaller number)1 1 1 0 0 0 0 1 1 1 1
Step 3: 1 1 1 0 0 0 0 1
0 1 1 0 0 0 0 1 (change MSB bit to 0)
Step 4: 0 1 1 0 0 0 0 1
1 0 0 1 1 1 1 0 (change 1 for 0 and 0 for 1)
1 0 0 1 1 1 1 0
+11 0 0 1 1 1 1 1Output = 10011111 (MSB indicates a negative value)
作者头像
作者名称
作者性别



评论列表