深入理解 Java 虚拟机-jvm

什么是 JVM
JVM (Java Virtual Machine)是 Java 的核心和基础,在 Java 编译器和 os 平台之间的虚拟处理器。它是一种基于下层的操作系统和硬件平台并利用软件方法来实现的抽象的计算机,可以在上面执行 Java 的字节码程序。
Java 编译器只需面向 JVM,生成 JVM 能理解的代码或字节码文件。Java 源文件经编译器,编译成字节码程序,通过 JVM 将每一条指令翻译成不同平台机器码,通过特定平台运行。
jvm是java跨平台的核心,相同的java代码编译成字节码,然后在不同平台的jvm编译成对应的机器码。实现跨平台。


什么是 java字节码
一句话解释:java字节码(英语:Java bytecode )java虚拟机执行的一种格式,大多数字节码一个字节长。Java字节码的计算模型是面向堆栈结构计算机。

每一个字节,有256个可能的代码值(2^8=256),因此一个字节的操作码最多可能有256种不同的操作。其中,0x00、0xFE、0xCA、0xFF被指定保留。例如0xCA作为一个Java调试器的中断指令而从未被语言使用。相似地,0xFE和0xFF也未被语言使用[2]。
似的反汇编字节码如下
0 iload_1
1 iload_2
2 iadd
3 istore_3
java代码转换成字节码,然后在虚拟机运行,1不同平台转化成不同的机器码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值