目录

1.计算机硬件的基本组成

1.1.计算机硬件组成部分

1.2.冯诺依曼计算机的特点

1.3.现代计算机的特点

2.主存储器的基本组成

2.1.MAR和MDR

2.2.存储单元、存储字长和存储字

2.3.运算器的基本组成

2.4.控制器的基本组成

2.5.计算机工作过程

3.计算机系统的层次结构

4.计算机的性能指标

4.1.存储器的性能指标

4.2.CPU的性能指标


1.计算机硬件的基本组成

1.1.计算机硬件组成部分

1.存储程序:将指令以二进制代码的形式存入计算机的主存储器,顺序执行

2.输入设备:将程序和数据以机器所能识别的方式输入计算机(信息转化)

存储器:存放程序和数据

运算器:执行算数运算和逻辑运算

输入设备:将计算机运算结果转换为人类所熟悉的方式(信息转化)

控制器:指挥程序运行

①控制器从存储器中取指令(加减乘除)

②对运算器进行控制进行该指令

③将结果放回存储器

3.软件和硬件在逻辑上是等效,但是软件效率低,价格低,硬件效率高,价格高(乘法)

1.2.冯诺依曼计算机的特点

1.计算机由五大部件组成:运算器、控制器、存储器、输入设备、输出设备

2.指令和数据以同等地位存入存储器,按照地址寻址

3.指令和数据用二进制表示

4.指令由操作码和地址码存放组成

操作码:指明该指令进行的具体操作。加减乘除

地址吗:该指令的操作数存放在存储器中的具体地址,对其进行访存操作

5.存储程序

6.以运算器为中心:输入和输出的数据都需要经过运算器(现代计算机以存储器为中心)

1.3.现代计算机的特点

1.以存储器为中心(提升效率,输入和输出数据无须再必须经过运算器)

2.运算器和控制器集合成CPU

3.控制器控制运算器进行操作(加减乘除),控制主存储器的读写和控制I/O设备启动/停止

4.主存储器和CPU进行数据交换(指令),指令送往控制器,运行期对操作数进行相应操作

5.I/O设备和主存储器直接进行数据交换

6.存储器分为主存(主存储器,算为主机)和辅存(硬盘,算为I/O设备)

2.主存储器的基本组成

2.1.MAR和MDR

1.MAR(Memory Address Register):存储地址寄存器(存地址)

2.MDR(Memory Data Register):存储数据寄存器(存数据)

3.取:①将数据的地址存入MAR中

②控制器发出取指令

③根据MAR存放的地址,取出数据放到MDR中

4.存:①将数据想要存放的地址放在MAR中,数据放在MDR中

②控制器发出指令,是存操作

③把MDR中的数据存入MAR相应地址

2.2.存储单元、存储字长和存储字

1.存储体会被分为若干个存储单元,每个地址对应一个存储单元,若MAR想要地址为1的存储单元的数据,存入MAR的地址为1(二进制存储,具体位数根据情况)

2.存储单元:每个存储单元存放一串二进制代码(外部看)

3.存储字:存储单元存放的二进制代码的组合(内部看)

4.存储字长:存储单元中二进制代码的位数(8bit的整数倍)

5.存储元:存储二进制的电子元件,每个存储元可存1bit,多个存储元构成一个存储单元

6.MAR位数反映存储单元的个数(位数即次方数),MDR位数 = 存储字长(存储单元内的数据取出后需要存放在MDR内,因此大小相同)

eg:MAR为4位→共有2 ^ 4个存储单元(4位最多能表示2 ^ 4个数字)

MDR为16位→每个存储单元可以存放16bit,即一个存储字为16bit,存储字长为16bit

2.3.运算器的基本组成

1.运算器作用:实现逻辑运算(与或非)和算数运算(加减乘除)

2.组成部分:

ACC(Accumulator):累加器,用于存放操作数或者运行结果

MQ(Multiple-Quotient):乘商寄存器,在乘、除运算时,用于存放操作数或者运行结果

ALU(Arithmetic and Logic Unit):算数逻辑单元,通过电路实现算术运算和逻辑运算

X:通用寄存器,用于存放操作数(可能会有多个)

2.4.控制器的基本组成

1.组成部分:

CU(Control Unit):控制单元,分析指令,给出控制信号(控制其他部件)

IR(Instruction Register):指令寄存器,存放当前执行的指令

PC(Program Counter):程序计数器,存放下一条指令的地址,有自动加“1”的功能

2.完成一条指令的过程:取指令(PC)→分析指令(区分操作码和地址码)(IR)→执行指令(分析操作码,确定具体操作)(CU)

前两个阶段为取指令,第三个阶段为执行

2.5.计算机工作过程

CPU区分指令和数据的依据:指令周期的不同阶段(取指令→分析指令→执行指令)

①初始情况:

1.主存地址为存储单元的编号

2.地址0-4存储机器指令,分为操作码和地址码,共16bit

3.地址5-8分别存储变量a、b、c、y的数据(二进制)

②执行过程

()为寄存器内的内容,M为主存储器

初始化:(PC)= 0,指向第一条指令的存储位置

