十进制数的编码与运算

[09-12 11:45:37]   来源:http://www.88dzw.com  电路基础   阅读:8882

文章摘要:十进制数的编码与运算十进制数的每一个数位的基为10,但到了计算机内部,出于存储与计算方便的目的,必须采用基2码对每个十进制数位进行重编码,所需要的最少的基2码的位数为log210,取整数为4。4位基2码有16种不同的组合,怎样从中选择出10个组合来表示十进制数位的0-9,有非常多的可行方案,下面介绍其中的最常用的几种。① 十进制有权码是指表示一个十进制数位的4位基2码的每一位有确定的位权。用得最普遍的是8421码,即4个基2码位的权从高向低分别为8、4、2和1,使用基2码的0000、0001、…1001这10种组合,分别表示0到9这十个值。这种编码的优点是这4位基2码之间满足二进制的规则,而十

十进制数的编码与运算,标签:电子电路基础,模拟电路基础,http://www.88dzw.com
十进制数的编码与运算

  十进制数的每一个数位的基为10,但到了计算机内部,出于存储与计算方便的目的,必须采用基2码对每个十进制数位进行重编码,所需要的最少的基2码的位数为log210,取整数为4。4位基2码有16种不同的组合,怎样从中选择出10个组合来表示十进制数位的0-9,有非常多的可行方案,下面介绍其中的最常用的几种。

  ① 十进制有权码
  是指表示一个十进制数位的4位基2码的每一位有确定的位权。
  用得最普遍的是8421码,即4个基2码位的权从高向低分别为8、4、2和1,使用基2码的0000、0001、…1001这10种组合,分别表示0到9这十个值。这种编码的优点是这4位基2码之间满足二进制的规则,而十进制数位之间则是十进制规则,故称这种编码为以二进制编码的十进制(Binary Coded Decimal)数,简称BCD码或二-十进制码。另一个优点是在数字符的ASCII码与这种编码之间的转换方便,即取每个数字符的ASCII码的低4位的值便直接得到该数字的BCD码,入/出操作简便。在计算机内实现BCD码之间的算术运算要复杂一些,在某些情况下,需要对加法运算的结果进行修正。修正规则是:

  若两个8421码数相加之和等于或小于1001,即10进制的9,不需要修正;
  若相加之和在10到15之间,一方面应向高位产生一进位,本位还要进行加6修正,进位是在进行加6修正时产生的;
  若相加之和在16和18之间时,向高位的进位会在相加过程中自己产生,对本位还需进行加6修正。下面给出三种情况下的具体例子。

  例如,1+8=9的运算结果是正确的,不必修正。

    0 0 0 1
   +)1 0 0 0    (1)10+(8)10=(9)10
  
    1 0 0 1

  而4+9的结果就必须用 +6 修正,进位是在修正过程中产生的。

    0 1 0 0
   +)1 0 0 1    (4)10+(9)10 =(1)10 (3)10
  
    1 1 0 1
  +) 0 1 1 0
  
   1 0 0 1 1

  而7+9的结果也必须用 +6 修正,进位是在相同加过程中产生的。

    0 1 1 1
   +)1 0 0 1    (7)10+(9)10 =(1)10(6)10
  
   1 0 0 0 0
  +) 0 1 1 0
  
   1 0 1 1 0

  另外几种有权码,如2421、5211、84-2-1、4311码(表2.9),也都是用4位有权基2码表示一个十进制数位,但这4位基2码之间并不符合二进制规则。这几种有权码的特性表现为:

  当采用2421、5211和4311编码时,任何两个十进制数位相加产生10或大于10的结果,相应的基2码相加会向高一位产生进位,有利于实现逢十进位的计数和加法规则。

[1] [2]  下一页


Tag:电路基础电子电路基础,模拟电路基础电路基础

《十进制数的编码与运算》相关文章