java 寄存器_JAVA寄存器

所有进程都使用寄存器,Java虚拟机使用下列寄存器管理系统堆栈:

程序记数寄存器:跟踪程序执行的准确位置

堆栈指针寄存器:指示操作栈项

框架寄存器:指向当前执行的环境

变量寄存器:指向当前执行环境中第一个本地变量

Java开发组决定Java只使用四个寄存器,这是因为如果使用的寄存器数多于处理器端口数,那么处理器的效率将严重地降低

Java虚拟机中的堆栈用于存放变量,Java程序向Java虚拟机传递字节码,Java虚拟机为每个方法创建堆栈框架,每个框架维护三种信息:

局部变量:由变量寄存器指向的32位变量数组

执行环境:由框架寄存器指向和执行的方法

操作堆栈:执行先进先出规则(FIFO),它是32位宽度的,它为操作码维护必要的参数,该堆栈的顶部是由堆栈指针寄存器索引的

这是速度最快的存储场所,因为寄存器位于处理器内部,这一点和其他的存储媒介都不一样。不过寄存器个数是有限的。

在内存中的寄存器区域是由编译器根据需要来分配的。我们程序开发人员不能够通过代码来控制这个寄存器的分配。

所以说,这第一个存储区域寄存器,我们只能够看看,而不能够对其产生任何的影响。,也没办法在程序里头感觉到寄存器的任何存在迹象

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值