1.(PC)→MAR,导致(MAR) = 0:PC的内容通过地址总线存放到MAR中

2.控制器向主存储器表明接下来访问地址为0的数据,并且通过控制总线告诉主存储为读操作

3.M(MAR)→MDR,导致(MDR) = 000001 0000000101:主存储器根据MAR存放的地址从存储体中取出相应数据,并放到MDR中

4.(MDR)→IR,导致(IR)=000001 0000000101 :MDR通过数据总线将MDR存放的内容存放到IR中

5.OP(IR)→CU,指令的操作码送到CU,CU分析后得知这是“取数”命令

6.Ad(IR)→MAR,指令的地址码送到MAR,导致(MAR)= 5

7.M(MAR)→MDR,导致(MDR)= 0000 0000 0000 0010 = 2

8.(MDR)→ACC,导致(ACC)= 0000 0000 0000 0010 = 2

1-4为取指令,5为分析指令,6-8为执行指令(取指令完成后,PC自动加1,指向下一条指令)

此时,(PC)= 1,(ACC) = 2

1.(PC)→MAR,导致(MAR) = 1

2.M(MAR)→MDR,导致(MDR) = 000100 0000000110

3.(MDR)→IR,导致(IR)= 000100 0000000110(取指令完成,PC + 1)

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是乘法指令(分析指令完成)

5.Ad(IR)→MAR,指令的地址码送到MAR,导致(MAR)= 6

6.M(MAR)→MDR,导致MDR = 0000 0000 0000 0011 = 3

7.(MDR)→MQ,导致MQ = 0000 0000 0000 0011 = 3

8.(ACC)→X,导致(X) = 2:执行乘法操作时,将操作数放到X寄存器中

9.(MQ)*(X)→(ACC),导致(ACC)= 6:通过CU控制ALU实现(执行指令完成)

此时,(PC) = 2,(ACC) = 6

1.(PC)→MAR,导致(MAR)= 2

2.M(MAR)→MDR,导致(MDR)= 000011 0000000111

3.(MDR)→IR,导致(IR)= 000011 0000000111(取指令完成,PC+1)

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是加法指令(分析指令完成)

5.AD(IR)→MAR,指令的地址码送到MAR,导致(MAR) = 7(指明C存放的地址)

6.M(MAR)→MDR,导致(MDR)= 0000 0000 0000 0001

7.(MDR)→X,导致(X)= 0000 0000 0000 0001

8.(ACC)+(X)→ACC,导致(ACC)= 7,由ALU实现加法运算(执行指令完成)

此时,(PC)= 3,(ACC)= 7

1.(PC)→MAR,导致(MAR)= 3

2.M(MAR)→MDR,导致(MDR)= 000010 0000001000

3.(MDR)→IR,导致(IR)= 000010 0000001000(取指令完成,PC+1)

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是存数指令(分析指令完成)

5.AD(IR)→MAR,指令的地址码送到MAR,导致(MAR) = 8

6.(ACC)→MDR,导致(MDR)= 7

7.(MDR)→地址为8的存储单元,导致 y = 7(执行指令完成)

此时,(PC)= 4

1.(PC)→MAR,导致(MAR)= 4

2.M(MAR)→MDR,导致(MDR)= 000110 000000-000

3.(MDR)→IR,导致(IR)= 000110 0000000000(取指令完成,PC+1)

4.OP(IR)→CU,指令的操作码送到CU,CU分析后得知,这是停机指令(分析指令完成)

5.操作系统进行后续操作

3.计算机系统的层次结构

1.高级语言:面向用户。C/C++

2.汇编语言:高级语言通过编译程序翻译成汇编语言

3.机器指令:通过汇编程序将汇编语言翻译成机器指令

4.微指令:机器指令进一步分解为微指令,硬件直接执行微指令

5.汇编语言和机器指令一一对应

6.若需要调库,则需要链接,即将文件和库文件结合

7.预处理→编译→汇编→链接

8.编译程序:将高级语言编写的源程序全部语句一次全部翻译成机器语言程序(.exe文件)(只需翻译一次)

解释程序:将源程序的一条语句翻译成对应的机器语言的语句,并立即执行,接着翻译下一句(每次执行都要翻译)

4.计算机的性能指标

4.1.存储器的性能指标

1.总容量 = 存储单元个数 * 存储字长 bit = 存储单元个数 * 存储字长 / 8 Byte

2.可以通过MAR和MDR计算总容量

MAR代表存储单元个数(最多),MDR代表存储字长

eg:MAR为32位,MDR为8位→总容量 = 2 ^ 32 * 8 = 4GB

4.2.CPU的性能指标

1.主频(HZ):数字脉冲信号振荡的频率

时钟周期(微妙,纳秒):主频的倒数,执行指令的每个动作至少需要1个时钟周期

2.CPI(Clock cycle Per Instruction):每条指令的执行需要几个时钟周期(可能会变化),通常取平均值

3.CPU执行时间:CPU时钟周期数 / 主频 = (指令条数)* CPI / 主频

4.IPS(Instruction Per Second):每秒执行多少个指令。IPS = 主频 / CPI(MIPS)

