[数电] 第1章:数制与编码

[数电] 第1章:数制与编码

重点及难点

  1. 进位计数制,常用数制之间的转换
  2. 原码、反码、补码的概念及相互转换
  3. BCD 码概念,8421 BCD 码

1-1 数制及其相互转换

  1. 数码:由数字符号构成且表示物理量大小的数字和数字组合。
  2. 进位计数制(简称数制):多位数码中每一位的构成方法,以及从低位到高位的进制规则。
  3. 了解进位计数制的两个概念:进位基数和数位的权值(位权)。
  • 一种进位计数制包含着基数和位权两个基本的因素:
  • 基数(R 进制)(base):
    • 指计数制中所用到的数字符号的个数。在基数为 R 计数制中,包含0、1、…、R-1共R个数字符号,进位规律是 “逢R进一 ”。称为R进位计数制,简称R进制。
  • 位权(相应位的数)(weight):R进制数的位权是R的整数次幂
    • 是指在一种进位计数制表示的数中,用来表明不同数位上数值大小的一个固定常数。不同数位有不同的位权,某一个数位的数值等于这一位的数字符号乘上与该位对应的位权。
  1. 并列表示法
    (N)R=an-1an-2…a2a1…a-1a-2…a-m
  2. 多项式表示法 (按权展开)
    ( N ) R = a n − 1 R n − 1 + a n − 2 R n − 2 + ⋯ ⋅ a 2 R 2 + a 1 R 1 + a 0 R 0 + a − 1 R − 1 + a − 2 R − 2 + ⋯ + a − m R − m = ∑ i = − m n − 1 a i R i \begin{aligned} (N)_R &= a_{n-1}R^{n-1} + a_{n-2}R^{n-2} + \cdots \cdot a_2 R^2 + a_1 R^1 + a_0 R^0 \\ &\quad + a_{-1}R^{-1} + a_{-2}R^{-2} + \cdots + a_{-m} R^{-m} \\ &= \sum_{i=-m}^{n-1} a_i R^i \end{aligned}(N)R=an1Rn1+an2Rn2+a2R2+a1R1+a0R0+a1R1+a2R2++amRm=i=mn1aiRi
  • R进制特点:
    1. 有0、1、…、R-1共R个数字符号
    2. 逢R进一
    3. 位权是R的整数次幂,第i位的权为R i R^iRi(-m≤i≤n-1)
      常用的进位计数制

十进制

  • 数字符号:0、1、2、3、4、5、6、7、8、9
  • 计数规则:逢十进一
  • 基数:10
  • 各位的权值为10 i 10^i10i,i是各数位的序号。
    ( 368.258 ) 10 = 3 × 10 2 + 6 × 10 1 + 8 × 10 0 + 2 × 10 − 1 + 5 × 10 − 2 + 8 × 10 − 3 \begin{aligned} (368.258)_{10} &= 3 \times 10^2 + 6 \times 10^1 \\ &\quad + 8 \times 10^0 + 2 \times 10^{-1} + 5 \times 10^{-2} + 8 \times 10^{-3} \end{aligned}(368.258)10=3×102+6×101+8×100+2×101+5×102+8×103

十进制数人们最熟悉, 但机器实现起来困难

二进制

  • 数字符号:0、1
  • 计数规则:逢二进一
  • 基数:2
  • 各位的权值为2 i 2^i2i,i是各数位的序号
    • 算数运算规则:加、减、乘、除
    • 二进制优点:运算简单、物理实现容易、存储和传送方便、可靠。因为二进制中只有0和1两个数字符号,可以用电子器件的两种不同状态来表示一位二进制数。例如,用电平的高和低表示1和0等。所以,在数字系统中普遍采用二进制。
    • 二进制的缺点:数的位数太长且字符单调,使得书写、记忆和阅读不方便。

十六进制

  • 计数符号:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
  • 计数规则:逢十六进一
  • 基数R:16
  • 位权:16的整数次幂
  • 用途:表示和记录二进制数(4位二进制表示1位十六进制)

八进制

  • 数字符号:0,1,2, 3,4,5,6,7
  • 计数规则:逢八进一
  • 基数:8
  • 权:8 i 8^i8i,i是各数位的序号
  • 三位二进制表示以为八进制

1-1-2 数制转换

  • 二进制与十进制:
    • Binary to Decimal
    • Decimal to Binary
  • 二进制与八进制
    • Binary to Octal
    • Octal to Binary
  • 二进制与十六进制
    • Binary to Hexadecimal
    • Hexadecimal to Binary

1-2 带符号二进制数的表示

  • 标记一个数正负—>“+/-”
    (把二进制数的符号位和数值位一起编码可以得到机器码。)—>首位作为符号位
  • 0—>+
  • 1—>-
    n位机器码的格式:

