一,背景 最近突然想研究语言虚拟机到底怎么运行的,于是我网上找了一些资料,稍微记录一下,让自己有一个映像,并不是为了自己写虚拟机。 二,原理[加载程序] while(true){ 取指令 解析指令 执行指令 } 这里也是本文的核心内容, 实际上虚拟机很简单, 遵循这样的模式: 读取: 从文件读取内容,解析生成指定集合等等 解码: 解析指定指令。【一条条执行,然后读取指令 push eax】 执行: 执行解码后的指令 【当读取这个指定,执行 压入一个eax 的值到栈顶】 三,参考资料 用 Lua 实现一个微型虚拟机-…