408考研计算机之计算机组成与设计——知识点及其做题经验篇目4:CPU的功能和基本结构
随着考研的慢慢复习,我们逐渐进入了计算机组成与设计的第五章中央处理器。它原名为CPU。姓C,名PU,字中央处理器,号计组难点,乃计算机之中心与核心部件,小编称之曰能算能控,赐名曰九天宏教普济生灵掌阴阳功过大道思仁紫极仙翁一阳真人元虚玄应开化伏魔忠孝帝君。那么请跟随小编,一起去探索一下CPU的世界吧!
目录
一、CPU的功能
二、CPU的组成
一、CPU的功能
考点1:CPU功能
刚看到开头那段的读者们一定特别不屑,切,小编不是说了吗,能算能控,还赐名为九天宏教普济生灵掌阴阳功过大道思仁紫极仙翁一阳真人元虚玄应开化伏魔忠孝帝君,多厉害哦。好的,CPU的功能是计算与控制,本节结束,小编你就不要在这里凑字数了!
此言差矣,诸君请留步!CPU的功能确实如此,但是如果他考选择题的话,题目问下面哪一项不是CPU的功能:A计算,B控制。连四个选项都凑不齐,所以我们还需要将功能稍微细分一点。
CPU由运算器和控制器组成。其中,控制器的功能是负责协调并且控制计算机各部件执行程序的指令序列,包括取指令(形成指令地址)、分析指令(操作码译码,产生操作数有效地址)和执行指令(控制设备,发出有关操作控制信号);而运算器的功能是对数据进行加工。
那么我们总结一下,CPU的具体功能为:
功能 | 解释 |
指令控制 | 程序的顺序控制 |
操作控制 | 把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作 |
时间控制 | 每条指令按时间顺序提供应有的控制信号 |
数据加工 | 对数据进行算术和逻辑运算 |
中断处理 | 对运行过程中出现的异常情况和特殊请求进行处理 |
例题:控制器的全部功能是()
A.产生时序信号
B.从主存中取出指令并完成指令操作码译码
C.从主存中取出指令、分析指令并产生有关的操作控制信号
D.以上都不对
【答案】:C
【解析】:控制器的功能是取出指令、分析指令以及执行指令,其中执行指令就是产生有关的操作控制信号。
二、CPU的组成
考点2:CPU的组成
在计算机系统中,中央处理器主要由运算器和控制器两大部分组成,如下图:
其中运算器是计算机队数据进行加工处理的中心,它主要由算术逻辑单元ALU、暂存寄存器、累加寄存器ACC、通用寄存器组、程序状态字寄存器PSW、位移器、计数器等组成。
而控制器分为硬布线控制器和微程序控制器两种类型。它是整个系统的指挥中枢。它由程序计数器PC、指令寄存器IR、指令译码器、存储地址寄存器MAR、存储数据寄存器MDR、时序系统和未操作信号发生器等组成。
特别容易错的几个点是,很多人看到程序状态字寄存器PSW,就想到这应该是控制程序的寄存器,那么应该是控制器的一部分。但实际上,PSW属于运算器的一部分,保留的是每次运算后的一些运算特性。大家千万别弄错了!!!
还有MAR与MDR很多人会认为这是存储器的一部分,而不是CPU的一部分。但那是老式的计算机,在线代计算机中它是属于CPU的,同样的还有Cache也在CPU中。
我们做一道小题练练手:
例题:CPU中不包括()
A.存储器地址寄存器MAR
B.指令寄存器
C.地址译码器
D.程序计数器
【答案】:C
【解析】:三段一长就选C。A、B、D都属于控制器的一部分。而C是存储器的一部分,作用是将地址信号翻译成存储单元的选通信号。
例题:某计算机的主存空间为4GB,字长为32位,按字节编址,采用32位字长指令字格式。若指令按字边界对齐存放,则程序计数器PC和指令寄存器IR的位数至少分别是____和____。
【答案】:30 32
【解析】:PC存放欲执行的指令地址,它的长度取决于存储器的容量。而IR存放正在执行的指令,它取决于指令的长度。我们发现,指令字长为32位,所以存储器一共能存放条指令,所以PC至少30位,而IR与指令字长的长度保持一致,为32位。但是要特别注意,PC每一次自增1,假设上一条指令在存储器的地址为2000,那么下一条地址为2004(由地址为2004,2005,2006,2007的四块地址构成下一条指令)
考点3:CPU中某些部件的功能
我们继续来稍微了解一下,每一个部件大致功能是什么。
运算器里面:
名称 | 功能简介 |
算术逻辑单元 | 算术、逻辑计算 |
暂存寄存器 | 暂存从主存读来的数据 |
累加寄存器 | 暂时存放算术逻辑单元ALU运算的结果信息 |
通用寄存器组 | 用于存放操作数与各种地址信息 |
程序状态寄存器 | 用于保留由算术逻辑运算指令或测试指令的结果而建立的各种状态信息 |
移位器 | 对操作数活运算结果进行移位运算 |
计数器 | 控制乘除运算的操作步数 |
控制器里面:
名称 | 功能简介 |
程序计数器 | 用于指出欲执行指令在主存中存放地址 |
指令寄存器 | 用于保存当前正在执行的那条指令 |
指令译码器 | 仅对操作码字段进行译码,向控制器提供特定的操作信号 |
MAR | 存放要访问的主存单元的地址 |
MDR | 用于存放向主存写入的信息或从主存读出的信息 |
时序系统 | 用于产生各种时序信号 |
微操作信号发生器 | 根据IR与PSW的内容及时序信号,产生控制整个计算机系统所需的各种控制信号 |
例题:指令译码是对()进行译码。
A.整条指令
B.指令的操作码字段
C.指令的地址码字段
D.指令的地址
【答案】:B
【解析】:指令包括操作码字段和地址码字段,而指令译码器只对操作码字段进行译码,用来确定指令的操作功能。
例外,我们需要对CPU内部的寄存器进行分类,这个分类的名称很奇特:“透明”。请问当一扇透明的窗户在你面前,你能够看得见它吗?
以此类推,如果程序员能够看到某个寄存器,或者说能够对某类寄存器进行编程,我们就会称它对用户是不透明的;而如果程序员看不见某个寄存器,不能对这个寄存器编程,我们称它对用户是透明的。
这个透明和我们在日常生活中透明的意思截然相反。比如说男朋友对女朋友说:“我对你没有隐瞒,我对你是透明的”来表示真心。如果这句话放到计算机学科里面,意思就会变味儿,被理解成“你真是个小笨蛋,竟然看不见我的心”。
那么,透明的寄存器有存储器地址寄存器MAR、存储器数据寄存器MDR、指令寄存器IR,不透明的寄存器有通用寄存器组(如ACC)、状态程序寄存器PSW,其中程序计数器PC对程序员也不透明,这个经常考察!
例题:下列寄存器中,汇编语言程序员可见的是()
A.存储器地址寄存器MAR
B.程序计数器PC
C.存储器数据寄存器MDR
D.指令寄存器IR
【答案】:B
【解析】:汇编程序员可以用转移指令、子程序调用指令等设置PC的值,故PC可以被程序员看见。而IR/MAR/MDR是CPU内部工作寄存器,对程序员不可见。
好的,本期的计算机组成与设计的学习就到此为止啦,感兴趣的小伙伴要记得给小编的文章点一颗心心哦!
相关文章:

