本文目录 [-点此收起] 1、背景 2、寻址模式 3、合法的值(64位) 4、Mod R/M(32位寻址) 5、SIB(32位寻址) 6、示例 6.1、准备工作 6.2、计算过程 7、结语 1、背景 仅针对JVM的模板解释器: 如何根据opcode和寻址模式,将bytecode生成汇编码。 本文的示 ...
分类:
其他好文 时间:
2016-05-09 08:28:48
阅读次数:
247
虽然说解释执行模式是逐字逐句翻译给目标平台运行的,但这样的过程未免太过缓慢,如果能把字节码说的话做成纸条,运行时只要把对应的纸条交给目标平台就可以了,这样,执行速度就会明显提升。JVM的Hotspot虚拟机的模板解释器就是用这种方法来解释执行的。在开始分析之前,先了解一下JVM的执行方式。 (...
分类:
其他好文 时间:
2015-10-27 17:13:08
阅读次数:
150
观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。本文以AbstractCursor为例子,展开分析。观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。1...
分类:
其他好文 时间:
2015-08-26 15:36:08
阅读次数:
131
针对JVM的模板解释器,研究:
字节码的resolve过程。...
分类:
其他好文 时间:
2015-08-03 06:46:18
阅读次数:
130
针对JVM的模板解释器,探讨:
如何根据opcode和寻址模式,将bytecode生成汇编码。...
分类:
其他好文 时间:
2015-08-03 06:43:31
阅读次数:
159
解释器是Java虚拟机非常重要的一部分,它的工作就是把字节码转化为机器码并运行。Hotspot中实现了两种具体的解释器,分别是模板解释器而C++解释器。同时在Hotspot的源码树中还保留着一种“字节码解释器”的古老解释器。这种解释器没有编译优化,效率比较低,本质上就是一个比较长的switch语句,针对不同的字节码执行不同的操作。这些操作直接以C/C++语言的形式表现出来,随着项目的编译一起形成了...
分类:
编程语言 时间:
2015-03-02 16:55:36
阅读次数:
205
观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。本文以AbstractCursor为例子,展开分析。观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。1...
分类:
移动开发 时间:
2014-11-06 12:50:51
阅读次数:
329
观察者模式,是一种非常常见的设计模式,在很多系统中随处可见,尤其是涉及到数据状态发生变化需要通知的情况下。本文以AbstractCursor为例子,展开分析。观察者模式,Observer Pattern,是一个很实用的模式,本人曾经接触到的各种平台以及曾经参与项目中打印模板解释器中都用到了此模式。1...
分类:
移动开发 时间:
2014-11-03 17:42:29
阅读次数:
255