您好,欢迎来到好走旅游网。
搜索
您的当前位置:首页奇偶校验的Matlab实现

奇偶校验的Matlab实现

来源:好走旅游网
奇偶校验的matlab实现代码

奇偶校验:

最常用的检错码是就校验码,他在原编码基础上增加一位奇偶校验位,使得整个编码的“码重”固定为奇数(奇校验)或偶数(偶校验)。其中“码重”即编码中“1”的个数。

奇偶校验能发现奇数个错,而在计算机中发生一个差错的概率远大于两个差错,绝大多数是出现一个差错,这就使得奇偶校验具有很高的实用性;而因为奇校验不能产生全零的代码,故常用的为“偶校验”。

奇偶校验matlab实现:

下面有两个奇偶校验的MATLAB实现代码,其功能基本一致,第一个是可以选择奇校验或偶校验,第二个则是直接分别输出奇校验和偶校验,其中源码的行列自由输入,随机生成0-1矩阵即为源码,校验码则为附加的最后一列。

%奇偶校验1的源代码

clc;clear;

m=input('请输入行:'); n=input('请输入列:'); A=randint(m,n); A

for k=1:2

sum=zeros(1,m);

l=input('请选择奇偶校验(0、偶校验 1、奇校验):'); for i=1:m for j=1:n

sum(i)=sum(i)+A(i,j); z=sum(i); end

if rem(z,2)==l A(i,n+1)=0; else

A(i,n+1)=1; end

end A end

%奇偶校验2的源代码

clc;clear;

m=input('请输入行:'); n=input('请输入列:'); A=randint(m,n); A

for k=1:2

sum=zeros(1,m); for i=1:m for j=1:n

sum(i)=sum(i)+A(i,j); z=sum(i); end

if rem(z,2)==k-1 A(i,n+1)=0; else

A(i,n+1)=1; end end if k==1

fprintf('偶校验:') else

fprintf('奇校验:') end A end

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- haog.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务