组成原理(一):基本概述

编程入门 行业动态 更新时间:2024-10-03 17:15:52

组成<a href=https://www.elefans.com/category/jswz/34/1770123.html style=原理(一):基本概述"/>

组成原理(一):基本概述

系列文章目录

 组成原理(一):基本概述
组成原理(二):总线
组成原理(三):存储器(上)
组成原理(四):存储器(中)


目录

前言

(一)计算机的基本组成

1.冯·诺伊曼计算机的特点

1.1.改进,以存储器为中心

1.2.现代计算机硬件框架

1.3.系统复杂性管理的方法

2.存储器的基本组成

3.运算器的基本组成及操作过程

3.1.各寄存器作用

3.1.1.减法

3.1.2.加法

3.1.3.乘法

3.1.4.除法

3.控制器的基本结构

3.1.功能

3.2.完成一条指令

3.3.完成一条指令具体过程

3.3.1.取数指令

3.3.2.存数指令

3.4.完成ax2 + bx + c程序的运行过程

(*二)计算机硬件的主要技术指标

1.机器字长

2.运算速度

3.存储容量

(三)计算机发展史

1.计算机的产生

2.现代计算机发展的驱动力

2.1.需求、需求、还是需求(重要的事情说三遍)

2.2.技术发展

3.典型计算机举例

4.微型计算机的出现和发展

4.1.微处理器

4.2.微型计算机

4.3.微处理器发展

4.4.Moore定律

5.计算机软件的发展

5.1.各种语言

5.2.系统软件

5.3.软件发展的特点

6.计算机的应用


前言

哈工大计组网课的笔记,教材是《计算机组成原理》(唐朔飞)


(零)导论

计算机组成与计算机体系结构从研究内容上来说的区别

  • 计算机组成:实现计算机体系结构所体现的属性(具体指令的实现)

  • 计算机体系结构:机器语言程序员所见到的计算机系统的属性(所编写程序能正确执行所必须了解的计算机属性,一般指指令集、寄存器文件的组织、内存的编址单位、指令集能都对那些数据类型进行操作。这些统称为数据表示),概念性的结构与功能特性(指令系统、数据类型、寻址技术、l/o机理)定义软硬件的交界面,定义具体那些功能由软件实现,那些功能由硬件实现,上层软件编写和硬件交互的接口

举个例子

  • 计算机组成:如何实现乘法指令(逻辑实现)
  • 计算机体系结构:规定和定义的内容有无乘法指令,对什么类型的数据进行乘法操作,数据长度是多长
     

(一)计算机的基本组成

1.·诺伊曼计算机的特点

  • 计算机由运算器、存储器、控制器、输入设备、输出设备五大部件组成。
  • 指令和数据以同等地位存于存储器,可按地址寻访。
  • 指令和数据用二进制表示。
  • 指令由操作码和地址码组成。
  • 存储程序。
  • 以运算器为中心

  • 输入设备(将信息转换成机器能识别的形式)

  • 输出设备(将结果转换成人们熟悉的形式)

  • 运算器(核心)(算术运算、逻辑运算)

  • 控制器(指挥控制程序运行)

  • 存储器(存放程序和数据)

存在问题:整个冯·诺依曼计算机以运算器为中心,输入、输出都要运算器来处理,而运算器本身还要处理算数与逻辑运算,这样运算器会非常繁忙,会使运算器会成为整个计算机的瓶颈。

1.1.改进,以存储器为中心

1.2.现代计算机硬件框架

由上图的层次划分,可以画出现代计算机的硬件框架

1.3.系统复杂性管理的方法

  • 层次化(Hierarchy):将被设计的系统划分为多个模块或子模块。
  • 模块化(Modularity):有明确定义的功能与接口。
  • 规则化(Reguarity):使规范化,模块间更容易被重用。

不仅是计算机硬件遵循设计这个方法,在整个计算机技术中,大部分复杂设计都会据此考虑设计,比如计算机网络体系结构的OSI七层参考模型等等。

