- 下图表示程序计数器在我们JVM中所处的地位
我们看到下图左边是二进制字节码,右边是Java源代码,二进制字节码主要先交给解释器来进行解释成机器码,这样CPU才能看懂。
但是解释器一次解释一句二进制字节码指令,那么解释器如何知道下一条二进制字节码指令是什么,这时就需要程序计数器。程序计数器记录下一条指令的地址,例如此时解释器执行第一条字节码指令,那么解释器中就是地址码是0,而程序计数器中记录下一条地址就是3。
- 程序计数器的作用
记录下一条JVM指令的地址。 - 特点
- 线程私有(每个线程有自己程序计数器,支撑了多线程上下文切换)
- 不会存在内存溢出