程序计数器

Posted zhouzhiyao

tags:

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

技术图片

先来看这张图,对于数据区,存在着线程,进程的概念。程序计数器是每个线程私有的。如果没有多线程的概念,可以直接无视。

程序计数器

程序计数器,也有人叫它 程序寄存器。但是叫做 程序计数器更为精确。

因为我们知道,在计算机也有一种结构叫做 寄存器,它储存容量小,但是速度快,一般用于 CPU 中。

但是我们这里的 程序计数器 只是我们常说的内存中划分出的一块小内存区域,用来充当 程序计数器的功能。

它记录了,我们下一条要运行指令的地址。

技术图片

我们来看这张图。

右边是我们从 Java 文件编译出的 class 文件的代码内容,左边是指令偏移地址,右边是要执行的指令。

我们的 程序计数器就保存了 下一条指令要执行地址的位置。

之后,执行引擎会从 程序计数器中,获得指令的地址,拿到操作指令,对其进行执行。

程序计数器 是 当前线程所执行的字节码的行号指示器。

因为只是记录下一条要运行指令的地址,所以占用内存小,而且操作简单,相应的速度也就相对较快。

以上是关于程序计数器的主要内容,如果未能解决你的问题,请参考以下文章

简单的计数器使用

四进制计数器的模是多少

jmeter(20)-计数器函数和计数器配置元件

颗粒计数器有几种分类?

十六进制计数器的模数是多少

Hadoop学习笔记—7.计数器与自定义计数器