JAVA寄存器

Posted 千彧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA寄存器相关的知识,希望对你有一定的参考价值。

所有进程都使用寄存器,Java虚拟机使用下列寄存器管理系统堆栈:
    程序记数寄存器:跟踪程序执行的准确位置
    堆栈指针寄存器:指示操作栈项
    框架寄存器:指向当前执行的环境
    变量寄存器:指向当前执行环境中第一个本地变量
    Java开发组决定Java只使用四个寄存器,这是因为如果使用的寄存器数多于处理器端口数,那么处理器的效率将严重地降低
    Java虚拟机中的堆栈用于存放变量,Java程序向Java虚拟机传递字节码,Java虚拟机为每个方法创建堆栈框架,每个框架维护三种信息:
    局部变量:由变量寄存器指向的32位变量数组
    执行环境:由框架寄存器指向和执行的方法
    操作堆栈:执行先进先出规则(FIFO),它是32位宽度的,它为操作码维护必要的参数,该堆栈的顶部是由堆栈指针寄存器索引的

 

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

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

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










以上是关于JAVA寄存器的主要内容,如果未能解决你的问题,请参考以下文章

java 伽罗瓦线性反馈移位寄存器(LFSR)

JAVA基础知识|堆和栈

关于JAVA数据储存

Java数据的存储

[Java]程序运行时的内存分配

JVM虚拟机详解程序计数器(PC寄存器)PC Register