当前位置: 首页 > news >正文

《计算机组成原理》(第3版)第1章 计算机系统概论 复习笔记

第1章 计算机系统概论

一、计算机系统简介

(一)计算机的软硬件概念
1.计算机系统由“硬件”和“软件”两大部分组成
(1)所谓“硬件”,是指计算机的实体部分,如主机、外部设备等。
(2)所谓“软件”,是指由人们事先编制的具有各类特殊功能的程序组成,如操作系统等。
2.计算机的软件通常又可以分为两大类:系统软件和应用软件
(1)系统软件又称为系统程序,主要用来管理整个计算机系统,监视服务,使系统资源得到合理调度,高效运行。
(2)应用软件又称为应用程序,它是用户根据任务需要所编制的各种程序。

(二)计算机系统的层次结构
1.现代计算机的解题过程,如图1-1所示。
在这里插入图片描述
图1-1 计算机的解题过程
(1)早期计算机只有机器语言,用户用二进制代码来编写程序,如图1-2所示。
在这里插入图片描述
计图1-2 实际机器M1
(2)汇编语言。没有机器能直接识别这种语言,必须先将汇编语言程序翻译成机器语言程序,然后才能被机器接受自动运行。算机系统便具有两级层次结构,如图1-3所示。
在这里插入图片描述
图1-3 具有两级层次结构的计算机系统
(3)高级语言,如FORTRAN、BASIC等。有三级层次结构的计算机系统,如图1-4所示。在这里插入图片描述
图1-4 具有三级层次结构的计算机系统
(4)翻译程序有两种:一种是编译程序,另一种是解释程序。
①编译程序是将用户编写的高级语言程序的全部语句一次全部翻译成机器语言程序,而后再执行机器语言程序。
②解释程序是将源程序的一条语句翻译成对应于机器语言的一条语句,并且立即执行这条语句,接着翻译源程序的下一条语句,并执行这条语句。
(5)由于软件的发展,机器M0是直接将机器M1中的每一条机器指令翻译成一组微指令,即构成一个微程序。这样又可认为计算机系统具有四级层次结构,如图1-5所示。
在这里插入图片描述
图1-5 具有四级层次结构的计算机系统
(6)上述四级层次结构的系统中,实际上在实际机器M1与虚拟机器M2之间还有一级虚拟机器,它是由操作系统软件构成的,如图1-6所示。
在这里插入图片描述
图1-6 多级层次结构的计算机系统

(三)计算机组成和计算机体系结构
1.计算机体系结构
计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性。包括指令集、数据类型、存储器寻址技术、I/O机理等。
2.计算机组成
计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的硬件细节。例如,指令系统体现了机器的属性,这属于计算机结构的问题。但指令的实现,即如何取指令、分析指令、取操作数、运算、送结果等,这些都属于计算机组成问题。

二、计算机的基本组成

(一)冯·诺依曼计算机的特点
冯·诺依曼(Von Neumann)提出了“存储程序”的概念。以此概念为基础的各类计算机通称为冯·诺依曼机。它的特点可归结如下:
①计算机由运算器、存储器、控制器、输入设备和输出设备五大部件组成。
②指令和数据以同等地位存放于存储器内,并可按地址寻访。
③指令和数据均用二进制数表示。
④指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置。
⑤指令在存储器内按顺序存放。通常,指令是顺序执行的,在特定条件下,可根据运算结果或根据设定的条件改变执行顺序。
⑥机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成。

