1.汉明码编码提示:
输入信息码a3,a2,a1,输出(7,3)汉明码b7,b6,b5,b4,b3,b2,b1。
首先,输入信息码a3,a2,a1,
然后,根据式(2.1.1),就可以得到校验位与信息位之间的对应关系,使用异或运算,即:
最后,将算好的校验位与原来输入的信息位一起输出,这样,编码程序就算完成了。
汉明码译码提示:根据(7,3)汉明码的译码原理,首先画出程序设计的流程图:
译码流程图
首先,输入7位汉明码a1a2a3a4a5a6a7
然后,根据这7位码a1a2a3a4a5a6a7,计算校正子S1,S2,S3,S4的值,根据式(2.2.2)可知校正子S与(7,4)汉明码各位之间的关系,
第三,要判定校正子与0的关系,使用if语句,若等于0,则表示没有错误;若不为0,则表示其中有一位出错。根据上式,可以得到校正子S与错误图样E之间的关系,才用case语句,
最后,将没有错误的(7,3)汉明码或已经纠正1个错误的(7,3)汉明码输出,这样译码程序就完成了。
S1=a1+a3+a4
S2=a1+a2+a3+a5
S3=a1+a2+a6
S4=a2=a3=a7
急啊!!!!!那位大侠帮忙翻译成C语言!!!!