【头歌·计组·自己动手画CPU】一、计算机数据表示(讲解版) 【计算机硬件系统设计】

🕺作者: 主页

我的专栏
C语言从0到1
探秘C++
数据结构从0到1
探秘Linux

😘欢迎关注:👍点赞🙌收藏✍️留言

🏇码字不易,你的👍点赞🙌收藏❤️关注对我真的很重要,有问题可在评论区提出,感谢支持!!!

文章目录

  • 第1关:汉字国标码转区位码实验
    • 相关概念
    • 实际操作
  • 第2关:汉字机内码获取实验
    • 汉字机内码获取方式
    • 实际操作
  • 第3关:偶校验编码设计
    • 相关概念
    • 实际操作
  • 第4关:偶校验解码电路设计
  • 第5关:16位海明编码电路设计
  • 第6关:16位海明解码电路设计
  • 第7关:海明编码流水传输实验
  • 第8关:16位CRC并行编解码电路设计
  • 第9关:CRC编码流水传输实验

image.png

第1关:汉字国标码转区位码实验

相关概念

  • 区位码

image.png

  • 国标码

image.png

  • 国标码和区位码之间的转换

image.png

已知 国标码=区位码(十六进制)+2020H
区位码=国标码(十六进制)- 2020H
= (需要使用加法器所以需要转换为补码的形式) 国标码(十六进制)+ (FFFF-2020H+0001H) 取反加1
=国标码(十六进制)+ dfe0H

实际操作

注意:根据视频中的指向,观察参数是否一致
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

需要注意的是,如果数据位宽不同,可以右击显示属性,将其修改(其他组件有所不同的都可以试试
image.png

将data.circ文件以记事本打开。将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)
image.png
image.png

第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(" ");}
}

实际操作

  1. 将汉字显示拖出来

image.png

  1. 右击图标查看汉字显示

image.png

  1. 将之前获取的码的结果结果复制到

image.png

  1. 方式:右击编辑存储内容

image.png

  1. 根据页面粘贴数据即可

image.png

  1. 然后点击电路仿真,点击时钟连续,每次测试前都要点击电路复位,时钟滴答频率可以修改(字符跳动的速度)

image.png

  1. 最后的效果如下

汉字国标码转区位码2.gif

  1. 将data.circ文件以记事本打开,将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)

第3关:偶校验编码设计

相关概念

奇偶校验码是通过增加一位检验位来使编码中取值为1的位数总是为奇数或者为偶数。

实际操作

  1. 如下所示,注意将异或门的引脚修改为16

3.gif

  1. 将data.circ文件以记事本打开。将其中的内容全选复制粘贴到头歌即可(头歌上面的代码删掉)
  2. 后面由于操作相似就不再录视频

第4关:偶校验解码电路设计

和上面一样可以只用一个异或门也可以使用多个,图按照下面画即可
image.png

第5关:16位海明编码电路设计

image.png
image.png

第6关:16位海明解码电路设计

image.png

第7关:海明编码流水传输实验

image.png

第8关:16位CRC并行编解码电路设计

image.png
image.png

第9关:CRC编码流水传输实验

image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/670520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

五、Redis之发布订阅及事务管理

5.1 发布订阅 5.1.1 Redis 发布订阅 (pub/sub) 是一种消息通信模式&#xff1a;发送者 (pub) 发送消息&#xff0c;订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 &#xff0c;以及订阅这个频道的三个客户端 —— client1 、client2 …

力扣题目-1633.各赛事的用户注册率

力扣题目-1633.各赛事的用户注册率 仅作学习&#xff0c;不作他用 题干 用户表&#xff1a; Users Column NameTypeuser_namevarcharuser_idint user_id 是该表的主键(具有唯一值的列)。 该表中的每行包括用户 ID 和用户名。 注册表&#xff1a; Register Column NameTy…

C入门番外篇——C, Are you OK?

今日路上看到一个车牌&#xff0c;52U0K&#xff0c;感觉很有意思&#xff0c;如果做一下简单的翻译就是&#xff0c;“我爱你&#xff0c;好么&#xff1f;” 这样让我脑子中闪现了这样的一个画面&#xff1a;“一个男生追一个女生&#xff0c;看到女生不怎么搭理自己的样子&a…

Spring核心基础:全面总结Spring中提供的那些基础工具类!

内容概要 Spring Framework 提供了众多实用的工具类&#xff0c;这些工具类在简化开发流程、提升代码质量和维护性方面发挥了重要作用&#xff0c;以下是部分关键工具类的总结及其使用场景&#xff1a; StringUtils&#xff1a;不仅提供了基础的字符串操作&#xff0c;如拼接…

转融通业务是什么?好处和弊端是什么?

转融通业务是指证券金融公司借入证券、筹得资金后&#xff0c;再转借给证券公司&#xff0c;为证券公司开展融资融券业务提供资金和证券来源&#xff0c;包括转融券业务和转融资业务两部分。从证券金融公司角度看&#xff0c;向证券公司提供资金和证券供其开展融资融券业务&…

