`
gaoyuntao2005
  • 浏览: 311372 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JVM指令助记符

阅读更多

变量到操作数栈:iload,iload_<n>,lload,lload_<n>,fload,fload_<n>,dload,dload_<n>,aload,aload_<n>
操作数栈到变量:istore,istore_<n>,lstore,lstore_<n>,fstore,fstore_<n>,dstore,dstor_<n>,astore,astore_<n>
常数到操作数栈:bipush,sipush,ldc,ldc_w,ldc2_w,aconst_null,iconst_ml,iconst_<i>,lconst_<l>,fconst_<f>,dconst_<d>
加:iadd,ladd,fadd,dadd
减:isub,lsub,fsub,dsub
乘:imul,lmul,fmul,dmul
除:idiv,ldiv,fdiv,ddiv
余数:irem,lrem,frem,drem
取负:ineg,lneg,fneg,dneg
移位:ishl,lshr,iushr,lshl,lshr,lushr
按位或:ior,lor
按位与:iand,land
按位异或:ixor,lxor
类型转换:i2l,i2f,i2d,l2f,l2d,f2d(放宽数值转换)
          i2b,i2c,i2s,l2i,f2i,f2l,d2i,d2l,d2f(缩窄数值转换)

创建类实便:new
创建新数组:newarray,anewarray,multianwarray
访问类的域和类实例域:getfield,putfield,getstatic,putstatic
把数据装载到操作数栈:baload,caload,saload,iaload,laload,faload,daload,aaload
从操作数栈存存储到数组:bastore,castore,sastore,iastore,lastore,fastore,dastore,aastore
获取数组长度:arraylength
检相类实例或数组属性:instanceof,checkcast
操作数栈管理:pop,pop2,dup,dup2,dup_xl,dup2_xl,dup_x2,dup2_x2,swap
有条件转移:ifeq,iflt,ifle,ifne,ifgt,ifge,ifnull,ifnonnull,if_icmpeq,if_icmpene,
            if_icmplt,if_icmpgt,if_icmple,if_icmpge,if_acmpeq,if_acmpne,lcmp,fcmpl
    fcmpg,dcmpl,dcmpg
复合条件转移:tableswitch,lookupswitch
无条件转移:goto,goto_w,jsr,jsr_w,ret
调度对象的实便方法:invokevirtual
调用由接口实现的方法:invokeinterface
调用需要特殊处理的实例方法:invokespecial
调用命名类中的静态方法:invokestatic
方法返回:ireturn,lreturn,freturn,dreturn,areturn,return
异常:athrow
finally关键字的实现使用:jsr,jsr_w,ret

分享到:
评论

相关推荐

    JVM操作码助记符

    ### JVM操作码助记符详解 #### 一、概述 JVM(Java Virtual Machine,Java虚拟机)作为Java程序运行的基础平台,在执行字节码时依赖于一系列预先定义的操作码来实现具体的运算逻辑。这些操作码是Java字节码的核心...

    JVM指令集.pdf

    JVM指令集的助记符通常由操作码对应的英文缩写构成,它们是字节码指令的符号化表示。 字节码是JVM能够识别和执行的一系列指令和数据,是Java平台无关性的基础,因为它允许Java程序在不同的操作系统上运行。字节码...

    中文版JVM指令手册.pdf

    指令码助记符是每条指令的简写,方便阅读和记忆,如`iconst_m1`、`ldc_w`等。 #### 注意事项 - 指令使用范围:不同的指令适用于不同的数值范围或类型,例如`bipush`适用于-128至127,而`sipush`适用于更大的短整型...

    JVM指令手册(Java)

    JVM指令手册是理解JVM内部工作原理的关键资源,其中包含了所有可用的JVM指令,每条指令都有对应的指令码(也称为操作码)和助记符。这些指令构成了Java程序在JVM上运行的基础。 1. 指令码与助记符: 在JVM指令集中...

    JVM指令的使用深入详解

    JVM指令是由一系列的16进制码组成的,每种指令都有对应的助记符,用于实现特定的操作。深入理解JVM指令对于优化Java代码性能、排查问题以及理解Java运行机制至关重要。 1. **未归类系列**: - `nop` 指令:无操作...

    JVM指令手册(包含指令说明,和案例解释)

    ### JVM指令手册详解 #### 一、概述 Java虚拟机(JVM)是Java程序运行的基础环境,它通过一系列指令集来实现对Java字节码的解释执行。本篇内容将重点介绍JVM的部分核心指令,包括但不限于未归类指令、常量加载指令...

    jvm虚拟机规范 pdf 经典

    详细介绍了jvm虚拟机规范,很好 第一章引言 第二章 java概念 第三章 java虚拟机结构 第四章 class文件格式 第五章 常熟池解析 第六章 java虚拟机指令集 第七章 为java虚拟机编译 ...第十章 操作码的操作码助记符

    深入Java虚拟机(原书第2版)及书中源代码

    附录A 按操作码助记符排列的指令集 附录B 按功能排列的操作码助记符 附录C 按操作码字节值排列的操作码助记符 附录D Java虚拟机的一个模拟:“Slices of Pi” 原码中的小程序是学习jvm非常好的工具

    深入java虚拟机pdf英文版

    - 提供了一个按操作码助记符分类的完整指令集列表。 - **B章:按功能分组的操作码助记符** - 将指令按照其功能进行分组。 - **C章:按操作码分类的操作码助记符** - 列出了所有可用的操作码及其对应的助记符。 ...

    深入java虚拟机中文第2版

    本书共分20章,第1-4章解释了Java虚拟机的体系结构,包括...附录A 按操作码助记符排列的指令集 附录B 按功能排列的操作码助记符 附录C 按操作码字节值排列的操作码助记符 附录D Java虚拟机的一个模拟:“Slices of Pi”

    Inside the Java Virtual Machine

    JVM的指令集由操作码和助记符组成,操作码是字节码指令的二进制表示,助记符是人类可读的形式。指令集按照功能和操作码进行分类,方便开发者查阅和理解。 通过深入学习JVM,我们可以全面理解Java程序是如何在虚拟机...

    JVM执行子系统.pdf

    Class文件是一种跨平台的二进制文件格式,它包含了Java虚拟机指令集、符号表和其他辅助信息,确保Java代码能在不同操作系统上无缝运行,实现“一次编写,到处运行”的目标。 Class文件的结构严谨而高效,以8位字节...

    JVM执行子系统.docx

    Java虚拟机(JVM)是Java跨平台的核心,它的设计使得程序可以在任何支持JVM的平台上运行,无需重新编译。...理解Class文件的结构和JVM的工作原理对于Java开发者来说至关重要,有助于编写更高效、可移植的代码。

    java课后习题答案

    - **汇编语言**:使用助记符替代机器指令,需编译,比机器语言更易修改和理解,但依然面向特定机器。 - **高级语言**:接近自然语言,可移植性强,易于学习和维护。 2. **面向过程与面向对象的对比**: - **面向...

    深入Java虚拟机(原书第2版).pdf【附光盘内容】

    《深入Java虚拟机(原书第2版)》,原书名《Inside...附录a 按操作码助记符排列的指令集 附录b 按功能排列的操作码助记符 附录c 按操作码字节值排列的操作码助 记符 附录d java虚拟机的一个模拟:“slices of pi”

    计算机是如何执行代码的?.pdf

    汇编指令是机器语言的一种助记符形式,便于人类阅读。实际上,这些指令在内存中是以二进制形式存在的。例如,上述汇编指令对应的二进制序列是10001011 01000101 11101100等。 4. 指令格式: x86架构的CPU指令通常...

    计算机科学导论-李强.pdf

    - **汇编语言**:一种与特定处理器架构紧密相关的低级编程语言,使用助记符代替二进制指令。 3. **汇编语言的助记符** - 汇编语言中的助记符通常是英语单词或其缩写。 - 助记符使程序员更容易记忆和编写指令。 ...

    Java 字节码概述

    * “有类型”的指令,字节码助记符前缀表明该操作的类型,例如 iadd、ladd、fadd、dadd * 字节码后跟 0 个或多个操作数 JVM 栈结构 JVM 栈是 JVM 存储信息的主要方法。当 JVM 得到一个 Java 字节码应用程序后,便...

    Java虚拟机规范(Java SE 7)

    - **操作码助记符**:操作码助记符是给每条指令赋予的易于记忆的名字,方便开发者阅读和理解字节码文件。 通过以上解析,我们可以看到Java虚拟机规范不仅定义了Java程序运行的基本框架,还详细描述了程序编译、...

Global site tag (gtag.js) - Google Analytics