(二)计算机的硬件框图
典型的冯·诺依曼计算机是以运算器为中心的,如图1-7所示。
在这里插入图片描述
图1-7 典型的冯·诺依曼计算机结构框图
现代的计算机已转化为以存储器为中心,如图1-8所示。
在这里插入图片描述
图1-8 以存储器为中心的计算机框图
1.图中各部件的功能
①运算器用来完成算术运算和逻辑运算,并将运算的中间结果暂存在运算器内;
②存储器用来存放数据和程序;
③控制器用来控制、指挥程序和数据的输入、运行以及处理运算结果;
④输入设备用来将人们熟悉的信息形式转换为机器能识别的信息形式;
⑤输出设备可将机器运算结果转换为人们熟悉的信息形式。
2.现代计算机由三大部分组成:
CPU、I/O设备及主存储器(Main Memory,MM),如图1-9所示。
在这里插入图片描述
图1-9 现代计算机的组成框图
(1)算术逻辑单元(Arithmetic Logic Unit,ALU)简称算逻部件,用来完成算术逻辑运算。
(2)控制单元(Contro1 Unit,CU)用来解释存储器中的指令,并发出各种操作命令来执行指令。ALU和CU是CPU的核心部件。
(3)I/O设备也受CU控制,用来完成相应的输入、输出操作。

(三)计算机的工作步骤
1.上机前的准备
(1)建立数学模型
建立数学模型,研究对象的变化规律就变成了解一系列数学问题,可通过计算机求解。
(2)确定计算方法
确定对应的计算方法,将其变成适合计算机运算的加、减、乘、除四则运算
(3)编制解题程序
编制解题程序就是将运算步骤用一一对应的机器指令描述。
2.计算机的工作过程
细化的计算机组成框图,如图1-10所示。
在这里插入图片描述
图1-10 细化的计算机组成框图
(1)主存储器
主存储器(简称主存或内存)包括存储体M、各种逻辑部件及控制电路等。主存的工作方式就是按存储单元的地址号来实现对存储字各位的存(写入)、取(读出)。
(2)运算器
运算器最少包括3个寄存器和一个算术逻辑单元(ALU)。表1-1列出了寄存器存放不同类别操作数的情况。
在这里插入图片描述
表1-1 各寄存器所存放的各类操作数
(3)控制器
控制器是计算机的神经中枢,由它指挥各部件自动、协调地工作。控制器由程序计数器(Program Counter,PC)、指令寄存器(Instruction Register,IR)以及控制单元(CU)组成。
①PC用来存放当前欲执行指令的地址,且具有自动加1的功能,即可自动形成下一条指令的地址。
②IR用来存放当前的指令,IR的内容来自主存的MDR。IR中的操作码(OP(IR))送至CU,记作OP(IR)→CU,用来分析指令。
(4)I/O
I/O子系统包括各种I/O设备及其相应的接口。

三、计算机硬件的主要技术指标

(一)机器字长
机器字长是指CPU一次能处理数据的位数,通常与CPU的寄存器位数有关。

(二)存储容量
存储器的容量应该包括主存容量和辅存容量。主存容量是指主存中存放二进制代码的总位数。辅存容量通常用字节数来表示。

(三)运算速度
计算机的运算速度与机器的主频、执行什么样的操作、主存本身的速度(主存速度快,取指、取数就快)等都有关。

相关文章:

《计算机组成原理》(第3版)第1章 计算机系统概论 复习笔记

第1章 计算机系统概论 一、计算机系统简介 (一)计算机的软硬件概念 1.计算机系统由“硬件”和“软件”两大部分组成 (1)所谓“硬件”,是指计算机的实体部分,如主机、外部设备等。 &#xff0…...

达梦数据库的系统视图v$cachers

达梦数据库的系统视图v$cachers 达梦数据库的系统视图V$CACHERS的作用是显示缓存中的项信息,在 ini 参数 USE_PLN_POOL !0 时才统计。这个视图帮助数据库管理员监控和分析缓存的使用情况,优化数据库性能。通过查询V$CACHERS视图,可以获取缓存…...

电路元件基本知识详解

电路元件基本知识详解 在现代电子技术中,电路元件是构成各种电子电路的基本单元。它们各自具有不同的特性和功能,通过不同的连接方式实现多种多样的电路功能。本文将详细介绍几种常见的电路元件及其基本知识。 ### 一、电阻器 #### 1. 电阻器的基本概…...