Redis中的缓存穿透、雪崩、击穿的原因以及解决方案(详解)

一、概述 ① 缓存穿透&#xff1a;大量请求根本不存在的key&#xff08;下文详解&#xff09; ② 缓存雪崩&#xff1a;redis中大量key集体过期&#xff08;下文详解&#xff09; ③ 缓存击穿&#xff1a;redis中一个热点key过期&#xff08;大量用户访问该热点key&#xff0c;…

Unity类银河恶魔城学习记录3-2 Entity源代码 P48

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释&#xff0c;可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Entity.cs using System.Collections; using System.Collections.Generic;…

2.6 作业

第五章 静态成员与友元 一、填空题 1、一个类的头文件如下所示&#xff0c;num初始化值为5&#xff0c;程序产生对象T&#xff0c;且修改num为10&#xff0c;并使用show()函数输出num的值10。 #include <iostream.h> class Test { private: static int num; public: Tes…

Android13 系统源码适配安装可卸载的三方apk应用

Android13 系统源码适配安装可卸载的三方apk应用 文章目录 Android13 系统源码适配安装可卸载的三方apk应用一、前言二、Android 系统运行后默认安装三方apk实现1、Android 系统默认安装三方apk实现主要思路2、Android 系统默认安装三方apk具体实现&#xff08;1&#xff09;准…

chartGPT网站

在人工智能日益发展的今天&#xff0c;大语言模型成为了我们生活与工作中不可或缺的一部分。它们能够帮助我们处理文本、回答问题、生成创意内容&#xff0c;甚至协助编程和数据分析。然而&#xff0c;由于网络环境的复杂性&#xff0c;找到一个既稳定又快速的大语言模型网站并…

C++ 中template 模版

C模板&#xff08;Templates&#xff09;主要是编写泛型代码&#xff0c;在编译时为不同数据类型生成相应的函数或类实例&#xff0c;主要有函数模板&#xff0c;类模板 函数模板 #include <iostream> #include <string>using namespace std;template<typenam…

OLAP技术的发展及趋势简述

这里写自定义目录标题 历史发展基于电子表格的数据分析基于传统数据库的数据分析基于大数据的数据分析 当下的现状OLAP技术的分类MOLAPROLAPHOLAP 主流的OLAP引擎新技术的普及内存向量计算列式数据存储及交换增量查询多源融合计算下推物化视图 发展趋势智能化分析多源融合和自动…

C Primer Plus(第六版)15.9 编程练习 第3题

#include <stdio.h> void getbit(int num); int main() { getbit(127); return 0; } void getbit(int num) { int result; int sum0; int mask1; result num; while(result!0) { if((result & mask) 1) sum; result >> 1; } printf("%d打开的位有%d个…

【学习笔记】树上差分总结(点差分/边差分)

一.树上差分的基本概念 1.树上差分的定义 树上差分&#xff0c;顾名思义&#xff0c;意思就是在树上做差分。 至于什么是差分呢&#xff1f;如果不会的同学&#xff0c;可以先看看我的这篇博客:一维,二维差分の详解&#xff08;简单易懂&#xff09;_一维差分-CSDN博客 2.树…

智能小程序框架——模块化语法参考(ESModule 语法、CommonJS 语法)

小程序的逻辑代码使用 JavaScript 语法进行编写。可以将一些公共的代码抽离成为一个单独的 js 文件&#xff0c;作为一个模块&#xff0c;以实现逻辑共享复用。主要有 ESModule 和 CommonJS 两种形式。一个项目内应保持使用一种语法形式&#xff0c;否则可能出现导入异常的情况…

SpringBoot中使用Spring自带线程池ThreadPoolTaskExecutor与Java8CompletableFuture实现异步任务示例

场景 关于线程池的使用&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)_executorservice executorservice executors.newfix-CSDN博客 Java中创建线程的方式…

springboot(ssm考试信息报名系统 在线考试报名系统Java系统

springboot(ssm考试信息报名系统 在线考试报名系统Java系统 开发语言&#xff1a;Java 框架&#xff1a;springboot&#xff08;可改ssm&#xff09; vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.7&a…

React+echarts实现排名+自动滚动+X轴自定义titleTop

1、效果 2、环境准备 1、react18 2、antd 4 3、代码实现 原理&#xff1a;自动滚动通过创建定时器动态更新echar的dataZoom属性startValue、endValue&#xff0c;自定义tooltip通过监听echar的鼠标移入移出事件&#xff0c;判断tooltTip元素的显隐以及位置。 /*** 收集完成…

【Java EE】----Spring框架创建和使用

1.Spring框架创建 创建一个maven项目 添加Spring框架支持 <dependencies> 上下文<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.3.RELEASE</version></depende…

【网站项目】038汽车养护管理系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…