2.存储器的基本组成

  • MAR:存储器地址寄存器,保存存储单元的地址(编号),反映存储单元的个数。
  • MDR:存储器数据寄存器,保存了要存入存储体的数据,或者是刚刚从存储体取出来的数据,反映了存储字长。

举个栗子:设MAR=4位,MDR=8位,则存储单元的个数为16,存储字长为8位。

3.运算器的基本组成及操作过程

  • ALU——Arithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件;
  • ACC——Accumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器;
  • MQ——Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。

ACC

MQ

X

加法

被加数/和

加数

减法

被减数/和

减数

乘法

乘积高位

乘积/乘积低位

被乘数

除法

被除数/余数

除数

3.1.各寄存器作用

3.1.1.减法

指令包含两部分:第一部分减法指令,第二部分内存中减数的地址M

初始状态中被减数已经存放在ACC里面(之前先要有一条指令把数据输入到ACC当中)减数放置在X中

减法法操作使用ALU实现,结果保存在ACC当中

方括号表示地址[ ⋅ ] 的内容
 

3.1.2.加法

指令包含两部分:第一部分加法指令,第二部分内存中加数的地址M

初始状态中被加数已经存放在ACC里面(之前先要有一条指令把数据输入到ACC当中)加数放置在X中

加法操作使用ALU实现,结果保存在ACC当中
 

3.1.3.乘法

指令包含两部分:第一部分乘法指令,第二部分内存中乘数的地址M

初始状态中被乘数已经存放在ACC里面(之前先要有一条指令把数据输入到ACC当中)乘数放置在X中

操作1234顺序是有控制器控制的,12可同时进行或交换顺序

双斜线表示位连接

3.1.4.除法

指令包含两部分:第一部分除法指令,第二部分内存中除数的地址M

初始状态中被除数已经存放在ACC里面(之前先要有一条指令把数据输入到ACC当中)除数放置在X中

商放入MQ 余数放入ACC

3.控制器的基本结构

3.1.功能

  • 解释指令,即从取址,到分析 ,到取操作数,到执行,一直到保存结果的全过程。
  • 保证指令按顺序地执行。

3.2.完成一条指令

取指令:把内存单元中保存的指令取出来,送入控制器

分析指令:解析出操作码部分,送给控制单元,进行分析

执行指令:由控制单元控制相应的执行部件去完成指令所需要的操作

PC(程序计数器):存放当前要执行指令的地址,具有计数功能(PC)+1—>PC

IR(指令寄存器):存放当前要执行的指令

CU(控制单元):控制有序地执行指令所需的操作

3.3.完成一条指令具体过程(存+取)

        3.3.1.取数过程

        取指令

  • PC中存储的地址送入MAR
  • MAR根据地址寻找存储体中的存储位置
  • 找到的指令数据送入MDR
  • MDR将缓存的指令数据送入IR

分析指令

  • IR中的指令操作码送入CU,经过译码以后在CU中完成

        执行指令

  • 在控制器的控制之下,将指令中的取数所需地址从IR送入MAR
  • MAR根据地址寻找存储体中的存储位置
  • 找到的数据送入MDR
  • MDR将缓存的数据送入ACC
3.3.2.存数过程

        存指令

  • PC中存储的地址送入MAR
  • MAR根据地址寻找存储体中的存储位置
  • 找到的指令数据送入MDR
  • MDR将缓存的指令数据送入IR

        分析指令

  • IR中的指令操作码送入CU,经过译码以后在CU中完成

        执行指令

  • 在控制器的控制之下,将指令中存数的地址从IR送入MAR
  • MAR根据地址寻找存储体中的存储位置
  • 将ACC的数据送入MDR
  • MDR将缓存的数据送入存储体

3.4.完成ax2 + bx + c程序的运行过程

  • 将程序通过输入设备送至计算机
  • 程序首地址 ——> PC
  • 启动程序运行
  • 取指令 PC —> MAR —> 存储体 —> MDR —> IR,(PC)+ 1 ——> PC(更新PC)
  • 分析指令 OP(IR)—> CU
  • 执行指令 AD(IR)—> MAR —> 存储体 —> MDR —> ACC

