补码加减运算电路
n bit加法器
补码加减运算电路
Sub是Substration的意思,也就是减法,加法Sub=0,减法Sub=1。
如果是加法,就直接按位相加即可。如果是减法,就将Y按位取反,末位+1。
这个电路,也可以用来实现无符号数的加减运算。
拓展为带标志位的运算电路:
标志位的生成方法:
OF实现的逻辑:
OF主要是用来判断带符号数是否溢出。
SF实现的逻辑:
直接看最高位,也就是符号位,1为负,0为正。
ZF实现的逻辑:
所有bit全为0,才为0句号。或非运算,1为0,0为非0。
CF实现的逻辑:
CF主要是用来判断无符号数是否溢出。1为溢出,0为非溢出。
无符号数,有Sub,Sub为1为减法,Sub为0为加法。如果为加法,Sub=0,如果要溢出,则cout为1,则异或运算结果为1。如果为减法,Sub=1,如果要溢出,则cout=0,故异或运算也为1。所以,CF的实现方法为: