tiny vm 一个基于寄存器的微型虚拟机
微型虚拟机TinyVM 是一个基于寄存器的简易虚拟机,使用 C语言 编写 ( tinyvm.c ),其字节码汇编器则采用 Python 实现 ( tas.py )。TinyVM 在 32位地址空间 ( 0x00000 - 0x0000FFFF ) 中有 4个寄存器 ( $0 - $3 ) 和 64k内存。每条指令都以单个 64位字 编码。虽然寄存器数量和内存大小是在编译时定义的,但由于只支持 32位寻址 和 8位寄存器,所以分配超过 4GB内存 或 256个寄存器 是没有意义的。关于 MIPS寄存器 的更多信息,你可以参考 MIPS寄存器文件设计 和 MIPS通用寄存器详细资料。如果你对虚拟机设计有更深入的兴趣,可以查看 虚拟机设计模拟CPU寄存器等。
已实施的指令大致基于 MIPS 架构,更多关于 MIPS和ARM寄存器 的对比,可以查看 ARM MIPS寄存器对比。这些资源将为你提供更全面的理解,帮助你在不同的寄存器设计中做出明智的选择。
下载地址
用户评论