DynASM 是一个在 C 或 C++ 环境下创建汇编器和 JIT 编译器的预处理器和微型运行时库.
DynASM 为创建 LuaJIT 而编写, 并且作为其中的一部分维护. LuaJIT 1 时用作 JIT. 而现如今 LuaJIT 2 不作为 JIT 使用, 因为 LuaJIT 2 的解释器是手写汇编实现的, DynASM 被作为强大的跨平台汇编器.
运行以下命令获取最新版本的 DymASM:
git clone http://luajit.org/git/luajit-2.0.git cd luajit-2.0/dynasm
DynASM 官方文档 太斯巴达了, 很难通过这个入门 DynASM. 当你把 DynASM 用做 JIT 时, 这篇非官方文档的 教程 是个很好的开始. 一旦你熟悉了之后, 参考文档 和 指令集列表 可以让你掌握更多的知识.
DynASM 支持 x86, x64, ARM, PowerPC, MIPS 指令集, 不过本非官方文档只覆盖了 x86 and x64.
本文档的中文翻译还在进行中, 详情见:https://github.com/karminski/dynasm-doc