从零开始写一个微信小程序

从零开始写一个微信小程序可以分为几个步骤。以下是一个详细的指南,帮助你从头到尾完成一个简单的微信小程序。 ### 一、准备工作 1. **注册微信小程序账号**: - 前往[微信公众平台](https://mp.weixin.qq.com/)注册一个小程序账号。 - 进行企业认证(个人账号需要申…...

07030405复杂可编程逻辑器件CPLD现场可编程阵列FPGA

复杂可编程逻辑器件CPLD&现场可编程阵列FPGA 7.3 复杂可编程逻辑器件CPLD7.3.1CPLD的结构 7.4现场可编程门阵列FPGA7.4.1FPGA实现逻辑功能的基本原理7.4.2FPGA结构简介1.可编程逻辑块2.I/O块3.可编程连线资源CPLD与FPGA的区别 7.5可编程逻辑器件开发过程简介编程条件 7.3 复…...

《雅思口语真经总纲1.0》话题实战训练笔记part1——5. Bus or taxi

《雅思口语真经总纲1.0》笔记——第四章:口语素材大全(part1、part2、part3回答准则及练习方法,不包括范例答案)★★★★★ 文章目录 Bus or taxiHou often do you take the bus?20240803答评价疑问 When was the first time you…...

《工程检索增强生成系统时的七个失败点》论文 AI 解读

周末使用 AI 速度了一篇 RAG 相关的论文,文中提到的【设计 RAG 系统时需要考虑的七个失败点】非常有价值,简单整理一下分享出来,大家如果感兴趣可以继续阅读原文。 论文名称:Seven Failure Points When Engineering a Retrieval A…...

每日一题——贪心算法

1005. K 次取反后最大化的数组和 - 力扣(LeetCode) 题解: 一开始有点理解错他的意思,以为是i是题目中会给出,所以一开始没有什么思路,然后当看了题解之后,就知道了原来i是自己订的&#xff0c…...

Artix7系列FPGA实现SDI视频编解码+图像缩放+多路视频拼接,基于GTP高速接口,提供4套工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本博已有的FPGA图像缩放方案本博已有的已有的FPGA视频拼接叠加融合方案本方案的无缩放应用本方案在Xilinx--Kintex系列FPGA上的应用本方案在Xilinx--Zynq系列FPGA上的应用 3、详细设计方案设计原理框图S…...

HTTP 状态码详细介绍

超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内…...

React前端面试每日一试 5.什么是受控组件和非受控组件?

在React中,受控组件和非受控组件是两种处理表单数据的方式。理解这两种方式对于管理和维护表单状态非常重要。 受控组件(Controlled Components) 受控组件是指那些表单数据完全由React组件的状态控制的组件。也就是说,表单元素的…...

代码随想录打卡第四十四天

代码随想录–动态规划部分 day 44 动态规划第11天 文章目录 代码随想录--动态规划部分一、力扣1143--最长公共子序列二、力扣1035--不相交的线三、力扣53--最大子数组和四、力扣392--判断子序列 一、力扣1143–最长公共子序列 代码随想录题目链接:代码随想录 给定…...

【JAVA】枚举类的使用:通过枚举类名称得到对应值进行输出

