我将研究一个需要为特定指令集编写模拟器的项目(可能不适用于真正的处理器)。优选地,该模拟器将类似于用于MIPS ISA的SPIM模拟器。它将显示所有寄存器,存储器位置等的内容,并让我逐步执行指令。是否有用于编写模拟器的标准步骤集?从哪里开始?
我知道Java和C ++,我完成了两门计算机体系结构课程并在一个3人团队中工作。
答案 0 :(得分:4)
第一步是为CPU创建汇编程序。汇编程序与模拟器没有任何关系,在我看来,模拟器中的汇编解析器会不必要地复杂化。
使用单独的汇编程序可以保持模块化,它允许模拟器将简单的二进制代码作为输入 - 您甚至可以单独创建,验证和修改代码。它也符合现行做法。
对于您的模拟器,在Google上搜索writing a CPU simulator
时会有this作为第一个点击,并且会有更多有趣的结果。
答案 1 :(得分:4)
答案 2 :(得分:3)