虚拟机字节码执行引擎

来源:互联网 发布:注册淘宝 编辑:程序博客网 时间:2024/05/23 01:08

基于栈的解释器执行过程,下面例子给出四则运算加减乘除法:

public class Demo {    public static void foo() {        int a = 1;        int b = 2;        int c = (a + b) * 5;    }}


直接使用命令javap查看它的字节码指令如下:

public static void foo();  Code:     0: iconst_1//把操作数压入操作数栈     1: istore_0//将操作数栈顶元素弹出保存至局部变量表中     2: iconst_2     3: istore_1     4: iload_0     5: iload_1     6: iadd     7: iconst_5     8: imul     9: istore_2    10: return


执行过程如下图:

这里写图片描述



1 0
原创粉丝点击