408计算机组成原理

news2024/11/26 10:21:30

todo:有逻辑的分门别类的整理笔记,方便复习

理解不了就直接背下来,学越多就越能理解

计算机系统概述

简要目录

基本概念
字长
MAR
MDR
PC
IR
CU
ALU
通用寄存器、标志寄存器、标志控制器
ACC
地址译码器
通用寄存器
PU
C语言编译过程
数据通路带宽
数据通路宽度
字长、字数
主存

概念名词
吞吐量
响应时间
cpu时钟周期
主频
CPI
IPS
CPU执行时间

基本概念

主存储器和辅助存储器,也就是我们所说的主存和辅存。主存一般就是指内存,辅存指的就是磁盘


  • 存储单元(Storage Cell)则是由多个存储元组成的,通常可以存放一个字节(Byte,即8个二进制位)的信息。而存储元(Storage Element)是存储器中最小的存储单位,用于存放一个二进制位(bit),即0或1,一个存储单元就存放8个存储元,一个存储单元通常存放 1 个字节
  • 1 个字节包含 8 个二进制位(也称为存储元)。存储字长指的是计算机内存中每个存储单元可以容纳的二进制位数。多个存储单元组成存储字
  • 存储容量是计算机内存系统的总容量,通常以字节(byte)为单位来表示。
    例:一个存储单元包含8个存储单元,一个存储单元包含一个二进制位,8个二进制位组成一个字节,存储字长为8

硬盘驱动器是计算机中用于存储和读取数据的设备,它通常被简称为硬盘


字长:
通常所说的"某16位或32位机器”,其中的16、32指的是机器字长,简称字长。字长是指计算机进行一次整数运算(即定点整数运算)所能处理的二进制数据的位数,通常与CPU的寄存器位数、ALU有关。因此,字长一般等于通用寄存器的位数或ALU的宽度,字长越长,数的表示范围越大,计算精度越高。计算机字长通常选定为字节(8 位)的整数倍。

机器字长:指计算机能直接处理的二进制数据的位数。它反映了计算机的运算精度和数据处理能力。
指令字长:是指机器指令中二进制代码的位数。
存储字长:指一个存储单元中能存储的二进制数据的位数。
存储单元的字长:存放在一个存储单元中的二进制代码的位数


MAR(Memory Address Register)
介绍:即存储器地址寄存器。
作用:是存储存储器的地址,用于指明要访问的存储单元的位置。功能是1.提供地址:确定数据在存储器中的位置。2.访问存储器:帮助 CPU 找到所需的数据;地址寄存器
字长:


MDR(Memory Data Register)
介绍:存储器数据寄存器
作用:用于暂时存放从内存中读取或将数据写入内存的数据,当 CPU 需要从内存中读取数据时,它将地址发送给内存控制器,并将从内存中读取的数据暂时存放在 MDR 中。同样地,当 CPU 需要将数据写入内存时,它会将数据存放在 MDR 中,并发送给内存控制器进行写入操作。
-MDR 通常与另一个寄存器 MAR(Memory Address Register)配合使用。MAR 用于存储要访问的内存地址,而 MDR 用于存储与该地址相关联的数据。通过使用 MDR 和 MAR,CPU 能够与内存进行数据的读取和写入操作,实现了计算机中的数据传输功能。
例:cpu从内存读取数据的过程如下:PU 在内存中读取数据的过程通常是先通过 MAR 去寻找存储单元的位置,然后再使用 MDR 通过内存控制器读取内存中的数据。流程如下①CPU 发出读取数据的指令。②MAR 接收指令并确定要读取的数据在内存中的地址。③内存控制器根据 MAR 提供的地址找到对应的存储单元。④MDR 通过内存控制器从找到的存储单元中读取数据。⑤读取的数据被传输到 CPU 进行处理





在这里插入图片描述
程序计数器(PC):用于存储下一条指令的地址。它在程序执行过程中不断更新,指示CPU 下一步要执行的指令位置,追踪下一条要执行的指令的地址。 PC(Program Counter,程序计数器)

指令寄存器(IR):用于暂存当前正在执行的指令。它接收从存储器中读取的指令,并将其提供给控制单元进行处理。

控制单元(CU):具有以下功能:

  1. 指令译码:解释指令的含义,确定需要执行的操作。
  2. 控制信号生成:根据译码结果,生成各种控制信号,用于控制其他组件的操作。
  3. 时序控制:确保指令按照正确的顺序和时间执行。
  4. 异常处理:处理程序执行中的异常情况。
  5. 中断处理:管理中断请求,在适当的时候进行中断处理。

它们共同协作,实现指令的读取、解码和执行,确保计算机系统的正常运行。具体来说:
PC 帮助 CPU 按顺序获取指令。
IR 提供当前指令的信息。
CU 对指令进行处理,并控制其他组件的操作。


