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

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

第一章 数制与编码(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编码表

十进制数

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2441762.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-03
下一篇 2022-08-03

发表评论

登录后才能评论

评论列表(0条)