1、第3章 运算器与运算方法3.6十进制数的加减法运算3.6十进制数的加、减法运算 对于BCD码或余3码组成的十进制数进行加、减法运算,常常是在二进制加、减法运算的基础上通过适当的校正来实现的。校正就是将二进制的“和”转换为所要求的十进制格式。(1)十进制的加法运算 计算机内实现BCD码加法运算时,先做二进制加法运算。当一个十进制位的BCD码加法和大于或等于1010(十进制的10)时,就需要进行加6修正。3.6十进制数的加、减法运算 修正的具体规则是:1)两个BCD数码相加之和等于或小于1001,即十进制的9,不需要修正。2)两个BCD数码相加之和大于或等于1010且小于或等于1111,即位于十进
2、制的10和15之间,需要在本位加6修正。修正的结果是向高位产生进位。3)两个BCD数码相加之和大于1111,即十进制的15,加法的过程已经向高位产生了进位,对本位也要进行加6修正。3.6十进制数的加、减法运算3.6十进制数的加、减法运算(2)十进制加法器3.6十进制数的加、减法运算(3)十进制的减法运算 两个BCD码的十进制位的减法运算,通常采用先取减数的模9补码或模10补码,再将模9补码+1(即模10补码)与被减数相加。3.6十进制数的加、减法运算 求取一个以BCD编码的十进制数字的模9补码,通常可以采用以下两种方法:1)先将4位二进制表示的BCD码按位取反,再加上二进制1010(十进制10),加法的最高进位位丢弃。BCD码0011(十进制3)的模9补码计算方法为:先对0011按位取反得1100,再将1100加上1010且丢弃最高进位位得0110(十进制6)。0110就是0011的模9补码。3.6十进制数的加、减法运算 2)先将4位二进制表示的BCD码加上0110(十进制6),再将每位二进制位按位取反。如BCD码0011(十进制3)的模9补码的计算方法为,先计算0011+0110=1001,再对1001按位取反得0110。3.6十进制数的加、减法运算 将BCD码的模9补码电路和BCD码加法器组合在一起,构成如图3-23所示的两个BCD码的加、减法运算线路。