8、Java虚拟机对象、方法和子程序指令的形式化规范

Java虚拟机对象、方法和子程序指令的形式化规范

1 引言

Java虚拟机(JVM)是一个平台无关的抽象计算机器,包含一个指令集并在各种内存区域上运行。JVM通常用作编程语言Java实现中的中间机器。官方的JVM规范(OJVMS)定义了指令的语法,并描述了相关内存区域中指令的语义。本章为对象、方法和子程序的指令提供形式语义,指定了一个指令子集。形式规范基于OJVMS、Java语言规范(OJLS)以及太阳微系统公司的JDK 1.1.4实现,特别是字节码验证器。该规范描述了指令在相关内存区域的运行时行为,作为状态转换,并将指令的大多数结构和链接约束作为静态类型系统。该类型系统包括字节码验证器的核心,并类似于数据流分析。

2 指令子集

本章考虑了以下基本指令:
- 对象和整型的加载和存储指令
- 对象创建指令
- 操作数栈管理指令
- 控制转移指令
- 所有方法调用指令
- 几个返回指令
- 用于实现最终子句的 jsr ret 指令

2.1 对象和整型的加载和存储指令

对象和整型的加载和存储指令是JVM中最基本的指令之一。这些指令用于将对象引用或整型值从内存加载到操作数栈中,或将它们从操作数栈存储到内存中。具体的指令包括:

  • aload astore :用于加载和存储对象引用
  • iload istore :用于加载和存储整型值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值