整个代码和文章来自大神。在大神的这篇文章中,用非常通俗易懂的语言,教你如何从 0 开始写一个能运行汇编二进制文件的虚拟机。通过此次学习,我学习到:
- 虚拟机的本质到底是什么
- 如何用 C 实现一个能运行汇编二进制文件的虚拟机
在 code
文件夹中我实现了自己的 toy_vm
。在 tutorial
文件夹中翻译了文章。
大神的教程,讲得很透彻。只要跟着文章的思路,学习大神的代码。就能写出一个能运行 2048 的虚拟机
最后英文水平有限,我尽量翻译,大家不要嫌弃,有错误帮忙指出来。谢谢!!!
- 介绍(Introduction)
- LC-3 架构 (LC-3 Architecture)
- 汇编举例(Assembly Examples)
- 执行程序(Executing Programs)
- 实现指令(Implementing Instructions)
- 实现所有的指令(Instruction Cheat Sheet)
- 陷入例程(Trap Routines)
- 实现所有的陷入例程(Trap Routine Cheat Sheet)
- 加载程序(Loading Programs)
- 内存映射寄存器(Memory Mapped Registers)
- 平台细节(Platform Details)
- 运行虚拟机(Running the VM)
- 备用的 c++ 技术(Alternate C++ Technique)
- 相关项目(Related Projects)
如果觉得不错,点个 star 吧。
然后我们交个朋友?