余三码是一种BCD(Binary-Coded Decimal)码,是在8421码的基础上每个数加上3(0011)形成的。
两个余三码相加减的步骤如下:
### 加法
1. **按位相加**:将两个余三码按位进行加法运算,遵循二进制加法规则,即(0 + 0 = 0),(0 + 1 = 1),(1 + 0 = 1),(1 + 1 = 10)(向高位进1)。
2. **修正结果**:如果相加的结果小于或等于9(1001),则需要减去3(0011)进行修正;如果相加的结果大于9(1001),则需要加上3(0011)进行修正,并向高位产生进位。
例如,计算余三码表示的5(1000)和6(1001)相加:
- 按位相加:(1000+1001 = 10001)。
- 修正结果:因为结果大于9,所以要加上0011,即10001+0011=10100->即11的余三码表示,高位的(1)为进位。
### 减法
1. **按位相减**:将两个余三码按位进行减法运算,遵循二进制减法规则,即(0 - 0 = 0),(1 - 0 = 1),(1 - 1 = 0),(0 - 1 = 1)(向高位借1 ->比如10-01=02-01=01)。
2. **修正结果**:如果相减的结果大于或等于9,则需要减去3(0011)进行修正;如果相减的结果小于9,则需要加上3(0011)进行修正,并向高位产生借位。
例如,计算余三码表示的8(1011)减去3(0110):
- 按位相减:(1011 - 0110 = 0211-0110=0101)。 -
修正结果:因为结果小于(9),所以要减去(0011),即(0101-0011 =0021-0011= 0010),得到5的余三码表示。