408考研计算机之计算机组成与设计——知识点及其做题经验篇目4:CPU的功能和基本结构
随着考研的慢慢复习,我们逐渐进入了计算机组成与设计的第五章中央处理器。它原名为CPU。姓C,名PU,字中央处理器,号计组难点,乃计算机之中心与核心部件,小编称之曰能算能控,赐名曰九天宏教普济生…...
2022-12-10青少年软件编程(C语言)等级考试试卷(五级)解析
2022-12-10青少年软件编程(C语言)等级考试试卷(五级)解析T1、漫漫回国路 2020年5月,国际航班机票难求。一位在美国华盛顿的中国留学生,因为一些原因必须在本周内回到北京。现在已知各个机场之间的航班情况,求问他回不回得来(不考虑转机次数和机票价格)。 时间限制:10…...

刷题专练之链表(一)
文章目录前言一、 移除链表元素1.题目介绍2.思路3.代码二、反转链表1.题目介绍2.思路3.代码三、链表的中间结点1.题目介绍2.思路3.代码四、链表的中间结点1.题目介绍2.思路3.代码前言 以下是链表经常考的面试题,我在这里进行归纳和讲解,采取的是循序渐进…...
elasticsearch高级查询api
yml配置 #es配置 spring:elasticsearch:rest:uris: 192.168.16.188:9200添加依赖 <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId> </dependency>使用编程的形式…...

力扣-股票的资本损益
大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:1393. 股票的资本损益二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他…...