原码、反码、补码

  • A 的原码:
    A为正数:符号位为0,数值位为|A| (用自然二进制数表示)
    A为负数:符号位为1,数值位为|A| (用自然二进制数表示)
    简单易懂,加减不方便
    表示范围:− ( 2 n − 1 − 1 ) + ( 2 n − 1 − 1 ) -(2^{n-1}-1)~+(2^{n-1}-1)(2n11)+(2n11)
  • A 的反码:
    A为正数:其反码与原码相同。
    A为负数: 在A的原码的基础上,符号位不变,数值位
    [ x 1 + x 2 ] 反 = [ x 1 ] 反 + [ x 2 ] 反 [x1+x2]_反=[x1]_反+[x2]_反[x1+x2]=[x1]+[x2]
    [ x 1 − x 2 ] 反 = [ x 1 ] 反 + [ − x 2 ] 反 [x1-x2]_反=[x1]_反+[-x2]_反[x1x2]=[x1]+[x2]
    符号位一起参加运算,有进位加入运算结果最低位
    按位取反。
    表示范围:− ( 2 n − 1 − 1 ) + ( 2 n − 1 − 1 ) -(2^{n-1}-1)~+(2^{n-1}-1)(2n11)+(2n11)
  • A 的补码:
    A为正数:其补码与原码相同。
    A为负数:在其反码基础上,符号位不变,数值位加1。
    (原码取反加1)
    [ x 1 + x 2 ] 补 = [ x 1 ] 补 + [ x 2 ] 补 [x1+x2]_补=[x1]_补+[x2]_补[x1+x2]=[x1]+[x2]
    [ x 1 − x 2 ] 补 = [ x 1 ] 补 + [ − x 2 ] 补 [x1-x2]_补=[x1]_补+[-x2]_补[x1x2]=[x1]+[x2]
    符号位一起参加运算,有进位应将进位丢掉
    表示范围:− 2 n − 1 + ( 2 n − 1 − 1 ) -2^{n-1}~+(2^{n-1}-1)2n1+(2n11)

1-3 编码

  • 数字系统(电路)用于处理二进制数字0和1。
  • 实际问题很少能直接基于二进制数字来描述。

如何将二进制数字0、1与现实问题联系起来?(数字,字母,事件,条件…)

1-3-1 BCD

Binary Coded Decimal

四位二进制表示十进制

  • 四位二进制代码对十进制数字符号进行编码,简称为二-十进制代码。
  • 常用 BCD 码:
    8421BCD 码、5421BCD 码、2421BCD 码、余 3 码、余 3 循环码

余三码(0):0011

  1. 8421BCD码
    1. 有权码,0-9的8421BCD码与二进制数表示的0-9完全相同;
    2. 8421码中不允许出现1010~1111六种组合(因为没有十进制数字符号与其对应)。(对应不了的不存在)
    3. 十进制数字符号的8421码与相应ASCII码的低四位相同,这一特点有利于简化输入输出过程中BCD码与字符代码的转换。
    • 与十进制转换按位转换
    • (首位看作8)
      有权码:在二进制编码十进制(BCD)中,每个二进制位被赋予一个固定权重的编码方式
  2. 5421BCD码
    1. 有权码;(首位看作5)
    2. 不具备单值性,5421码中不允许出现0101~0111和1101~1111六种组合(为了与十进制数字符号一一对应)。
  3. 2421BCD码
    1. 有权码;(首位看作2)
    2. 不具备单值性,2421码中不允许出现0101~1010六种组合(为了与十进制数字符号一一对应)
    3. 自补码:自补特性,即按位取反可获得该数对9的补数的2421BCD码 (a 反 = ( 9 − a ) a_反=(9-a)a=(9a)
  4. 余3BCD码
    1. 无权码 每个字符编码比相应的8421BCD码多3
    2. 不允许出现00000010和11011111六种组合。(无字符对应)
    3. 自补码:对9自补(a 反 = ( 9 − a ) a_反=(9-a)a=(9a)
    4. 余3码相加:有进位加3,无进位减3

1-3-2 可靠性编码

  • 作用:提高系统的可靠性
    为了减少或者发现代码在形成和传送过程中可能发生的错误

  • 格雷码
    特点:任意两个相邻的数所对应的代码之间只有一位不同,其余位都相同。

  • 奇偶校验码
    具有检错能力,能发现奇数个代码位同时出错的情况
    “奇校验”时,使校验位和信息位所组成的代码中含有奇数个1
    “偶校验”时,使校验位和信息位所组成的代码中含有偶数个1

  • 汉明码

  • 循环冗余码

1-3-3 字符编码

  • 数字系统中处理的信息除了数值信息之外,还有字母、运算符号、标点符号以及其他特殊符号信息,这些符号统称为字符。所有字符在数字系统中必须用二进制编码表示,通常将其称为字符编码。
    • 字符——编码
  • 最常用的字符编码是美国信息交换标准码——ASCII码
  • 由于数字系统中实际是用一个字节表示一个字符,所以使用ASCII码时,通常在最左边增加一位奇偶校验位