欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

初识JVM,

来源: javaer 分享于  点击 15867 次 点评:59

初识JVM,


1.JVM的概念

JVM是java Virtual Machine的简称,意为java虚拟机

JVM使用软件模拟java字节码的指令集。

Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。

为什么Java被称作是“平台无关的编程语言”?

Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。

2各式JVM

①KVM-sun发布、IOS Android前,广泛用于手机系统

②CDC/CLDC HotSpot-手机、电子书、PDA等设备上建立统一的java编程接口

-J2ME的重要组成部分

③IBM J9 VM-IBM内部

3.规范

Java语言规范-语法、变量、类型、文法

 

 

JVM规范-Class文件类型、运行时数据、帧栈、虚拟机的启动、虚拟机的指令集

补码形式

0x80000000,一个16进制需要4位二进制表示,所以表示的是100000000…31个零的二进制表示。A与其按位求与,>>> 无符号右移,右移指定位数,左边空出来补0

得到100000000—31个零的整数表示-2147483648,然后再将1000000--31个零无符号右移31位,得到整形的1,这样每次就能得到一位二进制表示。

为什么计算机中要使用补码?

 

为了正确表示零,使用补码的时候,0的表示形式是统一的,另外补码的话可以不用进行减法运算,直接使用加法运算即可。补码想家符号位参与运算

符号位 指数位 尾数(虽然只有23,实际上有24位)尾数中,附加位为1,故101000000等价于

对于 IEEE754单精度浮点数 = (-1)^S * (1.F) * 2^(E-127)

对于-5

符号位: S=1(一位) ;

介码: E=127+2= 1000 0001 (八位);

尾数: F= 010 0000 0000 0000 0000 0000 (二十三位);

 

0入栈,将0出栈存到第一个局部变量i中,然后执行第8条语句,局部变量i入栈,常数100入栈,比较i是否小于100,如果是回到第5条指令,执行i++,循环8-11,最后return结束。

 

本文参考LS-java虚拟机深入JVM内核—原理、诊断与优化视频 写出,如果错误,欢迎指出

相关文章

    暂无相关文章
相关栏目:

用户点评