枚举类其实就是一个特殊的class。 /*** ClassName: CardType* Description:数字卡类型对应的文字卡类型*/ public enum CardType {NORMAL_CARD("金普卡"),BUSINESS_CARD("商务卡"),PRIVATE_CARD("黑金无限卡");private String cardName;CardTyp…...

20240731软考架构------软考6-10答案解析

每日打卡题6-10答案 6、【2012年真题】 难度:一般 若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库&#xff0c…...

学习记录——day25 多线程编程 临界资源 临界区 竞态 线程的同步互斥机制(用于解决竟态)

目录 ​编辑 一、多进程与多线程对比 二、 临界资源 临界区 竞态 例1:临界资源 实现 输入输出 例2:对临界资源 进行 减减 例子3:临界资源抢占使用 三、线程的同步互斥机制(用于解决竟态) 3.1基本概念 3.2线…...

[RK3566]linux下使用upgrade_tool报错

linux下使用upgrade_tool报错Creating Comm Object failed! Rockusb>uf /home/zhuhongxi/RK3566_AOSP_SDK/rockdev/Image-rk3566_tspi/update.img Loading firmware... Support Type:RK3568 FW Ver:b.0.00 FW Time:2024-08-03 12:00:09 Loader ver:1.01 Loader Time:…...

系统架构师(每日一练13)

每日一练 答案与解析 1.应用系统构建中可以采用多种不同的技术,()可以将软件某种形式的描述转换为更高级的抽象表现形式,而利用这些获取的信息,()能够对现有系统进行修改或重构,从而产生系统的一个新版本。答案与解析 问题1 A.逆…...

Error: No module factory available for dependency type: CssDependency

本篇主要用来记录VUE打包的问题点,今天使用npm run build:prod 打包VUE出现如下问题: Error: No module factory available for dependency type: CssDependency 因为测试和预发布都挺正常的,正式环境竟然出问题,废话不多说&…...

【langchain学习】使用Langchain生成多视角查询

使用Langchain生成多视角查询 导入所需库: from langchain.prompts import ChatPromptTemplate from langchain_core.output_parsers import StrOutputParser from langchain_core.runnables import RunnablePassthrough from config import llm设置提示模板&#x…...

ASPCMS 漏洞详细教程

一.后台修改配置文件拿shell 登录后台 如下操作 保存并抓包 将slideTextStatus的值修改为1%25><%25Eval(Request(chr(65)))25><%25 放包&#xff08;连接密码是a&#xff09; 然后用工具连接 成功连接...

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源&#xff08;HTML/CSS/图片等&#xff09;&#xff0c;响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址&#xff0c;提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学&#xff1f;传统医学奠基期&#xff08;远古 - 17 世纪&#xff09;近代医学转型期&#xff08;17 世纪 - 19 世纪末&#xff09;​现代医学成熟期&#xff08;20世纪至今&#xff09; 中医的源远流长和一脉相承远古至…...

Python Einops库:深度学习中的张量操作革命

Einops&#xff08;爱因斯坦操作库&#xff09;就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库&#xff0c;用类似自然语言的表达式替代了晦涩的API调用&#xff0c;彻底改变了深度学习工程…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

用 Rust 重写 Linux 内核模块实战:迈向安全内核的新篇章

用 Rust 重写 Linux 内核模块实战&#xff1a;迈向安全内核的新篇章 ​​摘要&#xff1a;​​ 操作系统内核的安全性、稳定性至关重要。传统 Linux 内核模块开发长期依赖于 C 语言&#xff0c;受限于 C 语言本身的内存安全和并发安全问题&#xff0c;开发复杂模块极易引入难以…...

echarts使用graphic强行给图增加一个边框(边框根据自己的图形大小设置)- 适用于无法使用dom的样式

pdf-lib https://blog.csdn.net/Shi_haoliu/article/details/148157624?spm1001.2014.3001.5501 为了完成在pdf中导出echarts图&#xff0c;如果边框加在dom上面&#xff0c;pdf-lib导出svg的时候并不会导出边框&#xff0c;所以只能在echarts图上面加边框 grid的边框是在图里…...

动态规划-1035.不相交的线-力扣(LeetCode)

一、题目解析 光看题目要求和例图&#xff0c;感觉这题好麻烦&#xff0c;直线不能相交啊&#xff0c;每个数字只属于一条连线啊等等&#xff0c;但我们结合题目所给的信息和例图的内容&#xff0c;这不就是最长公共子序列吗&#xff1f;&#xff0c;我们把最长公共子序列连线起…...