精华内容
下载资源
问答
  • 什么是奇偶校验原理?奇校验、偶校验
    万次阅读
    2019-12-20 09:26:53

    奇校验:一个字节8位中“1”的个数,校验位,添加一位,使9位中“1”的个数为奇数;偶校验同理。

    奇校验:就是让原有数据序列中(包括你要加上的一位)1的个数为奇数
    1000110(0)你必须添0这样原来有3个1已经是奇数了所以你添上0之后1的个数还是奇数个。
    偶校验:就是让原有数据序列中(包括你要加上的一位)1的个数为偶数
    1000110(1)你就必须加1了这样原来有3个1要想1的个数为偶数就只能添1了。

    校验的原理是:假如采用奇校验,发送端发送的一个字符编码(含校验位)中,“1”的个数一定为奇数个,在 接收端对接收字符二进制位中的“1”的个数进行统计,若统计出“1”的个数为偶数个,则意味着传输过程中有1位(或奇数位)发生差错。

    事实上,在传输中偶尔—位出错的机会最多,故奇偶校验法常常采用。

    参考文章:数据通信中,奇偶校验原理

    更多相关内容
  • C语言 利用运算实现奇校验

    千次阅读 2018-05-27 22:24:45
    编写函数,利用运算符实现对个数中除最高以外的其他二进制数进行奇校验(奇校验就是在最高的位置上加入个值为1或为0的,使该字节各个中1的数量相加为奇数),并将校验存放到最高。例如:×0111001 →...

    编写函数,利用位运算符实现对一个数中除最高位以外的其他二进制数进行奇校验(奇校验就是在最高位的位置上加入一个值为1或为0的位,使该字节各个位中1的数量相加为奇数),并将校验位存放到最高位。
    例如:×0111001 →10111001
    ×0010101 →00010101



    #include <stdio.h>
    #include<math.h>
    void main()
    {
     unsigned char x ,y;
     unsigned char after(unsigned char a);
     scanf("%d",&x);
     y=after(x);
     printf("%x\n",y);
    }
    unsigned char after(unsigned char a)
    {
     int i,b=0;
     for (i=0;i<7;i++)
      b+=(a&(1<<i));
     if(b%2==0)
      a=(a&~0)+(unsigned char)(1<<7);
     else
      a=(a&~(unsigned char)(1<<7));
     return(a);
    }
    展开全文
  • 奇校验

    千次阅读 2019-04-09 21:31:21
    题目 题目描述: 输入个字符串,然后对每个字符进行奇校验,最后输出校验后的二进制数(如’3’,输出:10110011)。...校验数据完整性的方法个字节的8个数据与校验加起来之和有奇数...

    题目

    题目描述:
    输入一个字符串,然后对每个字符进行奇校验,最后输出校验后的二进制数(如’3’,输出:10110011)。
    输入描述:
    输入包括一个字符串,字符串长度不超过100。
    输出描述:
    可能有多组测试数据,对于每组数据,
    对于字符串中的每一个字符,输出按题目进行奇偶校验后的数,每个字符校验的结果占一行。

    理解

    奇校验:
    校验数据完整性的一种方法,一个字节的8个数据位与校验位加起来之和有奇数个 1。
    校验线路在收到数后,通过发生器在校验位填上 0 或 1,以保证和是奇数个 1。
    因此,校验位是 0 时,数据位中应该有奇数个 1;
    而校验位是 1 时,数据位应该有偶数个 1。
    如果读取数据时发现与此规则不符,CPU会下令重新传输数据。

    代码过程:
    进行与运算,得到其二进制形式及 1 的个数;
    根据得到的 1 的个数与整形 1 进行与运算,如果与结果为 0 ,则校验位置为 1;

    代码

    import java.util.Scanner;
    
    public class Main {
        public static void Test(char[] s) {
            //一个字节8个数据位
            int[] result  = new int[8];
    
            for(int i=0; i<s.length; i++) {
                int n = 0x01;
                int j = 7;
                int sum = 0;
    
                //进行7次与运算,得到其二进制形式及 1 的个数
                while(j>0) {
                    // 与运算
                    result[j] = (s[i] & n) == 0 ? 0 : 1;
                    if(result[j] == 1) {
                        sum++;
                    }
                    n = n << 1;
                    j--;
                }
    
                // 进行校验
                if((sum & 1) == 0) {
                    result[0] = 1;
                }
                for(int k=0; k<result.length; k++) {
                    System.out.print(result[k]);
                }
    
                result[0] = 0; //一次完成,重新置0
                System.out.println();
            }
        }
    
        public static void main(String[] args) {
            Scanner in = new Scanner(System.in);
            while(in.hasNext()) {
                String str = in.nextLine();
                Test(str.toCharArray());
            }
        }
    }
    
    
    展开全文
  • verilog简单奇校验

    千次阅读 2020-12-02 21:27:04
    介绍 ·奇偶校验:根据被传输的组二进制代码的数中“1”的个数是奇数或偶数来进行校验。...x是校验,使用奇校验,因为字节中有效数据中1的个数为4,所以x填1,是字节满足1的个数为奇数。.
    1. 介绍

    ·奇偶校验:根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这组代码中“1”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。 粘贴的

    1. 例如
      发送端传输字节8’bx0111010;x是校验位,使用奇校验,因为字节中有效数据位中1的个数为4位,所以x位填1,是字节满足1的个数为奇数。
    2. 快速确定校验位
      缩位异或运算符^, bits = 7’b0111010; 因为 ^bits = 0; 所以 x = 1’b1; 此处若bits中有5个1,^bits1 = 1; 那么x=1’b0;上图对缩减解释的好,剪切自http://www.techbulo.com/2830.html
    3. 接收端奇校验
      对接收的字节进行缩减异或,若为1则正确,0位错误。
    4. verilog代码
    //odd check
    //result 1 is correct
    module parity_check_top(
    input	wire	[7:0]	bits,
    output  wire    		odd_error
    );
    assign odd_error = ^bits;
    endmodule
    
    
    
    //add parity bit
    module gen_odd_bit_for7(
    input	wire	[6:0]	bits,
    output	wire	[7:0]   parity
    );
    assign parity = (^bits == 1 ) ? {1'b0,bits}:{1'b1,bits};
    endmodule
    
    展开全文
  • 、偶校验原理

    千次阅读 2019-03-20 22:04:03
    Ø校验的生成方法 Ø奇校验:确保整个被传输的数据中“1”的个数是奇数个,即载荷数据中“1”的个数是奇数个时校验填“0”,否则填“1”; Ø偶校验:确保整个被传输的数据中“1”的个数是偶数个,即载荷数据中...
  • 10ISBN校验位的计算方法:(模数11 余数 0-10 差数 1-11 校验位:0-9, x(差数为10))以ISBN 7-81090-021-?为例,其计算如下1) 取ISBN前9数字7 8 1 0 9 0 0 2 12) 取各位数字所对应的加权值(10~2)10 9 8 7 6 5 4 3 ...
  • 含义是奇校验:所有传送的(含字符的各位和校验的1的个数为奇数.如:8数据:0110101 1的个个数为偶数,我们加一个1,变为奇数,所以校验为1.如:8数据:0110001 1的个个数为奇数,我们加一个0仍为奇数,所以校验为...
  • 奇偶校验位

    千次阅读 2020-11-01 08:48:58
    在数据传输前附加一位奇校验位,用来表示传输的数据中"1"的个数是奇数还是偶数,为奇数时,校验位置为"0",否则置为"1",用以保持数据的奇偶性不变。例如,需要传输"11001110",数据中含5个"1",所以其奇校验位为"0...
  • 常用的数据校验方法

    千次阅读 2018-06-11 16:26:57
    1.什么是数据校验&nbsp; 通俗的说,就是为保证数据的完整性,用种指定的算法对原始数据计算出的个...实现方法:最简单的校验就是把原始数据和待比较数据直接进行比较,看是否完全一样这种方法是最安全最准...
  • 文章目录exercise: exercise: 给出两个编码1001101和 1010111的奇校验码和偶校验码: 设最高为校验,余7是信息,则对应的奇偶校验码为
  • 电路输入1个时钟周期宽度的输入数据产生有效脉冲strobe,输入数据din为8位,Strobe为高电平期间输入数据有效。 电路把输入的数据按从高到低的顺序依次从dout端发送出去。... 在发送完8位数据后发送一位奇校验位。
  • 奇偶校验位学习理解

    千次阅读 多人点赞 2020-09-15 19:35:46
    一个字节一般有8bit,若是需要进行奇偶校验需要添加一个码元,所以发送接收时是8位数据位,一位校验位。 奇偶校验就是指每次发送接收的每一帧数据加上校验码之后1的个数是奇数还是偶数 奇偶校验码是奇校验码和偶...
  • --------------------------------------------- -- 时间:2019-01-28 -- 创建人:Ruo_Xiao ...--------------------------------------------- 、目的 对数据传输的正确与否进行校验。...1、奇校验:让主体...
  • 其中,个偶校验使得数据中1的总数为偶数,而奇校验位使得1的总数为奇数。 对于个给定的系统,要么运行偶校验,要么运行奇校验,而不能同时使用这两者。 比如在进行串口传输时,我们要么定义数据为偶校验...
  • 根据〖中华人民共和国国家标准GB11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字...
  • 校验方法

    2016-11-06 23:13:06
    实现方法:最简单的校验就是把原始数据和待比较数据直接进行比较,看是否完全一样这种方法是最安全最准确的。同时也是效率最低的。 适用范围:简单的数据量极小的通讯。 应用例子:龙珠cpu在线调试工
  • 三种校验方法

    万次阅读 2016-11-05 19:54:15
    奇偶校验根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。...奇校验:就是让原有数据序列中(包括你要加上的一位)1的个数为奇数 10001
  • 常见的数据校验方法

    千次阅读 2017-07-28 15:01:01
    校验,是为保护数据的完整性,用种指定的算法对原始数据计算出的校验值。当接收方用同样的算法再算校验值,如果两次校验值一样,表示数据完整。   2. 最简单的校验 实现方法:将原始数据和待比较的...
  • 本文介绍个奇偶校验器的设计程序,该程序很简单,但是可以引申到很多小的细节。
  • 奇偶校验位:资料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验资料传送的正确性。 停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2位的高电平。 由于数据是在传输线上...
  • 奇偶校验

    2021-11-09 12:44:05
    1. 什么是奇偶校验码 英文为:Parity Check 跟前面提到过的CRC校验码...不同的是,它的校验位只有一位,要么是0,要么是1。并且它的校验码还可以放在码流的前面。 如下图。 例如下图有5组原始码,校验位的计算方法
  • (异或)偶(同或)校验

    千次阅读 2020-03-16 12:15:19
    奇偶校验: 根据被传输的组二进制代码的数中"1"的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。 数学运算(异或和同或): ...
  • 最近公司系统需要对接开发第三方的设备,而对方的...这次厂家的串口使用的是奇校验,由于之前没有接触过串口通讯,在搜了一片文章后,就按照里面的内容去做了,最后也能收到东西,但是随后的解析里面是一塌糊涂。后...
  • 校验码 奇偶校验 海明码校验

    千次阅读 2020-06-28 17:07:10
    奇偶校验(Parity Check)是种校验代码传输正确性的方法。根据被传输的组二进制代码的数中"1"的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门...
  • 这种方法通过在编码中增加一位校验码来使编码中1的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变为2。 通俗的说 奇校验:原始码流+校验位 总共有奇数个1 偶校验:原始码流+校验位 总共有偶数个1 还是不懂...
  • 奇偶校验器设计的.doc

    千次阅读 2021-01-12 00:07:59
    学生姓名:所属院系:专 业:班 级:学 号:完成日期:本科生课程设计任务书班 级: 姓 名:设计题目:基于可编程逻辑器件的四奇偶校验器设计要求完成的内容:1.设计出个奇偶校验逻辑电路,当四位数中有奇数个1时...
  • 奇校验:原始码+1校验,总共有奇数个1; 偶校验:原始码+1校验,总共有偶数个1。 从异或的功能(有奇数个1时,输出为1),可知可以用异或电路实现奇偶校验的功能。以8421码的偶校验为例 校验码生成电路:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,085
精华内容 8,834
关键字:

一位奇校验方法