5.FLQPS(Floating-point Operations Per Second):每秒执行多少次浮点运算

K:10 ^ 3→M:10 ^ 6→G:10 ^ 9→T:10 ^ 12→P:10 ^ 15→E:10 ^ 18→Z:10 ^ 21

6.数据通路带宽:数据总线一次所能并行传送数据的位数

7.吞吐量:单位时间内处理请求的数量

8.响应时间:用户发出请求,到系统对其做出反应并得到结果的时间

408计算机组成原理学习笔记——计算机系统概述相关推荐

  1. 计算机组成原理学习笔记——计算机外围设备

    计算机的外围设备 一.输入设备 1.键盘 2.鼠标 二.输出设备 1.显示器 1)CRT 显示器 ①字符显示器 ②图形显示器 2)LCD 显示器 3)LED显示器 2.打印机 1)针式打印机 2)喷墨 ...

  2. 评价微型计算机总线的性能指标,计算机组成原理学习笔记(3):总线

    文章目录 课程笔记导览 附录:英语解释 第三章 总线 3.1 总线的基本概念 使用总线的原因: 总线的定义 总线上信息的传送 总线结构举例 单总线结构 面向CPU的双总线结构 以存储器为中心的双总线结 ...

  3. 计算机组成原理学习笔记一

    计算机组成原理学习笔记一 计算机发展历程 一.计算机硬件发展 (1)计算机的四代变化 (2)计算机元件更新换代 二.计算机软件发展 三.计算机的分类 计算机系统层次结构 一.计算机系统的组成 二.计算 ...

  4. 计算机组成原理学习笔记(上)

    计算机系统概论 计算机发展历程 原始计算工具 中国人的智慧之光 机械式计算机 西方人的智慧 机电式计算机 电子计算机 1,最古老的计算工具:算筹 2,冈特计算尺 3,达芬奇机械式计算机 4,1642年 ...

  5. 408计算机组成原理学习:计算机的基础

    408计算机组成原理学习:计算机的基础 计算机系统 = 硬件 + 软件 硬件:计算机的实体,如主机.外设等 软件:由具有各类特殊功能的程序组成 计算机性能的好坏取决于"软".&qu ...

  6. 计算机组成原理学习笔记第1章 1.3——实验一 计算机性能测试

    计算机组成原理学习笔记第1章 1.3--实验一 计算机性能测试 本篇笔记整理:Code_流苏(CSDN) 目录 计算机组成原理学习笔记第1章 1.3--实验一 计算机性能测试 0️⃣思维导图(自制) ...

  7. 计算机组成原理学习笔记第5章指令系统 5.6——MIPS指令详解

    有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.R型指令 ...

  8. 计算机组成原理学习笔记第6章中央处理器CPU 6.2——数据通路DataPath

    有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.数据通路 ...

  9. 计算机组成原理学习笔记第5章指令系统 5.3——操作数寻址方式

    有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.立即数寻 ...

最新文章

  1. Codeforces 698D Limak and Shooting Points (搜索)
  2. Java Micro-Benchmarking:如何编写正确的基准
  3. 【转】DPDK(一):专业术语
  4. matlab调用python_从MATLAB调用Python函数
  5. bzoj1084 [SCOI2005]最大子矩阵 dp
  6. 常用类 (四) ----- Random随机数类
  7. google地球无法连接_WiFi无法连接?解决macOS Big Sur/Mojave/ Catalina上的Wi-Fi问题
  8. 2017CCPC哈尔滨 B:K-th Number(二分)
  9. 搭建Hadoop集群(二)
  10. java 打印数据_Java 中的打印流
  11. 计算机日志文件事件ID,系统日志出现事件 ID:16001来源:AFD的警告
  12. git 解决push报错:[rejected] master -> master (fetch first) error: failed to push some refs to ‘ ‘
  13. 更新AirPods Max新固件版本以及该如何查看版本号
  14. [详细教程]jdk官方下载,Linux安装jdk1.7,图文解说,一看就会
  15. 解决ios微信公众号h5页面新增底部前进后退导航栏产生的布局问题
  16. ESP8266 驱动1.3寸SH1106 OLED屏幕显示库
  17. 2020双周训练训练日志
  18. 使用tinymce编辑器从word保持原格式复制粘贴的办法
  19. 常用英语口语绝佳句型100句
  20. 192.168.1.10/27,后面的27是什么意思,这样写限制的网络是哪些?

热门文章

  1. shiro for example: not eligible for auto-proxying
  2. mysql前段编写_HTML、CSS、JavaScript、PHP、 MySQL 的学习顺序是什么?
  3. 性能领域:你知道的越多,不知道的也就越多
  4. 游戏中支线任务的设计Pt.1: 如龙0——海量支线搭建起来的不夜城
  5. 实现Python爬虫的思路、原理
  6. Android4.4之后SD卡存储方案
  7. 手撕代码deep image matting(6):dataset(1)
  8. 解决导入nem-core2.jar包后所引发的maven install 失败的问题
  9. SRC赏金平台总结(持续更新中)
  10. 关于爬取企业信息类的爬虫(一)