第一章 数制与编码(Number System and Co

模拟技术

2433人已加入

描述

第一章 数制与编码(Number System and Codes)
 
四 数的原码、反码及补码
 
1、数的表示形式

 在生活中表示数的时候一般都是把正数前面加一个“+”,负数前面加一个“-”,但是在数字设备中,机器是不认识这些的,我们就把“+”用“0”表示,“-”用“1”表示。原码、反码和补码。这三种形式是怎样表示的呢?如下所示:
 
 真值
 原码
 反码
 补码
 例1:求+12和-12八位原码、反码、补码形式
它们的原码分别为[+12]=00001100[-12]=100011     
它们的反码分别为[+12]*=00001100
[-12]*=(28-1)+(-1100)=11110011
它们的补码分别为[+12]**=00001100
[-12]**=28+(-1100)=11110100
 
正数
 +X
 0X
 0X
 0X
 
负数
 -X
 1X
 (2n-1)+X
 2n+X

2、原码、反码及补码的算术运算
因为这三种数码表示法的形成规则不同,所以算术运算方法也不相同。
 
原码:与我们的日常中算术运算相同。
反码:先转换为反码形式,再进行加减运算。它的减法可以按A反+[-B]反的形式进行.
补码:先转换为补码形式,再进行加减运算,其减法可以按A补+[-B]补进行.
 
3、溢出及补码运算中溢出的判断
 溢出可以描述为运算结果大于数字设备的表示范围。这种现象应当作故障处理。
   判断溢出是根据最高位的进位来判断的。

五、常用编码

1、BCD编码

  在数字系统中,各种数据要转换为二进制代码才能进行处理,而人们习惯于使用十进制数,所以在数字系统的输入输出中仍采用十进制数,这样就产生了用四位二进制数表示一位十进制数的方法,这种用于表示十进制数的二进制代码称为二-十进制代码(Binary Coded Decimal),简称为BCD码。它具有二进制数的形式以满足数字系统的要求,又具有十进制的特点(只有十种有效状态)。在某些情况下,计算机也可以对这种形式的数直接进行运算。常见的BCD码表示有以下几种。电+脑*维+修-知.识_网(w_ww*dnw_xzs*co_m)

· 8421BCD编码

  这是一种使用最广的BCD码,是一种有权码,其各位的权分别是(从最有效高位开始到最低有效位)8,4,2,1。
   例 写出十进数563.97D对应的8421BCD码。
     563.97D=0101 0110 0011 . 1001 01118421BCD
   例 写出8421BCD码1101001.010118421BCD对应的十进制数。
     1101001.010118421BCD=0110 1001 . 0101 10008421BCD=69.58D
   在使用8421BCD码时一定要注意其有效的编码仅十个,即:0000~1001。四位二进制数的其余六个编码1010,1011,1100,1101,1110,1111不是有效编码。电+脑*维+修-知.识_网(w_ww*dnw_xzs*co_m)

· 2421BCD编码

  2421BCD码也是一种有权码,其从高位到低位的权分别为2,4,2,1,其也可以用四位二进制数来表示一位十进制数。其编码规则如下表。电+脑*维+修-知.识_网(w_ww*dnw_xzs*co_m)

2、余3码
   余3码也是一种BCD码,但它是无权码,但由于每一个码对应的8421BCD码之间相差3,故称为余3码,其一般使用较少,故正须作一般性了解,具体的编码如下表。电+脑*维+修-知.识_网(w_ww*dnw_xzs*co_m)

常见BCD编码表

十进制数
8421BCD
2421BCD
3
0
0000
0000
0011
1
0001
0001
0100
2
0010
0010
0101
3
0011
0011
0110
4
0100
0100
0111
5
0101
1011
1000
6
0110
1100
1001
7
0111
1101
1010
8
1000
1110
1011
9
1001
1111
1100
10
0001,0000
0001,0000
0100,0011

3、格雷反射码(循环码)

  格雷码是一种无权码,其特点是任意两个相邻的码之间只有一个数不同。另外由于最大数与最小数之间也仅一个数不同,故通常又叫格雷反射码或循环码。

十进制数
二进制数
格雷码
十进制数
二进制数
格雷码
0
0000
0000
8
1000
1100
1
0001
0001
9
1001
1101
2
0010
0011
10
1010
1111
3
0011
0010
11
1011
1110
4
0100
0110
12
1100
1010
5
0101
0111
13
1101
1011
6
0110
0101
14
1110
1001
7
0111
0100
15
1111
1000

4、奇偶校验码

在数据的存取、运算和传送过程中,难免会发生错误,把“1”错成“0”或把“0”错成“1”。奇偶校验码是一种能检验这种错误的代码。它分为两部分;信息位和奇偶校验位。
有奇数个“1”称为奇校验,有偶数个“1”则称为偶校验。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分