2020年3月27日

java虚拟机规范(se8)——java虚拟机的编译(二)

摘要: 3.3 算术运算 java虚拟机通常在操作数栈上进行算术运算(例外情况是iinc指令,它直接增加一个局部变量的值)。例如下面的align2grain()方法,它的作用是将int值对齐到2的指定次幂: int align2grain(int i, int grain) { return ((i + g 阅读全文

posted @ 2020-03-27 17:49 lfw123 阅读(226) 评论(0) 推荐(0) 编辑

java虚拟机规范(se8)——java虚拟机的编译(一)

摘要: 第三章 java虚拟机的编译 java虚拟机是设计用来支持java编程语言的。Oracle的JDK软件包含了一个将Java源代码编译成java虚拟机指令集的编译器,以及一个用于java虚拟机本身的运行时系统。了解编译器如何使用java虚拟机对编译器作者来说是有用的,同样也有助于理解java虚拟机本身 阅读全文

posted @ 2020-03-27 17:10 lfw123 阅读(471) 评论(0) 推荐(0) 编辑

java虚拟机规范(se8)——java虚拟机结构(六)

摘要: 2.11 指令集简介 java虚拟机指令由一个字节的操作码,后面跟着多个0个或多个操作数组成,操作码描述了执行的操作,操作数提供了操作所需的参数或者数据。许多指令没有操作数只包含一个操作码。 如果忽略异常处理,那java虚拟机使用下面的伪代码循环即可有效工作: 1 do{ 2 自动计算pc然后获取p 阅读全文

posted @ 2020-03-27 16:06 lfw123 阅读(202) 评论(0) 推荐(0) 编辑

导航