目录

  • 一、加载和存储指令的概述
  • 二、加载和存储指令的内容
  • 三、加载和存储指令的示例

一、加载和存储指令的概述

  • 加载和存储指令用于将数据在栈帧中的局部变量表和操作数栈之间来回传输。

二、加载和存储指令的内容

  • 将一个局部变量加载到操作数栈
    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、dstore_< n>、astore、astore_< n>;

  • 将一个常量加载到操作数栈
    bipush、sipush、ldc、ldc_w、ldc2_w、aconst_null、iconst_ml、iconst_< i>、lconst_< l>、fconst< f>、dconst_< d>;

  • 扩充局部变量表的访问索引的指令
    wide

三、加载和存储指令的示例

  • 代码

    public class Test1{public int add(int a,int b){int c= a + b;return 1+1;}
    }
    
  • 执行javac命令,生成.class文件

  • 执行javap命令,分析.class字节码文件

深入理解Java虚拟机——加载和存储指令相关推荐

  1. 【深入理解java虚拟机】 - JVM字节码指令介绍

    文章目录 什么是字节码指令 javap的用法 字节码与数据类型 字节码指令集 加载和存储指令 运算指令 类型转换指令 对象创建与访问指令 操作数栈管理指令 控制转移指令 方法调用和返回指令 异常处理指 ...

  2. 单寄存器加载与存储指令

    这种指令用于把单一的数  传入或者传出一个寄存器.支持的数据类型有字(32 位 ) .半字(16 位)  和字节.常用的单寄存器加载与存储指令包括: LDR/STR            字数据加载/ ...

  3. ARMv8体系结构基础03:加载和存储指令

    目录 1 A64指令集概述 1.1 A64指令集特征 1.1.1 指令定长 1.1.2 可使用64位指针 1.1.3 使用一致的编码结构(consistent encoding scheme) 1.1 ...

  4. java虚拟机加载类_java虚拟机之类加载机制(一)

    一.首先先说一下java虚拟机的生命周期: 1.执行了system.exit(): 2.程序正常执行结束: 3.程序在执行过程中遇到了异常或错误而终止: 4.由于操作系统出现错误而导致java虚拟机进 ...

  5. windows下c/c++创建Java虚拟机加载可执行jar包

    一般的,我们使用java.exe或者javaw.exe来执行我们的java应用程序.但是实际上这两个可执行程序只是java虚拟机的启动器,使用java.exe将会创建一个控制台窗口用于输出,而java ...

  6. 深入理解Java虚拟机04--类结构文件

    一.程序存储格式 统一的程序存储格式:不同平台的虚拟机于所有平台都统一使用程序存储格式--字节码(ByteCode); Java 虚拟机不关心 Class 文件的来源,而只和"Class文件 ...

  7. 《深入理解Java虚拟机》笔记4——类文件结构

    代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步. 由于最近十年内虚拟机以及大量建立在虚拟机之上的程序语言如雨后春笋般出现并蓬勃发展,将我们编写的程序编译成二进 ...

  8. 《深入理解Java虚拟机》读书笔记五

    第六章 类文件结构 1.无关性的基石 各种不同平台的虚拟机与所有平台都统一使用程序存储格式--字节码是构成平台无关的基石. 实现语言无关性的基础仍然是虚拟机和字节码存储格式,Java虚拟机不和包括Ja ...

  9. 深入理解Java虚拟机--中

    深入理解Java虚拟机--中 第6章 类文件结构 6.2 无关性的基石 无关性的基石:有许多可以运行在各种不同平台上的虚拟机,这些虚拟机都可以载入和执行同一种平台无关的字节码(ByteCode),从而 ...

最新文章

  1. IDA逆向linux内核导入kallsyms
  2. 腾讯 AI Lab 正式开源PocketFlow自动化深度学习模型压缩与加速框架
  3. 小师妹学JVM之:Dirty cards和PLAB
  4. 知己知彼,百战百胜!如何做好干系人管理
  5. wordpress主题 阿里百秀XIU v7.7版本 兼容 PHP 8.0
  6. Bootstrap进度条堆叠
  7. python3安装requests_小小-Centos7安装Python3并安装Requests的方法
  8. 同等学力计算机综合难吗,计算机在职研究生考试难度大吗?这种方式通过率高...
  9. 对java的集合的理解_谈谈你对java集合类的理解
  10. scp命令报错-bash: scp: command not found
  11. 第九:Pytest进阶之xunit fixture
  12. 温故而知新_C语言_define_宏
  13. 自然语言处理相关知识的构成
  14. Oracle的重做日志
  15. 职场潜规则:非985院校的简历,一律扔进垃圾桶
  16. 【HAOI2009】【毛毛虫】【树形dp】
  17. 虚拟机VMware的下载、安装与卸载
  18. [工作日志] LDAP的SHA加密方式--Java
  19. 域名解析软件SwitchHosts的安装与使用
  20. 人脸识别接口_人脸识别云服务

热门文章

  1. libhv教程11--创建一个简单的HTTP客户端
  2. C语言求任意数的阶层
  3. 【c++】设置控制台窗口字体颜色和背景色(system和SetConsoleTextAttribute函数 )
  4. C++计算机软件系统
  5. 台式u盘显示计算机未响应怎么办,u盘插上去电脑没反应怎么办_u盘插上后无任何反应的解决教程-系统城...
  6. 计算机基础一:IP地址与域名解析
  7. Visual Studio Code编写html代码实现立方体相册,表白相册
  8. 预测混合模式发展前景计算机,基于混合模式的网络流量分类优化-计算机技术专业论文.docx...
  9. 使用虚拟信用卡绑定亚马逊卖家号店铺扣月租费教程
  10. mysql 误清空表 恢复数据