② 十进制无权码

  是指表示一个十进制数位的4位基2码的每一位没有确定的位权。

  在采用的无权码的一些方案中,早期用的比较多的是余3码(Excess-3 code),是把原二进制的每个代码都加0011值得到的。它的主要优点是执行十进制数位相加时,能正确地产生进位信号,而且还给减法运算带来了方便。

  采用余3码执行加法运算的规则是:
  当两个余3码相加不产生进位时,应从所得结果中减去0011;
  产生进位时,一方面应将进位信号送入高位余3码,本位还应执行加0011的修正操作。例如:

  (1)   0101 0011    (20)10+(75)10= (95)10
    +) 1010 1000
    
      1111 1011
    -) 0011 0011
    
      1100 1000

  (2)   0101 1011    (28)10+(55)10=(83)10
    +) 1000 1000
    
     1101 1 0011
     1110
    -)0011 + 0011
    
     1011  0110

  格雷码是另外一种常用的二-十进制编码,是使任何两个相邻的代码只有一个二进制位的状态不同,其余三个二进制位必须有相同状态。这种编码方法的好处是,从一编码变到下一个相邻编码时,只有一位的状态发生变化,有利于得到更好的译码波形,在模拟→数字、数字→模拟转换的电路中得到更好的运行结果。用四个二进制位的格雷码表示十进制数的十个状态的方案很多。表2.10给出两组最常用的编码值。


表2.10 四位无权码

十进制数
余三码
格雷码(1)
格雷码(2)
0
0011
0000
0000
1
0100
0001
0100
2
0101
0011
0110
3
0110
0010
0010
4
0111
0110
1010
5
1000
1110
1011
6
1001
1010
0011
7
1010
1000
0001
8
1011
1100
1001
9
1100
0100
1000