8421码、5421码、2421码是有权码,8421、5421、2421即为相应系数的权值。 余三码是无权码,它是在8421码的基础上加上二进制数0011得到的。
8421码
它是一种有权码,权值从高到底为8、4、2、1。如8→1000;9→1001。
例如 (255)10=(0010 0101 0101)2
如果两个8421码相加之和小于或等于(1001)2,即(9)10,则不需要修正;如果相加之和大于或者等于(1010)2,即(10)10,则要加6修正。
例如
3+9=12 → 0011+1001+0110=10010 按照bcd码原理(从低向高,缺的位补0) 为00010010。
3+5=8 → 0011+0101=1000。
2421码
它也是一种有权码,假设数值为b3b2b1b0,则权值从高到底为2、4、2、1。特点是大于等于5的4为二进制数中最高位为1,小于5的最高为为0。
如8→1110 ,5→1011 ,3→0011
5421码
它是二-十进制代码(BCD码)的一种。5421BCD码是一种有权码,有权BCD码就是四位二进制数中每一位数码都有确定的位仅值,若把这四位二进制码按权展开,就可求得该二进制码所代表的十进制数。
余三码
它是由8421码加上0011形成的一种无权码,由于它的每个字符编码比相应的8421码多3,故称为余三码。BCD码的一种。余3码的特点:当两个十进制数的和是9时,相应的余3码的和正好是15,于是可自动产生进位信号,而不需修正。0和9, 1和8,…..5和4的余3码互为反码,这在求对于模9的补码很方便。
例如:
二进制: 101000100 =十进制:324=8421 码: 001100100100= 5421码:001100100100= 2421 码:001100100100=余3码:011001010111
1. 原码
原码就是符号位加上真值的绝对值,即用第一位表示符号,其余位表示值。比如:如果是8位二进制:
[+1]原= 0000 0001
[-1]原= 1000 0001
第一位是符号位,因为第一位是符号位,所以8位二进制数的取值范围就是:(即第一位不表示值,只表示正负。)
2. 反码
反码的表示方法是:
正数的反码是其本身;
负数的反码是在其原码的基础上,符号位不变,其余各个位取反。
[+1] = [0000 0001]原= [0000 0001]反
[-1] = [1000 0001]原= [1111 1110]反
可见如果一个反码表示的是负数,人脑无法直观的看出来它的数值。通常要将其转换成原码再计算。
3. 补码
补码的表示方法是:
正数的补码就是其本身;
负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1。(也即在反码的基础上+1)
[+1] = [0000 0001]原= [0000 0001]反= [0000 0001]补
[-1] = [1000 0001]原= [1111 1110]反= [1111 1111]补
对于负数,补码表示方式也是人脑无法直观看出其数值的。通常也需要转换成原码再计算其数值。
正数:原码=反码=补码;
负数:补码=反码+1