如何减去二进制数字

Mic*_*ood 2 binary

在这个例子中,它是5 - 2等于3.计算机如何知道结果不是负面的,为什么它不认为答案是35?

 0101 = 5
+1110 = -2
 -----------
10011 = 3
Run Code Online (Sandbox Code Playgroud)

答案的1和前面代表什么?

Bev*_*ynQ 5

领先的一个称为溢出.

如果您正在使用的操作没有溢出到另一个字节,那么您将以4位字节操作它将丢失.

  0101 =  5
 +1110 = -2
-----------
  0011 =  3
Run Code Online (Sandbox Code Playgroud)

通常处理器有一系列可以通过操作设置的标志,在这种情况下,溢出标志将设置为true.结果超出了可以存储在一个字节中的内容.