免费智能真题库 > 历年试卷 > 数据库系统工程师 > 2009年上半年 数据库系统工程师 上午试卷 综合知识
  第1题      
  知识点:   海明校验码   校验码
  关键词:   码字   数据   校验码   校验位        章/节:   计算机软件基础知识       

 
海明校验码是在n个数据位之外增设k个校验位,从而形成一个k+n位的新的码字,使新的码字的码距比较均匀地拉大。n与k的关系是(1)。
 
 
  A.  2k-1>=n+k
 
  B.  2k-1<=n+k
 
  C.  n=k
 
  D.  n-1<=k
 
 
 

 
  第22题    2018年上半年  
   31%
在互联网中,各种电子媒体按照超链接的方式组织,通常使用()来描述超链接信息。
  第6题    2020年下半年  
   37%
在常见的数据结构中,(5)是只能通过访问它的端来实现数据存储和检索的一种线性数据结构,它的修改遵循先进后出的原则;(6)是..
  第22题    2009年上半年  
   38%
设系统中有R类资源m个,现有n个进程互斥使用。若每个进程对R资源的最大需求为w,那么当m、n、w取下表的值时,对于下表中的a{..
   知识点讲解    
   · 海明校验码    · 校验码
 
       海明校验码
        在数据中多加入几个校验位,把数据的每一个二进制位分配在几个奇偶校验组中,当某一位出错后,就会引起有关的几个校验位的值发生变化,这不但可以发现错误,还能指出哪一位出错。
        首先要确定校验位的个数。假设校验位个数为r,则它能表示2r个信息,用其中一个信息表示没有错误,其余2r-1个信息指出哪一位错,而错误也可能发生在校验位,因此只有k=2r-1-r个信息能用于纠正被传送数据的位数。也就是说要满足关系
        2rk+r+1
        注意:如要能检测与自动校正一位错,并发现两位错,那么还要加一位总校验位,则码距为4,此时应满足
        2r-1≥k+r
        按上述不等式计算,可计算出数据位k与校验位r的对应关系,如下表所示。
        kr的对应关系
        设海明编码为HmHm-1H2H1,则此海明码的编码规则是:校验位与数据位之和为m,每个校验位Pi在海明码中被分配在位号为2i-1的位置,其余各位为数据位依次排列;海明码的每一位码Hi由多个校验位校验,其关系是被校验的每一位的位号等于校验它的各校验位之和。
        可以看一个例子。现在要传送一个字节的数据,则k=8,那么r=4,所以海明码的总位数为12,可表示为
        H12H11H3H2H1
        4个校验位P4~P1对应的编号是H8H4H2H1。其余为数据位Di,则有以下排列:
        D8D7D6D5P4D4D3D2P3D1P2P1
        那么可以知道,D8处在H12的位置,12=4+8,所以由处在H4P3和处在H8P4检测,这样依次类推,可以得到由P1检测的数值位有D1D2、D4D5D7,若用偶校验,其结果为
        P1=D1D2D4D5D7
        P2=D1D3D4D6D7
        P3=D2⊕D3⊕D4D8
        P4=D5D6D7D8
        然后按下面关系对所得的关系实现偶校验,即
        S1=P1D1D2D4D5D7
        S2=P2D1D3D4D6D7
        S3=P3D2D3D4D8
        S4=P4D5D6D7D8
        则校验得到的结果值S4~S1能反映海明码出错情况。按S4S3S2S1的顺序排列形成一个二进制数,转换为十进制数为j,表示Hj出错。
 
       校验码
        计算机系统运行时,在各个部件之间经常需要进行数据交换,为保证数据传送过程的正确无误,必须引入差错检查机制对数据进行校验,以检测是否有数据传送错误。其基本原理是:在编码中引入一定的冗余位,当被传送的编码中出现错误时就使之成为非法代码而被检测出。
               奇偶校验码
               奇偶校验码用于并行码的检错。其原理是:在k位数据码之外增加1位校验位,使k+1位码字中取值为1的位数总保持为偶数(偶校验)或奇数(奇校验)。
               (1)水平校验:设最高位为校验位。
               原有数字位生产新的码字:偶校验奇校验
               
               (2)垂直校验:设4个字节的数据为一组进行垂直奇校验。
               第一字节数据:10110011
               第二字节数据:11011001
               第三字节数据:01010101
               第四字节数据:10001100
               垂直校验位:01001100
               (3)垂直水平校验:设4个字节的数据为一组进行垂直水平奇校验。
               水平校验位
               第一字节数据:10110011 0
               第二字节数据:11011001 0
               第三字节数据:01010101 1
               第四字节数据:10001100 0
               垂直校验位:01001100
               海明码
               海明码用于多位并行数据检错纠错处理。
               实现:为k个数据位设r个校验位,使k+r位的码字(即海明码)能发现k位中任何一位出错且可以纠正。
               其数据位k和校验位r必须满足如下关系式:
               2rk+r+I
               1)海明码的编码规则
               设r个校验位PrPr-1P1,k个数据位Dk-1Dk-2D0,产生的海明码为Hr+k,Hr+k-1H1,则有如下规则。
               规则1:Pi在海明码的2i-1位置,即Hj=Pi,j=2i-l;数据位则依序从低至高占据海明码中其他的位置。
               规则2:海明码中的任意位都是由若干校验位来校验的。其对应关系是:被校验的海明位的下标等于所有参与校验该位的校验位的下标之和,而校验位则是由其自身来校验的。
               2)海明码校验
               下面以k=8对纠1位错的海明码的编码及校验原理给予说明。
               (1)确定r的位数。
               当r=4时,有24≥8+4+1,可以满足2rk+r+1。
               (2)确定海明码的位置。
               由规则1,Pi对应Hj的位置。
               如:确定P4的位置,因j=2i-1=24-1=8,则有P4H8的位置。同理得到以下位置的对应关系:
               H12H11H10H9H8H7H6H5H4H3H2H1
               D7D6D5D4P4D3D2D1P3D0P2P1
               (3)确定编码方案。
               由规则2,编码方案如下:
               形成HiP1相关的数据位有:S1=D0D1D3D4D6
               形成HiP2相关的数据位有:S2=D0D2D3D5D6
               形成HiP3相关的数据位有:S3=D1D2D3D7
               形成HiP4相关的数据位有:D7D6D5D4
               得校验关系:S4=D4D5D6D7
               (4)确定纠错译码方案。
               设G1=S1P1G2=S2P2G3=S3P3G4=S4P4。若采用偶校验则G4~G1的值全为0时数据正确,反之有错。用对出错位取反的方法即可实现纠错。
               例如,G4~G1=0111,其值为7,对应于H7D3的位置)。将D3的值取反就实现了纠错。
               循环冗余校验码(CRC)
               利用生成多项式为k个数据位产生r个校验位来进行编码,其编码长度为k+r。CRC的代码格式为:
               
               由此可知循环冗余校验码由两部分组成,左边为信息码,右边为校验码,若信息码占k位,则校验码就占n-k位,所以又称为(n,k)码。
   题号导航      2009年上半年 数据库系统工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第1题    在手机中做本题