Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1359312
  • 博文数量: 277
  • 博客积分: 2551
  • 博客等级: 少校
  • 技术积分: 3918
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-21 22:46
文章分类

全部博文(277)

文章存档

2017年(3)

2016年(9)

2015年(65)

2014年(27)

2013年(85)

2012年(61)

2011年(27)

分类: Java

2013-04-09 21:29:43

     java虚拟机中的java方法的栈是采用数组方式栈,按数组下标取元素,而操作数栈只有压栈和出栈。
     计算机/虚拟机都是以计算为中心,存储为辅助计算的。
     java虚拟机的设计中,也暗含了计算机组成原理中的一些理念。
     java程序的执行也和C程序执行类似,有类似的代码区,堆区,栈区;代码区算是只读,堆区动态分配空间,栈区主要程序执行时的临时内存区,可以配置堆的初始大小、最大、最小值,也可以配置栈的初始大小、最大、最小值。
     java程序的执行过程中的java方法栈中的参数,临时变量它们的值是有区别的,基本类型的变量都是在栈中存储实际值,复杂类型在java方法栈存储它在堆中的引用,可以认为引用在java虚拟机中算是一种寻址方式。真正的寻址操作都是在执行引擎中进行的。    
     java对象内存表示,可以采用类似C++的对象内存表示,带有方法表。
     java执行引擎中的程序计数器表示的是下一条字节码的位置,类似计算机组成原理中的PC,同样程序计数器的值是下一条指令在class文件中的地址的偏移量。
   
阅读(945) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~