了解CPU

本文详细介绍了CPU的组成部分,包括寄存器、控制器、运算器和时钟,以及它们各自的功能。寄存器在CPU中扮演重要角色,如累加寄存器、标志寄存器、程序计数器等。程序的执行流程涵盖顺序执行、条件分支和循环,其中条件分支依赖于标志寄存器的状态。函数调用机制涉及call和return指令,利用栈保存返回地址。CPU执行指令包括数据传送、运算、跳转和函数调用。
摘要由CSDN通过智能技术生成

1.CPU的组成部分

      CPU是英文Central Processing Unit(中央处理器)的缩写,相当于计算机的单脑,是由许多晶体管组成的电子部件,这种部件通常也被成为集成电路。CPU由寄存器、控制器、运算器以及时钟组成,这四部分的作用分别为:

CPU的组成部分作用
寄存器暂时存储指令、数据等处理对象
控制器将内存上的指令、数据等读入寄存器,并根据指令的执行结果控制计算机
运算器负责运算从内存读入寄存器的数据
时钟负责发出CPU开始计时的时钟信号

 2.CPU是寄存器的集合体

         CPU的四个组成部分对于程序员来说,只需要重点关注寄存器即可,因为程序是把寄存器作为对象来描述的。不同CPU的的寄存器的数量、种类以及寄存器存储的数值范围都是不同的。寄存器中主要存储指令与数据,数据可以是“用于运算的数据”也可以是“表示内存地址的数值”。一般可以把寄存器分为八大类,其分别的作用如下表,其中标红的寄存器都只有一个,而其他的寄存器都不止一个。

种类功能
累加寄存器存储执行运算和运算后的数据
标志寄存器存储运算处理后CPU的状态
程序计数器存储下一条指令所在内存的地址
指令寄存器存储指令。CPU内部使用,程序员无法通过程序操作该寄存器
栈寄存器存储栈区域的起始地址
基址寄存器存储数据内存的起始地址
变址寄存器存储基址寄存器的相对地址
通用寄存器存储任意数据

 3.条件分支和循环机制

        程序的流程分为顺序执行、条件分支和循环三种。顺序执行是指按照地址内容的顺序执行指令;条件分支是指根据条件执行任意地址的指令;循环是指重复执行同一地址的指令。如下图所示为执行条件分支的程序示例。

         从图中我们可以看到,当程序计数器进行到0102时,遇到条件判断的指令,然后根据条件跳转到0104的内存上。条件分支在进行跳转指令前会进行比较运算,CPU执行比较运算的过程是进行减法运算,然后计算结果保存在标志寄存器中。至于是否执行指令,CPU在参考标志寄存器的数值以及结合判断条件做出判断。

4.函数的调用机制

         函数的调用与条件分支不同,单纯地跳转指令无法实现函数的调用。机器语言中的call与return指令可以完成这函数的调用。在将函数的入口地址设定在程序计数器之前,call指令会将调用函数后下一步即将要执行的指令地址存储在名为栈的主存中。函数处理完毕后,再通过函数的出口来通过return的命令将保存在栈中即将要执行的指令的地址设定到程序计数器。

5.CPU的处理能力

        CPU所执行的是高级编程语言编译过后的机器语言,其所能执行的机器语言指令大致有以下几类:

类型作用
数据传送指令寄存器与内存,内存与内存,寄存器与外围设备之间的数据读写操作
运算指令通过累加寄存器进行算术、逻辑、比较和移位运算
跳转指令实现条件分支、循环以及强制跳转等
call/return指令函数的调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值