蓝桥杯刷题冲刺 | 倒计时26天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.路径2.特别数的和3.MP3储存4.求和1.路径 题目 链接: 路径 - 蓝桥云课 (lanqiao.cn…...

嵌入式软件开发之Linux 用户权限管理
目录 Ubuntu 用户系统 权限管理 权限管理命令 权限修改命令 chmod 文件归属者修改命令 chown Ubuntu 用户系统 Ubuntu 是一个多用户系统,我们可以给不同的使用者创建不同的用户账号,每个用户使用各自的账号登陆,使用用户账号的目的一是方便…...
2023-03-15 RabbitMQ
RabbitMQ整合 官网erlang版本 : 20.3.8.x 官方rabbitMq版本: rabbitmq-server-generic-unix-3.7.14.tar.xz 1.安装 1.1 安装erlang 1.安装环境 yum -y install make gcc gcc-c kernel-devel m4 ncurses-devel openssl-devel2.在/usr/local/下创建erlangapp文件…...

二叉树链式结构的实现
文章目录1.二叉树的遍历1.1前序、中序以及后序遍历1.2代码测试1.3层序遍历1.4二叉树遍历习题2.节点个数以及高度2.1二叉树节点个数2.2叶子节点个树2.3第k层节点个数2.4树的高度1.二叉树的遍历 1.1前序、中序以及后序遍历 学习二叉树结构,最简单的方式就是遍历。所…...

蓝桥杯刷题冲刺 | 倒计时28天
作者:指针不指南吗 专栏:蓝桥杯倒计时冲刺 🐾马上就要蓝桥杯了,最后的这几天尤为重要,不可懈怠哦🐾 文章目录1.卡片2.数字三角形3.购物单4.回文日期1.卡片 题目 链接: 卡片 - 蓝桥云课 (lanqiao…...
一文带你吃透操作系统
文章目录1. 进程、线程管理2. 内存管理3. 进程调度算法4. 磁盘调度算法5. 页面置换算法6. 网络系统7. 锁8. 操作系统知识点文章字数大约1.9万字,阅读大概需要65分钟,建议收藏后慢慢阅读!!!1. 进程、线程管理 进程和线程…...
计算机网络英文简称汇总
分类名词全拼汉译概述B2CBusiness-to-Consumer商对客概述P2PPeer-to-Peer对等概述C/SClient-Server服务器-客户机概述ITUInternational Telecommunication Union国际电信联盟概述IEEEInstitute of Electrical and Electronics Engineers电气与电子工程师协会概述ICCCInternatio…...

腾讯云云服务器标准型S5性能配置简单测评
腾讯云服务器标准型S5实例CPU采用Intel Xeon Cascade Lake或者Intel Xeon Cooper Lake处理器,主频2.5GHz,睿频3.1GHz,标准型S5云服务器基于全新优化虚拟化平台,配有全新的Intel Advanced Vector Extension (AVX-512) 指令集&#…...

RK3568平台开发系列讲解(Linux系统篇)消息队列
🚀返回专栏总目录 文章目录 一、创建消息队列二、发送和接收消息三、内核结构沉淀、分享、成长,让自己和他人都能有所收获!😄 📢消息队列在如下两个方面上比管道有所增强: 消息队列中的数据是有边界的,发送端和接收端能以消息为单位进行交流,而不再是无分隔的字节流…...

2021电赛国一智能送药小车(F题)设计报告
2021电赛国一智能送药小车(F题)设计报告 【写在前面的话】 电赛是一个很奇妙的过程,可能有些人觉得电赛的门槛太高,那便意味着,当你决定要参加电赛的那一刻起,这一段路、这些日子就注定不会太轻松…...

刚工作3天就被裁了....
前言 还有谁?刚上三天班就被公司公司的工作不适合我,叫我先提升一下。 后面我也向公司那边讨要了一个说法,我只能说他们那边的说辞让我有些不服气。 现在之所以把这件事上记录一下,一是记录一下自己的成长轨迹,二是…...

docker安装elasticsearch与head教程完整版—.NET Core Web Api与elasticsearch打造全站全文搜索引擎
默认已经有docker环境 下载与安装 elasticsearch ,从hub.docker里面可以看到最新版本的镜像,选择你想要的版本 本教程是以 7.17.7 为案例,为啥不适用最新的,首先个人一般需用最新的版本,如果有亢很难填,其次…...
蓝桥冲刺31天之315
没有一个冬天不可逾越 也没有一个春天不会来临 所有美好的食物,都会有一个等待的过程 低谷时蛰伏,静默时沉淀 做三四月的事,在八九月自有答案 目录 A:0的个数 题目描述: 输入格式 输出格式 样例输入 样例输出 评测用例规模与…...

常见排序算法
/懂了和写出来是两码事啊啊......orz./ Talk is cheap, show me the code 一、快速排序 直接背模板就能过: 当xq[lr>>1]的边界情况 此时x取的是序列中间靠左的位置(如果序列个数为奇,则取正中间,如果为偶,则取中间靠左),此时如果元素个数为2, 则中间靠左就…...

C语言实现学生成绩管理系统思考
学生成绩管理系统思考 作业要求: 目录 思路 基本函数 学习理解大佬的代码: 完成作业: 思路 学生成绩管理系统,首先要初始化系统, 用C语言做学生实验管理系统要求实现对某班学生3门课程(包括语文、数…...

css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...

华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...
MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用
文章目录 一、背景知识:什么是 B-Tree 和 BTree? B-Tree(平衡多路查找树) BTree(B-Tree 的变种) 二、结构对比:一张图看懂 三、为什么 MySQL InnoDB 选择 BTree? 1. 范围查询更快 2…...

Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...
c# 局部函数 定义、功能与示例
C# 局部函数:定义、功能与示例 1. 定义与功能 局部函数(Local Function)是嵌套在另一个方法内部的私有方法,仅在包含它的方法内可见。 • 作用:封装仅用于当前方法的逻辑,避免污染类作用域,提升…...
微服务通信安全:深入解析mTLS的原理与实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言:微服务时代的通信安全挑战 随着云原生和微服务架构的普及,服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...
DiscuzX3.5发帖json api
参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...