计算机硬件 = 数字电路

数字电路模拟器 (Logisim)

  • 基本构件:wire, reg, NAND
  • 每一个时钟周期
    • 先计算 wire 的值
    • 在周期结束时把值锁存至 reg

“模拟” 的意义

  • 程序是 “严格的数学对象”
  • 实现模拟器意味着 “完全掌握系统行为”

计算机硬件的状态机模型

不仅是程序,整个计算机系统也是一个状态机

  • 状态:内存和寄存器数值
  • 初始状态:手册规定 (CPU Reset)
  • 状态迁移
    • 任意选择一个处理器 cpu
    • 响应处理器外部中断
    • 从 cpu.PC 取指令执行

到底谁定义了状态机的行为?

  • 我们如何控制 “什么程序运行”?