摘要:
从本篇开始,我将开辟一个原创系列来介绍JIT动态编译器的原理以及用一个小例子来阐述实现方法。例子实现主要在WINDOWS平台下,基于VC,主要需要读者了解函数指针的使用,以及一些简单的汇编知识。在此希望各路高手观赏和指正! JIT动态编译器主要用来实现虚拟机,方式是CPU指令转译。由于CPU是计算机的核心,为了简单起见,设计一个简单的8位CPU,并实现一个虚拟机来转译到PC平台。CPU被设计成8位是因为可以避免大端和小端问题,使得目的更加明确。 由于这个CPU是虚拟的,这样就不要求关心流水线什么的,只需要关注CPU寄存器和CPU指令集就足够了。为了简单起见,不定义通用寄存器,只定义PC寄存器.
阅读全文