Day4 — 逻辑组合电路与序向逻辑电路

有了逻辑闸当作建构的基本要素之後,接下来要来探讨几个 CPU 的基本结构,我们需要让它们能够做基本运算以及储存资料。

这部分可以分为两大电路:组合逻辑电路以及序向逻辑电路。

  • 逻辑组合电路:输出只与当下的输入有关系
  • 序向逻辑电路:输出和当下的输入与前一个输入状态有关,具有记忆功能

这样一来我们就可以做出全加器、暂存器、多工器、记忆体等 CPU 必要的电路。

全加器

计算单元(ALU),可以说是 CPU 最重要的运算单元。最简单的数学运算为加法,以两个输入(A, B)为例,加法可以用逻辑闸模拟。将加法拆分为「和」与「进位」,可以得到下面的表格:

https://ithelp.ithome.com.tw/upload/images/20210917/201035659GdjCClrQx.jpg

仔细观察可以发现,其实「和」就是互斥或(XOR);而「进位」则是和(AND)。既然可以用逻辑闸模拟,那麽我们就可以用电路做出来。

暂存器

暂存器的运作可以使用 flip-flop 电路达成。CPU 需要时脉(clock)当作信号执行指令,每一个时脉(或每一个周期),电路都可以执行一个指令,频率越高执行的速度越快。

flip-flop 电路最大的特色在於只有在每次 clock 在 rising 阶段时才会运作,确保了同一个周期当中资料会是一致的。

记忆体

透过 CMOS 可以组成记忆体。


<<:  Day-02 JavaScript资料型别(1)

>>:  day2_arm 与 x86 的意思与特色

[day-12] 一切的基础! Python "运算式与算符"的运用(Part .2)

比较算符   比较算符可大致列出以下几种常用的:   1. 大於(>)、大於等於(>=)...

JS 物件属性:属性的特徵 DAY68

Object.defineProperty 定义物件属性,调整属性特徵(请牢记!!) // 定义物件...

Day20-React 简易动画篇-上篇

这篇要来介绍一下一些能用 React 实现一些动画效果的函式库,首先介绍的就是本篇的主角 React...

JSDC 2020 回顾 - AMP 最佳实践

AMP & the missing parts Google doesn't tell 讲...