计算机组成原理历年考研真题对应知识点(计算机系统层次结构)

目录

1.2计算机系统层次结构

1.2.2计算机硬件

【命题追踪——冯·诺依曼计算机的特点(2019)】

【命题追踪——MAR 和 MDR 位数的概念和计算(2010、2011)】

1.2.3计算机软件

【命题追踪——三种机器语言的特点(2015)】

【命题追踪——各种翻译程序的概念(2016)】

1.2.5计算机系统的工作原理

【命题追踪——翻译过程的四个阶段(2022)】


1.2计算机系统层次结构

1.2.2计算机硬件

命题追踪——冯·诺依曼计算机的特点(2019)】

冯·诺依曼在研究 EDVAC机时提出了“存储程序”的概念,“存储程序”的思想奠定了现代计算机的基本结构,以此概念为基础的各类计算机统称冯·诺依曼机

 

命题追踪——MAR 和 MDR 位数的概念和计算(2010、2011)】

(1)  输入设备

输入设备的主要功能是将程序和数据以机器所能识别和接受的信息形式输入计算机。

最常用也最基本的输入设备是键盘,此外还有鼠标、扫描仪、摄像机等。

(2)  输出设备

输出设备的任务是将计算机处理的结果以人们所能接受的形式或其他系统所要求的信息形式输出。

最常用、最基本的输出设备是显示器、打印机。

输入/输出设备(简称 I/O 设备)是计算机与外界联系的桥梁,是计算机中不可缺少的重要组成部分。

(3)  存储器

存储器分为主存储器(也称内存储器主存)和辅助存储器(也称外存储器外存)。

CPU能够直接访问的存储器是主存储器

辅助存储器用于帮助主存储器记忆更多的信息,辅助存储器中的信息必须调入主存储器后,才能为 CPU 所访问。

主存储器的工作方式是按存储单元的地址进行存取,这种存取方式称为按地址存取方式。

主存储器的最基本组成如图1.1所示。

存储体存放二进制信息,存储器地址寄存器(MAR)存放访存地址,经过地址译码后找到所选的存储单元。

存储器数据寄存器(MDR)用于暂存要从存储器中读或写的信息,时序控制逻辑用于产生存储器操作所需的各种时序信号。

存储体由许多存储单元组成,每个存储单元包含若干存储元件,每个存储元件存储一位二进制代码“ 0 ”或 “ 1 ”。

因此存储单元可存储一串二进制代码,称这串代码为存储字,称这串代码的位数为存储字长,存储字长可以是1B(8bit)或是字节的偶数倍。

MAR 用于寻址,其位数反映最多可寻址的存储单元的个数,如MAR为10 位,则最多有2¹⁰ =1024 个存储单元,记为 1K。

MAR 的长度与 PC 的长度相等。MDR 的位数通常等于存储字长,一般为字节的2次幂的整数倍。

注意:MAR 与 MDR 虽然是存储器的一部分,但在现代计算机中却是存在于CPU 中的;

另外后文提到的高速缓存(Cache)也存在于CPU中。

(4)  运算器
运算器是计算机的执行部件,用于进行算术运算和逻辑运算。

算术运算是按算术运算规则进行的运算,如加、减、乘、除;

逻辑运算包括与、或、非、异或、比较、移位等运算。

运算器的核心是算术逻辑单元(Arithmetic and Logic Unit,  ALU)。

运算器包含若干通用寄存器,用于暂存操作数和中间结果,如累加器(ACC)、乘商寄存器(MQ)、操作数寄存器(X)、变址寄存器(IX)(I为大写的i)、基址寄存器(BR)等,其中前三个寄存器是必须具备的。

运算器内还有程序状态寄存器(PSW),也称标志寄存器,用于存放 ALU 运算得到的一些标志信息或处理机的状态信息,如结果是否溢出、有无产生进位或借位、结果是否为负等。

(5)  控制器

控制器是计算机的指挥中心,由其“指挥”各部件自动协调地进行工作。

控制器由程序计数器(PC)、指令寄存器(IR)(I为大写i)和控制单元(CU)组成。

  • PC用来存放当前欲执行指令的地址,具有自动加1的功能(这里的“1”指一条指令的长度),即可自动形成下一条指令的地址,它与主存储器的 MAR之间有一条直接通路。
  • IR 用来存放当前的指令,其内容来自主存储器的 MDR。指令中的操作码 OP(IR)送至 CU,用以分析指令并发出各种微操作命令序列;而地址码 Ad(IR)送往 MAR,用以取操作数。

一般将运算器和控制器集成到同一个芯片上,称为中央处理器(CPU)。

CPU 和主存储器共同构成主机,而除主机外的其他硬件装置(外存、I/O设备等)统称外部设备,简称外设

图 1.2 所示为冯·诺依曼结构的模型机。CPU 包含 ALU、通用寄存器组 GPRs、标志寄存器、控制器、指令寄存器IR、程序计数器 PC、存储器地址寄存器 MAR 和存储器数据寄存器 MDR。

