原文:第26篇-虚拟机对象操作指令之putstatic

之前已经介绍了getstatic与getfield指令的汇编代码执行逻辑,这一篇介绍putstatic指令的执行逻辑,putfield将不再介绍,大家可以自己去研究,相信大家有这个实力。 putstatic指令为指定类的静态域赋值。字节码指令的格式如下: putstatic indexbyte indexbyte 无符号数indexbyte 和indexbyte 构建为 indexbyte lt ...

2021-09-17 09:23 0 250 推荐指数:

查看详情

第24-虚拟机对象操作指令之getstatic

Java虚拟机规范中定义的对象操作相关的字节码指令如下表所示。 0xb2 getstatic 获取指定类的静态域,并将其值压入栈顶 0xb3 putstatic 为指定的类的静态域赋值 ...

Wed Sep 15 17:39:00 CST 2021 0 255
第25-虚拟机对象操作指令之getfield

getfield指令表示获取指定类的实例域,并将其值压入栈顶。其格式如下: getstatic indexbyte1 indexbyte2 无符号数indexbyte1和indexbyte2构建为(indexbyte1<<8)|indexbyte2,这个值指明了一个当前 ...

Fri Sep 17 00:55:00 CST 2021 0 208
第22-虚拟机字节码之运算指令

虚拟机规范中与运算相关的字节码指令如下表所示。 0x60 iadd 将栈顶两int型数值相加并将结果压入栈顶 0x61 ladd 将栈顶两long型数值相加并将结果压入 ...

Mon Sep 13 17:32:00 CST 2021 0 182
java虚拟机指令dup的理解

举个例子: 上面代码编译后的字节码指令如下: 1) 其中new指令在java堆上为Exception对象分配内存空间,并将地址压入操作数栈顶; 2) 然后dup指令为复制操作数栈顶值,并将其压入栈顶,也就是说此时操作数栈上有连续相同的两个对象地址 ...

Fri Oct 20 18:03:00 CST 2017 4 2054
虚拟机字节码指令

Java虚拟机指令由一个字节长度的、代表着某种特定操作含义的数字(称为操作码,Opcode)以及跟随其后的零至多个代表此操作所需参数(称为操作数,Operands)而构成。 基本数据类型 1、除了long和double类型外,每个变量都占局部变量区中的一个变量槽(slot),而long ...

Thu Mar 08 00:35:00 CST 2018 0 2090
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM