操作系统-程序计数器

查考资料:https://blog.csdn.net/xxb2008/article/details/42145649

程序计数器是用于存放下一条指令所在单元的地址的地方。

这里写图片描述

冯 ·诺伊曼计算机体系结构的主要内容之一就是“程序预存储,计算机自动执行”!
处理器要执行的程序(指令序列)都是以二进制代码序列方式预存储在计算机的存储器中,处理器将这些代码逐条地取到处理器中再译码、执行,以完成整个程序的执行。
为了保证程序能够连续地执行下去,CPU必须具有某些手段来确定下一条取指指令的地址。

程序计数器(PC )正是起到这种作用,所以通常又称之为‘指令计数器’。CPU总是按照PC的指向对指令序列进行取指、译码和执行,也就是说,最终是PC 决定了程序运行流向。故而,程序计数器(PC )属于特别功能寄存器范畴,不能自由地用于存储其他运算数据。

1、在程序开始执行前,将程序指令序列的起始地址,即程序的第一条指令所在的内存单元地址送入PC,
2、CPU按照PC的指示从内存读取第一条指令(取指)。
3、当执行指令时,CPU自动地修改PC的内容,即每执行一条指令PC增加一个量,这个量等于指令所含的字节数(指令字节数),使PC总是指向下一条将要取指的指令地址。
4、由于大多数指令都是按顺序来执行的,所以修改PC的过程通常只是简单的对PC 加“指令字节数”。
5、当程序转移时,转移指令执行的最终结果就是要改变PC的值,此PC值就是转去的目标地址。
6、处理器总是按照PC指向,取指、译码、执行,以此实现了程序转移。

总之:在CPU控制部件中的程序计数器(PC)的功能是用于存放指令的地址。程序执行时,PC的初值为程序第一条指令的地址,在顺序执行程序时,控制器首先按程序计数器所指出的指令地址从内存中取出一条指令,然后分析和执行该指令,同时将PC的值加1指向下一条要执行的指令。

程序运行过程:

程序—机器语言的EXE文件—内存(EXE文件的副本)—CPU解释并执行程序内容

这里写图片描述

CPU主要部分是控制器、寄存器、运算器、时钟。

其中CPU主要的就是各种寄存器的集合体。

这里写图片描述

总结过程如下:

这里写图片描述

相关文章
相关标签/搜索