什么是奇偶校验?怎么实现?

来源:百度知道 编辑:UC知道 时间:2024/06/07 18:49:50
在网络工程师里有奇偶校验码,我看了很久没看明白是什么意思.什么是奇偶校验码?奇偶校验是怎么实现的?很不明白,如果冲突产生的差错把校验码也给改了,那还怎么校验呢?希望哪位高手能给我一个解答!

奇偶校验用在数据传送里。数据传送时,最后一位为奇偶校验位。收发上方事先已经约定好进行奇校验还是偶校验。
比如传送0101这个二进制数,约定为奇校验。0101里面1的个数是偶数个,所以奇偶校验位为1,变成01011,这样1的个数就为奇数个。收到方就根据奇偶校验位判断数据有没有发送错误。
但是就跟你所说的,这个方法有缺陷,如果数据一下子错了两位,比如刚才的0101,发成了1001,错误就查不出来了。

利用c语言里的位操作符就可以实现了,
不知道你要多少个数,怎么输出的不好下。

void main()
{
unsigned char x1=5,
x2=7,
x3=46,
x4=98;

//垂直 位计算
unsigned char shuizhi= x1|x2|x3|x4;