ALU(Arithmetic Logic Unit)
即算术逻辑单元,它是中央处理器(CPU)的一个重要组成部分。主要功能包括执行算术运算(如加、减、乘、除)和逻辑运算(如与、或、非)。


**通用寄存器组(GPRs)**是一组可用于存储数据的寄存器

标志寄存器用于记录运算结果的一些状态信息

标志控制器负责对标志寄存器进行管理和控制


ACC 通常指“Accumulator”,即累加器。
累加器是运算器的一部分,主要用于暂时存储运算的中间结果或最终结果。


地址译码器
主要作用是将输入的地址信号转换为特定的输出信号,用于选中特定的存储单元或其他硬件资源。1.用于地址映射:将抽象的地址转换为具体的硬件位置。2.资源选择:确定要访问的特定存储单元或硬件设备。


通用寄存器
在计算机系统中具有多种重要作用,包括:
暂存数据:用于临时存储数据,以便进行快速的运算和处理。

支持多种操作:可用于算术、逻辑、转移等多种操作。

提供操作数:为指令执行提供操作数。

保存中间结果:方便后续操作使用。


PU(中央处理器)
通常包括以下几个主要部分:
运算器:执行算术和逻辑运算。
控制器:负责控制和协调计算机的操作。
寄存器组:用于临时存储数据和指令。


C语言编译的过程
在这里插入图片描述
程序员是是用高级编程语言编写的源程序,然后通过编译器变成汇编语言的形式就是汇编源程序,然后通过汇编程序转为机器语言指令就是目标程序,再经过链接程序合并各个模块的目标代码成为可执行程序

编译程序是先完整编译后运行的程序,如C、C++等;解释程序是逐句翻译且边翻译边执行的程序,如JavaScript、 Python 等。

解释程序,将源程序的的一条语句翻译成对应的机器目标代码,并立即执行,翻译一句执行-一句,并且不会生成目标代码文件


各个子系统通过数据总线连接形成的数据传送路径称为数据通路。

数据通路带宽
是指数据总线一次所能并行传送信息的位数,例:一个时间点上,数据总线能够同时传输的二进制位数。一个具有 32 位数据通路带宽的数据总线,能够在一次传输中同时传送 32 位的信息。32 位信息就是 32 位二进制数。

数据通路宽度
数据总线一次能并行传输的数据位数,它决定了数据传输的效率和速度。简单来说,数据通路宽度就像是高速公路的车道数量,车道越多,汽车通过的速度就越快,数据传输的速度也就越快。


主存用字数x字长(如512K*16位)来表示存储容量,
“字数”在这里指的是可以存储的地址数量。就好比有多少个“房间”可以用来存放信息,每个“房间”都对应着一个地址。512K 表示有 512 千个地址(即 512 个“房间”),每个地址可以存储 16 位二进制数。所以,总的存储容量就是这些“房间”能容纳的二进制数的总量啦

字长”指的是计算机一次处理数据的位数,它通常等于 CPU 中通用寄存器的位数。

字数*字长=存储容量
MAR的位数反映了存储单元的个数,MDR的位数反映了存储单位的字长,
在这里插入图片描述


主存储器,也称为主存或内存,其中包括
①随机存取存储器(RAM):能快速存取数据,包括动态 RAM(DRAM)和静态 RAM(SRAM);RAM 用于临时存储程序和数据,速度快但断电后数据丢失。
②只读存储器(ROM):存储固定的程序和数据,不可更改;ROM 常用于存储系统固件和基本的启动程序。
③缓存(Cache):位于 CPU 和主存之间,提高数据访问速度;缓存能减少 CPU 对主存的访问次数,提高系统性能。


吞吐量。指系统在单位时间内处理请求的数量。

响应时间。指从用户向计算机发送一个请求,到系统对该请求做出响应并获得所需结果的等待时间。

CPU时钟周期。机器内部主时钟脉冲信号的宽度,它是CPU工作的最小时间单位。

主频(CPU时钟频率)。机器内部主时钟的频率,即时钟周期的倒数,主频越高,完成指令的一一个执行步骤所用的时间越短,执行指令的速度越快。主频最直观的理解就是每秒有多少个时钟周期。

CPU时钟周期=1/主频,主频通常以Hz (赫兹)为单位,10Hz 表示每秒10次。

CPI (Cycle Per Instruction),即执行一条指令所需的时钟周期数。

IPS (Instructions Per Second),即每秒执行多少条指令,IPS= 主频/平均CPI。

CPU执行时间。指运行一个程序所花费的时间。

不同指令的时钟周期数可能不同,因此对于一个程序或一台机器来说,其CPI指该程序或该机器指令集中的所有指令执行所需的平均时钟周期数,此时CPI是-一个平均值。


错题