········

  • 打印结果(也应该是取指令+分析指令+执行指令)
  • 停机

(*二)计算机硬件的主要技术指标

1.机器字长

CPU一次能处理的数据的位数,通常与CPU中的的寄存器位数有关。

2.运算速度

  • 主频
  • 核数,每个核支持的线程数
  • CPI:执行一条指令所需要的时钟周期数
  • IPC:一个时钟周期可以完成的指令数(描述超标量计算机)
  • MIPS:每秒执行百万条指令
  • FLOPS:每秒浮点运算次数(更科学)
  • 吉普森法 :按照每条指令出现的频率,来计算指令执行时间的加权平均值

fi就是每条指令在程序中出现的频率,分为动态使用频率和静态使用频率

3.存储容量

存放二进制信息的总位数

(三)计算机发展史

1.计算机的产生

1946年 —— 美国 —— ENIAC ——- 十进制运算 —— 1955年退役

18000

多个电子管

1500

多个继电器

150

千瓦功耗

30

吨重量

1500

平方英尺占地

5000

次加法/秒

用手工搬动开关和插拔电缆来编程。

2.现代计算机发展的驱动力

2.1.需求、需求、还是需求(重要的事情说三遍)

2.2.技术发展

  • 电子技术的发展(硬件技术的发展是关键)
  • 计算机体系结构技术的发展

硬件技术对计算机更新换代的影响

3.典型计算机举例

3.1.IAS

由普林斯顿大学的先进技术研究所于1946开始设计,1952投入运行,是典型的以运算器为中心的冯·诺伊曼结构的机器。

3.2.IBM System / 360

IBM公司50亿的大豪赌,1961年开始研制,1964年研制成功,是IBM公司划时代、里程碑式的产品。(一系统的通用产品)

  • 贡献:IBM System / 360研发过程中,提出了计算机系统结构这个概念,给出了计算机系统软硬件的交界面,使软硬件可以同时设计研发,缩短研发时间。当软硬件接口给定后,不同的硬件配置可以执行相同功能,可以根据需求选择不同的硬件配置,也因为有了体系结构这个概念,就有了系列机与兼容机。

4.微型计算机的出现和发展

4.1.微处理器

一般是指用一片大规模的集成电路组成的处理器,这个处理器上集成了运算器和控制器。

4.2.微型计算机

是指使用微处理器的,集成度相当高的大规模集成电路构成的面向个人用户的,体积小重量轻,价格低的计算机。

4.3.微处理器发展

在1970年出现了第一款存储器芯片容量只有256位,随后存储器芯片的存储容量不断增大。在1971年inter公司推出了第一块4位的芯片4004,随后一直发展到今天的64位的芯片,芯片上可集成超过30亿个晶体管。

4.4.Moore定律

Inter公司的缔造者之一Gordon Moore提出:微芯片上集成的晶体管每三年翻两番。

5.计算机软件的发展

5.1.各种语言

  • 机器语言 ——- 面向机器
  • 汇编语言 ——- 面向机器
  • 高级语言 ——- 面向问题

5.2.系统软件

  • 语言处理软件:汇编程序、编译程序、解释程序
  • 操作系统:DOS、UNIX、Windows、Linux、Kylin Linux
  • 服务性程序:装配、调试、诊断、排错
  • 数据库管理系统:数据库和数据管理软件
  • 网络软件:防火墙

5.3.软件发展的特点

  • 开发周期长
  • 制作成本高昂
  • 检测软件产品质量的特殊性
  • 软件是程序以及开发、使用和维护程序所需要的所有文档

6.计算机的应用

  • 科学计算和数据处理
  • 工业控制和实时控制
  • 网络技术
  • 电子商务
  • 网络教育
  • 敏捷制造
  • 虚拟现实
  • 办公自动化和信息管理系统
  • CAD(计算机辅助设计)/ CAM(计算机辅助制造)/ CIMS(计算机集成制造系统)
  • 多媒体技术
  • 人工智能技术
  • ............

更多推荐

组成原理(一):基本概述

本文发布于:2024-02-28 03:06:54,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1767875.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:原理

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!