图中从控制器送出的虚线就是控制信号,可以控制如何修改 PC 以得到下一条指令的地址,

可以控制 ALU 执行什么运算,可以控制主存储器是进行读操作还是写操作(读/写控制信号)。

CPU 和主存储器之间通过一组总线相连,总线中有地址、控制和数据 3 组信号线。

MAR 中的地址信息会直接送到地址线上,用于指向读/写操作的主存储器存储单元;

控制线中有读/写信号线,指出数据是从 CPU 写入主存储器还是从主存储器读出到 CPU,

根据是读操作还是写操作来控制将 MDR 中的数据是直接送到数据线上还是将数据线上的数据接收到 MDR 中。 

1.2.3计算机软件

命题追踪——三种机器语言的特点(2015)】

1)  机器语言

也称二进制代码语言,需要编程人员记忆每条指令的二进制编码。

机器语言是计算机唯一可以直接识别和执行的语言。

2)  汇编语言

汇编语言用英文单词或其缩写代替二进制的指令代码,更容易为人们记忆和理解。

使用汇编语言编辑的程序,必须经过一个称为汇编程序的系统软件的翻译,将其转换为机器语言程序后,才能在计算机的硬件系统上执行。

3)  高级语言

高级语言(如 C、C++、Java 等)是为方便程序设计人员写出解决问题的处理方案和解题过程的程序。

通常高级语言需要经过编译程序编译成汇编语言程序,然后经过汇编操作得到机器语言程序,或直接由高级语言程序翻译成机器语言程序。

命题追踪——各种翻译程序的概念(2016)】

因此计算机无法直接理解和执行高级语言程序,所以需要将高级语言程序转换为机器语言程序,通常把进行这种转换的软件系统称翻译程序

翻译程序有以下三类:

1) 汇编程序(汇编器)。将汇编语言程序翻译成机器语言程序。

2) 解释程序(解释器)。将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行。

3) 编译程序(编译器)。将高级语言程序翻译成汇编语言或机器语言程序。

1.2.5计算机系统的工作原理

命题追踪——翻译过程的四个阶段(2022)】

在计算机中编写的C语言程序,都必须被转换为一系列的低级机器指令,这些指令按照一种称为可执行目标文件的格式打好包,并以二进制磁盘文件的形式存放起来。

以 UNIX 系统中的 GCC 编译器程序为例,读取源程序文件 hello.c,并把它翻译成一个可执行目标文件 hello,整个翻译过程可分为四个阶段完成,如图1.5 所示。

1) 预处理阶段:预处理器(cpp)对源程序中以字符#开头的命令进行处理,

例如将 #include 命令后面的 .h 文件内容插入程序文件。

输出结果是一个以 .i 为扩展名的源文件 hello.i。

2) 编译阶段:编译器(cc1)对预处理后的源程序进行编译,生成一个汇编语言源程序hello.s。

汇编语言源程序中的每条语句都以一种文本格式描述了一条低级机器语言指令。

3) 汇编阶段:汇编器(as)将 hello.s 翻译成机器语言指令,把这些指令打包成一个称为可重定位目标文件 hello.o,

它是一种二进制文件,因此用文本编辑器打开会显示乱码。

4) 链接阶段:链接器(ld)(l为小写的L)将多个可重定位目标文件和标准库函数合并为一个可执行目标文件,简称可执行文件。

本例中,链接器将 hello.o 和标准库函数 printf 所在的可重定位目标模块 printf.o 合并,生成可执行文件 helo。

最终生成的可执行文件被保存在磁盘上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/27335.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024.6.14 刷题总结

2024.6.14 **每日一题** 2786.访问数组中的位置使分数最大,看到这题就想到动态规划的思路,遍历数组,每次选择移动该元素时能获得到的最大值,分别考虑最后一个的元素为奇数/偶数的最大值,用长度为2的数组来储存这两个值…

HTML解析之Beautiful Soup

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 Beautiful Soup是一个用于从HTML和XML文件中提取数据的Python库。Beautiful Soup 提供一些简单的、函数用来处理导航、搜索、修改分析树等功能。Beau…

代码随想录:回溯20-21

51.N皇后 题目 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解…

【深度学习】Transformer分类器,CICIDS2017,入侵检测,随机森林、RFE、全连接神经网络