在这里插入图片描述
mar有10位,就是第一位存储单元有两种可能性,第二位存储单元也有两种可能性,以此类推,就有2222222222=1024个存储单元,基于每个位置都有两种可能性(比如 0 或 1),然后通过连续相乘来计算总的可能性数量。若一个存储单元存放8个存储元,就一共有有10288的存储元

无论是存储元还是存储单元,它们都是以二进制的形式来存储和处理信息的。

1bit=1存储元=1/8字节=1/8存储单元
8 位(bit)等于 1 字节(byte)
储单元和存储元都只有两种可能性(0 或 1),即二进制, 8 个存储元组成一个存储单元

在计算机领域中,“k”是“kilobyte”的缩写,表示千字节。
1K 等于 1024 字节。

MAR(地址寄存器)和 PC(程序计数器)是计算机中的两个重要组件。MAR 用于存储要访问的存储单元地址,PC 则用于存储程序的当前执行指令的地址。MAR 的长度与 PC 的长度相等,意味着它们的位数相同,通常为16位或32位。

MAR(地址寄存器)和 PC(程序计数器)是计算机中的两个重要组件。MAR 用于存储要访问的存储单元地址,PC 则用于存储程序的当前执行指令的地址。MAR 的长度与 PC 的长度相等,意味着它们的位数相同,通常为16位或32位。


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
CPU(中央处理器)主要包括以下几个部分:
运算器:执行算术运算(如加、减、乘、除等)和逻辑运算(如与、或、非等),是进行数据处理的核心部件。
控制器:负责指挥、协调计算机各部件的工作,包括取指令、分析指令、执行指令等一系列操作的控制。
寄存器:如前面提到的通用寄存器等,用于暂存数据、地址等信息,提高 CPU 的运行效率。
缓存:如一级缓存(L1 Cache)、二级缓存(L2 Cache)等,用于存储经常使用的数据和指令,减少对内存的访问次数,加快数据读取速度。


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
字长指的是 CPU 一次能处理的二进制数据的位数
8 位计算机在进行数据处理时,每次能够同时处理由 8 个二进制位组成的数据
计算机系统以16位来表示代表,地址码长度为16位,地址空间确实主要与地址码的长度有关,而与计算机的字长没有直接的关联
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


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

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

相关文章

Windows系统Maven下载安装

下载: 官网地址:https://maven.apache.org/download.cgi 安装: 下载下来的是一个压缩包,首先将其解压到你的Maven目标安装位置 接下来为其配置其环境变量 (Maven的基础是Java,因此要首先确认已为你的电…

解锁AI的终极秘密:Transformer如何颠覆自然语言处理?

大语言模型系列:Transformer 一、前言二、Transformer诞生的背景三、Transformer横空出世四、Transformer的基本结构4.1. 编码器-解码器架构4.2. 自注意力机制4.3. 多头注意力机制4.4. 前馈神经网络4.5. 残差连接和层归一化 五、Transformer的工作原理5.1输入嵌入5.…

php框架的文档和社区支持如何?

在选择 php 框架时,文档和社区支持至关重要,拥有全面的文档和庞大活跃的社区,而 symfony 的文档内容丰富但更适合高级开发人员。codeigniter 4 的文档易于理解,社区规模较小但活跃。yii 2 的文档全面深入,但格式可能令初学者困惑。…

cpolar:通过脚本自动更新主机名称和端口号进行内网穿透【免费版】

cpolar 的免费版经常会重新分配 HostName 和 Port,总是手动修改太过麻烦,分享一下自动更新配置文件并进行内网穿透的方法。 文章目录 配置 ssh config编写脚本获取 csrf_token打开登陆界面SafariChrome 设置别名 假设你已经配置好了服务器端的 cpolar。 …

Apache DolphinScheduler 亚马逊云科技联合Meetup: 基于云上的最佳实践

引言 随着大数据和云计算技术的快速发展,企业在数据管理和任务调度上面临着前所未有的挑战,包括复杂的配置过程、性能优化和成本管理等问题。同时,确保数据在传输和存储过程中的安全性,并满足合规性要求,也是一个重要…

4LPFA清洗桶带隔板ICP-MS分析清洗系统高洁净特氟龙清洗设备

小瓶清洗系统PFA清洗桶品牌:南京瑞尼克 材质:PFA 耐受温度范围:-200C~260C 小瓶清洗系统是清洗实验室器皿有效的方法。该清洗系统由高纯PFA材质制成,专为热浸泡清洗设计,与传统玻璃烧杯相比,更结实。该小…

物理隔离状态下,如何保障数据单向导入的安全性?

为了保护企业的核心数据,像一些涉密行业会通过物理隔离方式,将网络隔离成内网和外网,比如军工、党政、生物医药、金融等行业,网络隔离后会存在外网数据单向导入内网,内网数据单向导出外网等交互需求。在实施数据单向导…

