🕺作者: 主页
我的专栏 C语言从0到1 探秘C++ 数据结构从0到1 探秘Linux 😘欢迎关注:👍点赞🙌收藏✍️留言
🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要,有问题可在评论区提出,感谢支持!!!
文章目录
- 第1关:汉字国标码转区位码实验
- 相关概念
- 实际操作
- 第2关:汉字机内码获取实验
- 汉字机内码获取方式
- 实际操作
- 第3关:偶校验编码设计
- 相关概念
- 实际操作
- 第4关:偶校验解码电路设计
- 第5关:16位海明编码电路设计
- 第6关:16位海明解码电路设计
- 第7关:海明编码流水传输实验
- 第8关:16位CRC并行编解码电路设计
- 第9关:CRC编码流水传输实验
第1关:汉字国标码转区位码实验
相关概念
- 区位码
- 国标码
- 国标码和区位码之间的转换
已知 国标码=区位码(十六进制)+2020H
区位码=国标码(十六进制)- 2020H
= (需要使用加法器所以需要转换为补码的形式) 国标码(十六进制)+ (FFFF-2020H+0001H) 取反加1
=国标码(十六进制)+ dfe0H
实际操作
注意:根据视频中的指向,观察参数是否一致
需要注意的是,如果数据位宽不同,可以右击显示属性,将其修改(其他组件有所不同的都可以试试
将data.circ文件以记事本打开。将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)
第2关:汉字机内码获取实验
汉字机内码获取方式
- 转换网站
- 自己运行程序
#include<stdio.h>
#include<string.h>
int main()
{unsigned char temp[]="12345ABCDEFGabcdefg轻轻的我走了,正如我轻轻的来;我轻轻的招手,作别西天的云彩。那河畔的金柳,是夕阳中的新娘;波光里的艳影,在我的心头荡漾。"; for (int i=0;i<strlen((const char *)temp);i++){printf("%x",temp[i]);if (i%2) printf(" ");}
}
实际操作
- 将汉字显示拖出来
- 右击图标查看汉字显示
- 将之前获取的码的结果结果复制到
- 方式:右击编辑存储内容
- 根据页面粘贴数据即可
- 然后点击电路仿真,点击时钟连续,每次测试前都要点击电路复位,时钟滴答频率可以修改(字符跳动的速度)
- 最后的效果如下
- 将data.circ文件以记事本打开,将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)
第3关:偶校验编码设计
相关概念
奇偶校验码是通过增加一位检验位来使编码中取值为1的位数总是为奇数或者为偶数。
实际操作
- 如下所示,注意将异或门的引脚修改为16
- 将data.circ文件以记事本打开。将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)
- 后面由于操作相似就不再录视频
第4关:偶校验解码电路设计
和上面一样可以只用一个异或门也可以使用多个,图按照下面画即可
第5关:16位海明编码电路设计
第6关:16位海明解码电路设计
第7关:海明编码流水传输实验
第8关:16位CRC并行编解码电路设计