逻辑门 - Dmux (nand2tetris)
Logic Gates - Dmux (nand2tetris)
我刚开始学习 nand2tetris 课程!在第一个项目中,要求从"Not"开始构建"Nand"的逻辑门。好吧,一开始很容易,建立或,和,异或。 但后来"Multiplexor"。我花了一段时间才决定使用哪些门... 然后我发现了一种叫做 "Canonical Representation" 的新技术,问题很容易解决。
但是问题来了:解复用器!!!它有两个输出,所以我被卡住了,如何使用 Canonical Representation 实现这两个输出门?
^ 以上解决了^
我还有一个更普遍的问题。 你们是如何构建这些门的! 是否可以从逻辑上实现多路复用器门?
假设您已经构建了基本的逻辑门(与、或、异或...),那么可以使用其中三个组件构建多路分解器。
考虑给你的状态描述:
/**
* Demultiplexor:
* {a, b} = {in, 0} if sel == 0
* {0, in} if sel == 1
*/
简单地构建两个电路,一个计算a,一个计算b。您可以将输入(in 和 sel)连接到两个电路。
我刚开始学习 nand2tetris 课程!在第一个项目中,要求从"Not"开始构建"Nand"的逻辑门。好吧,一开始很容易,建立或,和,异或。 但后来"Multiplexor"。我花了一段时间才决定使用哪些门... 然后我发现了一种叫做 "Canonical Representation" 的新技术,问题很容易解决。
但是问题来了:解复用器!!!它有两个输出,所以我被卡住了,如何使用 Canonical Representation 实现这两个输出门?
^ 以上解决了^
我还有一个更普遍的问题。 你们是如何构建这些门的! 是否可以从逻辑上实现多路复用器门?
假设您已经构建了基本的逻辑门(与、或、异或...),那么可以使用其中三个组件构建多路分解器。
考虑给你的状态描述:
/**
* Demultiplexor:
* {a, b} = {in, 0} if sel == 0
* {0, in} if sel == 1
*/
简单地构建两个电路,一个计算a,一个计算b。您可以将输入(in 和 sel)连接到两个电路。