Python酷库之旅-第三方库openpyxl(01)

目录 一、 openpyxl库的由来 1、背景 2、起源 3、发展 4、特点 4-1、支持.xlsx格式 4-2、读写Excel文件 4-3、操作单元格 4-4、创建和修改工作表 4-5、样式设置 4-6、图表和公式 4-7、支持数字和日期格式 二、openpyxl库的优缺点 1、优点 1-1、支持现代Excel格式…

基于java+springboot+vue实现的便利店信息管理系统(文末源码+Lw)239

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本华府便利店信息管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的…

【机器学习 复习】第6章 支持向量机(SVM)

一、概念 1.支持向量机(support vector machine,SVM): (1)基于统计学理论的监督学习方法,但不属于生成式模型,而是判别式模型。 (2)支持向量机在各个领域内的…

从移动、桌面端到AR/VR:HOOPS Visualize如何实现卓越的3D模型可视化?

在当今迅速发展的技术环境中,高性能、跨平台的图形引擎是工程应用程序开发的核心需求。HOOPS Visualize作为一款领先的3D图形SDK,为桌面、移动和AR/VR应用程序提供了强大的2D和3D图形支持。其设计旨在实现工程应用程序中的高性能可视化,确保在…

还原试卷的软件叫什么?这3款一键还原

还原试卷的软件叫什么?在数字化学习日益普及的今天,学生们在处理试卷时经常面临一个问题:如何高效地将已作答的试卷还原成空白状态以便重复练习?为了解决这一问题,市场上涌现出了多款还原试卷的软件。下面,…

怎么使用Consul当配置中心和动态刷新配置

一、背景 由于Eureka官方已经正式宣布,自2.0起不再维护该项目,如果需要使用2.x,自行承担风险。 项目之前使用的Eureka,现在不维护了则需要寻找替代方案。现在Spring Cloud官方推荐Spring Cloud Consul替换Eureka作为注册中心&…

华为手机怎么找回删除的照片?掌握3个方法,恢复不是梦

由于误删、设备故障、软件更新等原因,我们有时可能会不慎丢失这些宝贵的照片。当面对空空如也的相册时,那种失落感无法言喻。华为手机该怎么找回删除的照片呢?但是,请不要绝望!在科技的帮助下,我们可以采取…

【CT】LeetCode手撕—300. 最长递增子序列

目录 题目1- 思路2- 实现⭐300. 最长递增子序列——题解思路 3- ACM 实现 题目 原题连接&#xff1a;300. 最长递增子序列 1- 思路 模式识别&#xff1a;最长递增子序列——> 利用动规五部曲 解决 ——> 借助 i 和 j 指针&#xff0c;其中 j < i 动规五部曲 1.定义…

深入理解和实现Windows进程间通信(管道)

进程间通信&#xff08;IPC&#xff0c;Inter-Process Communication&#xff09;是指在不同进程之间的数据传输。进程是操作系统分配资源和调度的独立单位&#xff0c;每个进程都有自己独立的地址空间&#xff0c;一个进程无法直接访问另一个进程的数据。因此&#xff0c;当需…

【Linux】进程信号2——阻塞信号,捕捉信号

1.阻塞信号 1.1. 信号其他相关常见概念 在开始内容之前&#xff0c;先介绍一些信号的专业名词&#xff1a; 实际执行信号的处理动作称为信号递达&#xff08;Delivery&#xff09;信号从产生到递达之间的状态&#xff0c;称为信号未决&#xff08;Pending&#xff09;&#…

Numpy: np.memmap详细用法

文章目录 0. 引言1. 基本用法2. 参数说明3. 例子3.1 读取内存映射文件3.2 修改内存映射文件 4. 使用场景5. 注意事项 0. 引言 np.memmap 是 NumPy 提供的一种用于内存映射大文件的类&#xff0c;允许大文件不完全加载到内存中&#xff0c;而是通过内存映射的方式部分加载。这在…

使用 Llama 3 开源和 Elastic 构建 RAG

作者&#xff1a;Rishikesh Radhakrishnan 使用开源的 Llama 3 和 Elastic 构建 RAG Llama 3 是 Meta 最近推出的开源大型语言模型。这是 Llama 2 的后继者&#xff0c;根据已发布的指标&#xff0c;这是一个重大改进。与 Gemma 7B Instruct、Mistral 7B Instruct 等最近发布的…

用于快速充电站的 AC/DC 转换器概述

电动汽车构成了未来实现可持续交通部门的有前途技术的主要部分。AC/DC 转换器是扩展和改进 EV 功能的骨干组件。本文概述了 AC/DC 转换器、充电站类型、传统两电平 (2L) AC/DC 转换器面临的问题以及使用多电平转换器 (MLC) 的重要性。 AC/DC 充电器示意图&#xff08;&#xff…