文章目录 1 前言2 随机森林训练3 递归特征消除 RFE Recursive feature elimination4 DNN5 Transformer5.1. 输入嵌入层(Input Embedding Layer)5.2. 位置编码层(Positional Encoding Layer)5.3. Transformer编码器层(T…

堆的实现及其应用

堆的概念 堆是完全二叉树,分为大堆和小堆。大堆:任何一个父亲都大于等于孩子,小堆:任何一个父亲都小于等于孩子。 堆的实现 目录 typedef int HPDataType;typedef struct Heap { HPDataType* a;int size;int capacity; }HP;//交…

C语言之操作符

目录 一、二进制 原码、反码、补码 二、移位操作符 位操作符 三、 逗号表达式 四、下标访问[]、函数调用() 五. 操作符的属性 整型提升 算术转换 六、总结 一、二进制 其实2进制、8进制、10进制、16进制是数值的不同表示形式而已。 其实10进制是生活中经常使用的&am…

类别朴素贝叶斯CategoricalNB和西瓜数据集

CategoricalNB 1 CategoricalNB原理以及用法2 数据集2.1 西瓜数据集2.2 LabelEncoder2.3 OrdinalEncoder 3 代码实现 1 CategoricalNB原理以及用法 (1)具体原理 具体原理可看:贝叶斯分类器原理 sklearn之CategoricalNB对条件概率的原理如下&…

粉丝经济时代:微信订阅号如何助力中小企业增长

在数字化浪潮席卷全球的今天,微信订阅号凭借其独特的优势,成为了中小企业数字化出海的重要工具。作为NetFarmer,我们致力于帮助企业充分利用这一平台,推动业务发展和市场拓展。今天将深入探讨微信订阅号的概念、用途、使用方法、适…

mac安装高版本git(更新git)

问题 问题:新下载的idea,此idea的版本较高,但是在工作发现这个版本的git存在一定漏洞会导致一些信息泄露问题。 1.安装Homebrew 对于Mac更新git,最简单的就是使用brew命令。所以我们首先下载homebrew。已下载的同学忽略直接下一…

【数据结构陈越版笔记】进阶实验1-3.1:两个有序序列的中位数

我这答案做的可能不对,如果不对,欢迎大家指出错误,思路大部分直接写在注释中了。 进阶实验1-3.1:两个有序序列的中位数 已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列 A 0 , A 1 , . . . , A n −…

ES升级--05--快照生成 和备份

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 备份ES数据1.关闭集群自动均衡2.执行同步刷新3.停止集群节点的Elasticsearch服务4.修改Elasticsearch配置文件,开启快照功能,配置仓库目录为…

微信群发机器人.使用指南.

0.简介 1.介绍 微信群发机器人是用来群发微信消息的工具,通过控制电脑的键盘和鼠标操作微信app来实现群发.支持的消息类型有:文字,图片,视频,文件,小程序,位置等. 群发机器人也可以将微信联系人中的信息保存到电脑csv表格中,以供分析. 因其是通过模拟用户操作鼠标键盘来实现群…

the histogram of cross-entropy loss values 交叉熵损失值的直方图以及cross-entropy loss交叉熵损失

交叉熵损失值的直方图在机器学习和深度学习中有几个重要的作用和用途: 评估模型性能: 直方图可以帮助评估模型在训练数据和测试数据上的性能。通过观察损失值的分布,可以了解模型在不同数据集上的表现情况。例如,损失值分布的形状和范围可以反…

C++中extern “C“的用法

目的 extern "C"是经常用到的东西,面试题目也经常出现,然则,实际用时,还是经常遗忘,因此,深入的了解一下,以增强记忆。 extern "C"指令非常有用,因为C和C的近亲…

Android MediaMetadataRetriever获取视频宽高,Java

Android MediaMetadataRetriever获取视频宽高,Java public static int[] getVideoSize(Context ctx, Uri uri) {MediaMetadataRetriever retriever new MediaMetadataRetriever();int[] size {-1, -1}; //宽,高try {retriever.setDataSource(ctx, uri)…

双向转发检测BFD(学习笔记)

定义 双向转发检测BFD(Bidirectional Forwarding Detection)是一种全网统一的检测机制,用于快速检测、监控网络中链路或者IP路由的转发连通状况 BFD检测机制 BFD的检测机制是两个系统建立BFD会话,并沿它们之间的路径周期性发送B…

Java 开发实例:Spring Boot+AOP+注解+Redis防重复提交(防抖)

文章目录 1. 环境准备2. 引入依赖3. 配置Redis4. 创建防重复提交注解5. 实现AOP切面6. 创建示例Controller7. 测试8. 进一步优化8.1 自定义异常处理8.2 提升Redis的健壮性 9. 总结 🎉欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨…

King Media 8.2 中文版安装

King Media-Viral Magazine News Video是一个用于架设社交网站的php脚本,能让您创建一个视频、新闻和图像的新颖社交网站。 功能 支持:从Url、Youtube、Vimeo、Vine、Instagram、Metacafe、DailyMotion上传和分享图片通过Facebook、谷歌、雅虎、Github和…

EC20通信模块升级失败 Quectel QDLoader 9008

这里写自定义目录标题 usb驱动下载固件和升级软件下载开始升级上述过程升级失败,出现Quectel QDLoader 9008寻找解决方案,事了QPS t不行,最终使用这个Quectel_Customer_FW_Download_Tool软件解决下载链接: 所有下载驱动、固件、软…

C++数据结构02 队列及其应用

目录 队列及其特点 利用数组模拟队列的基本操作 创建队列 空队条件 元素入队 元素出队 模拟超市收银问题 队列操作 初始化 入队操作 出队操作 取出队首元素 STL模板中队列的基本使用 训练:约瑟夫问题 参考程序 队列及其特点 队列是一种特殊的线性表&am…