计算机指令集架构模拟:从 TC2 到 TC3
1. TC2 单地址累加器机器
TC2 是一个单地址累加器机器,其指令集设计包含了操作码、模式和方向等信息。在执行程序时,当操作码为 7 时,表示 STOP 指令,程序将停止运行。以下是相关代码:
elif OpCode == 7: # Test for STOP
run = False # If STOP then clear run flag to exit while loop and stop
运行程序时,会输出一系列执行信息,例如:
PC 0 OpCode 0 Mode = 1 Dir = 0 mem [4, 5, 0] z 0 Acc 4 LDA/STR
PC 1 OpCode 1 Mode = 1 Dir = 0 mem [4, 5, 0] z 0 Acc 9 ADD
2. 增强 TC2 模拟器
TC2 最初有 3 位操作码,提供 8 种操作。但通过对指令集的优化,可以增加指令数量。
- 调整操作码位数 :方向位 Dir 仅用于 LDA/STA 指令。若将其从操作码字段移除,可得到 4 位操作码,提供 16 条指令。此时,LDA 和 STA 成为独立指令,原 8 指令计算机将有 9 条指令,还剩余 7 个未分配的操作码。
- 扩展加法操作 :通过扩展加法操作,如 ADDA(加到累加器)和
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



