二进制减法与2的补语

时间:2013-01-20 21:54:56

标签: binary subtraction twos-complement

我需要帮助使用2的表示法减去二进制数,并为每个数字使用5位:

1)-9 -7 =?有溢出吗?

-9 = 01001(2的补码= 10111)和-7 = 00111(2的补数= 11001)

现在我们需要添加因为我们正在使用2的补码

10111 11001 = 100000但这个答案没有意义。另外,我假设有溢出,因为答案中有超过5位。

2)6 - 10,与以前相同的过程。负二进制数对我来说没有意义

3 个答案:

答案 0 :(得分:7)

1)-9 - 7

-9 - 7 = -9 + -7

9(二进制)= 01001
-9(2的补码)= 10111
7(二进制)= 00111
-7(2的补码)= 11001

 10111 +
 11001 =
110000

这不适合5位。删除溢出,我们得到10000,即-16(二进制)。

2)6 - 10

6 - 10 = 6 + -10

6(二进制)= 00110
10(二进制)= 01010
-10(2的补码)= 10110

 00110 +
 10110 =
 11100

这适合5位,是-4(二进制)。

答案 1 :(得分:0)

10111 + 11001不是100000而是110000。

   1111
   10111
 + 11001
   -----
  110000

答案 2 :(得分:0)

回答第一个问题是错误的。要使用二进制补码查找-9-7,我们需要按照以下步骤操作:

STEP:1 Convertion of first  number

1st the binary conversion of 9:     01001

2nd find the complement of binary:  10110

Add 1 to the binary complement:     10110  
                                       +1
                                    -----
                                    10111  
STEP 2: Convertion of second number

1st the binary conversion of 7:     00111

2nd find the complement of binary:  11000

Add 1 to the binary complement:     11000 
                                       +1
                                   -------
                                    11001
STEP 3: Adding

Now add the two outputs -9 + (-7):  10111
                                   +11001
                                  --------
                                   110000
The most important thing is checking the answer whether it is correct or not.
you may use index for the binary digits:       7 6 5 4 3 2 1 0
                                                   1 1 0 0 0 0

find the 2 raised to the power of each index having 1 digit.
                                                (-)2^5 + 2^4

*注意( - )被使用,因为在二进制补码中,最高有效位(具有最高索引的位)是符号位-2 ^ 5 + 2 ^ 4 = -32 + 16 = -16 这是-9-7 = -16的正确答案。因此,2的补码成为代表负数的流行方式。对于符号幅度,我们需要假设一个符号位,这在计算机中很难实现,对于1的补码,我们需要加1以找到正确的答案。