10.17课上(七段显示器,递归异或与电路)

异或的递归与数电实现

用二选一选择器实现异或函数

在异或当中,如果有一项为0,就可以把那一项消掉;如果有一项为1,就是把剩下的所有项运算完的结果取反

(由此在算法当中可以采用递归解决)

当w1为0时,就直接把w1消掉,对剩余项无影响;

当w1为1时,把后面运算的结果取反

当w2为0时,就直接把w2消掉,只剩下w3,根据前面w1,w2的情况确定是正还是反

如果前面有0个1,就是都直接消掉,没影响,输出为w3

有1个1时,取反一次,输出为w3的反

有2个1时,取反两次,输出为w3

两个2-4译码器和一个1-2译码器构建为3-8译码器

四个2-4译码器和一个2-4译码器构建为4-16译码器

代码转化器(七段显示器)

译码器和编码器都是将一种类型的输入编码转化成另一种不同的输出编码

3-8译码器将输入的二进制 转为独热码(3位转为8位)

8-3将独热码转为二进制(8变3)

十六进制信息代码转化器,将一个十六进制转为人能看懂的十六进制数

超过十的部分为a,b,c,d,e.f(10~15)

输入通过代码转换器将信号转化为显示器要显示的信号

一个十六进制数要4位二进制,能表示0~15.

通过转化器转为图形化信号,让人能看懂。

比如0000,在七段显示器中的信号为只有g不亮,其他都亮,效果就是一个0

0001,就是只有b,c亮,显示为1

1000,全都亮,表示为8

相关推荐
Mr_Xuhhh1 小时前
YAML相关
开发语言·python
Promise4852 小时前
贝尔曼公式的迭代求解笔记
笔记·算法
咖啡の猫2 小时前
Python中的变量与数据类型
开发语言·python
前端达人2 小时前
你的App消息推送为什么石沉大海?看Service Worker源码我终于懂了
java·开发语言
汤姆yu2 小时前
基于springboot的电子政务服务管理系统
开发语言·python
全栈师2 小时前
C#中控制权限的逻辑写法
开发语言·c#
S***q1922 小时前
Rust在系统工具中的内存安全给代码上了三道保险锁。但正是这种“编译期的严苛”,换来了运行时的安心。比如这段代码:
开发语言·后端·rust
打点计时器3 小时前
matlab 解决wfdb工具使用本地数据集报错
开发语言·matlab
zmzb01033 小时前
C++课后习题训练记录Day38
开发语言·c++
夏霞3 小时前
c# 使用vs code 创建.net8.0以及.net6.0 webApi项目的教程
开发语言·c#·.net