EEE104-Lecture 2

注意⚠️:本专栏的顺序与上课顺序不一定完全一致!!!

带符号数

在计算机的世界中,所有数字都是以补码形式存在的!
只不过,正数的补码是它本身,而负数的补码,则需要将正数进行2的补

1的补

定义: 对于一个n位的二进制数 A,它的1的补 A’ 是将 A 中的每个1变为0,每个0变为1得到的数。

计算方法:

  1. 将 A 的所有位进行反转。
  2. 不考虑进位,得到 A’。

举例:

  • A = 1010,则 A’ = 0101。
  • A = 1111,则 A’ = 0000。

2的补

定义: 对于一个n位的二进制数 A,它的2的补 A’’ 是将 A 的1的补 A’ 再加1得到的数。

计算方法:

  1. 计算 A 的1的补 A’。
  2. 将 A’ 和1相加,得到 A’’。

举例:

  • A = 1010,则 A’ = 0101,A’’ = 0101 + 1 = 0110。
  • A = 1111,则 A’ = 0000,A’’ = 0000 + 1 = 0001。

1的补和2的补的性质

  • 对于正数 A,A’ 和 A’’ 相等。
  • 对于负数 A’,A’’ 等于 -A 的二进制表示。
  • A 和 A’’ 的所有位相加,进位为1。

一些例子



带符号数的数学运算

加法

什么都不用管!直接加就行!最后舍弃进位即可!

位溢出

一般题里不会出现。指的是相加后超出了8位能存载的值(-127~128)。

减法

被减数相反数后相加即可。

乘法

将数字与符号分开计算。如果有负数,将其变为正数后相乘。最后再根据负号的个数转换最后的结果。

除法

除法可化简为减法运算,归根结底为n次减去被除数,所得结果即为n。而减法又能化简为加法运算,所以只需要反复加上被除数的相反数,直至0为止。
也可以使用类似于十进制的竖式来做,但需要注意正负号

尾声

最基础的部分讲完啦,接下来就是逻辑门啦!之后的部分难度更大,属于数电最难的部分!加油冲冲冲!