计算机组成原理基础总结

1.1 计算机发展历程

1.1.1 计算机硬件的发展

计算机系统=硬件+软件

计算机硬件的发展:

  • 第一代计算机:(使用电子管),
  • 第二代计算机:(使用晶体管),
  • 第三代计算机:(使用较小规模的集成),
  • 第四代计算机:(使用较大规模的集成),

1.1.2 计算机软件的发展

计算机软件技术的发展,促进计算机系统的发展。

计算机语言的发展经历了面向机器的机器语言和汇编语言、面向问题的高级语言。其中高级语言的发展真正促进了软件的发展,它经历了从科学计算和工程计算的 FORTRAN、结构化程序设计的 PASCAL到面向对象的C++和适应网络环境的Java。

1.2 计算机系统层次结构

1.2.1计算机系统的组成

计算机系统由硬件系统和软件系统共同组成

1.2.2 计算机硬件的基本组成

1.早期的冯·诺依曼机

美籍匈牙利科学家冯·诺依曼最先提出“程序存储”的思想,并成功将其运用在计算机的设计之中,根据这一原理制造的计算机被称为冯·诺依曼结构计算机。由于他对现代计算机技术的突出贡献,因此冯·诺依曼又被称为“现代计算机之父”。

什么是存储程序原理?按此原理,计算机应具有哪几大功能?

“程序存储”:指令以代码的形式事先输入到计算机的主存储器中,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。即按地址访问并顺序执行指令

计算机按照此原理应具有5大功能:数据传送功能、数据存储功能、数据处理功能、操作控制功能、操作判断功能

冯诺曼体系结构特点:

  1. 计算机硬件系统由五大部件组成(存储器、运算器、控制器、输出设备、输入设备)
  2. 指令和数据以同等地位存于存储器,可按地址寻访
  3. 指令和数据用二进制表示
  4. 指令由操作码和地址码组成
  5. 存储程序
  6. 运算器为中心
2.现代计算机

以储存器为中心

3.计算机五大组成部分

<1> 输入设备,是指将外部信息以计算机能读懂的方式输入进来,如键盘,鼠标等

<2> 输出设备,就是将计算机处理的信息以人所能接受的方式输出出来,比如显示屏,打印机。

<3> 存储器,存储器分为 主存储器(内存储器,CPU能直接访问)和 辅助存储器(外存储器,协助主存储器记忆更多的信息,辅助存储器的信息需要导入到主存储器中,才可以被CPU访问)。

<4> 运算器,是计算机的运算单元,用于算术运算和逻辑运算,运算器的核心单元是算术逻辑单元(ALU)

<5> 控制器,控制器是计算机的指挥中心,有其指挥各部件自动协调第进行工作,现代计算机将运算器和控制器集成到一个芯片上,合成为中央处理器,简称CPU。有程序计数器(PC)、指令寄存器(IR)和控制单元(CU)。

CPU = ALU + CU

1.2.3 计算机软件的分类

1.系统软件和应用软件

计算机软件,一般分为系统软件和应用软件

系统软件包括 操作系统,数据库管理系统,语言处理系统(比如编译器),分布式软件系统,网络软件系统,标准库系统,服务性系统(比如连接程序)。

应用软件包括各种科学计算类程序,工程设计类程序,数据统计与处理程序。

程序 = 指令+ 数据

2.三个级别的语言
  • 机器语言。又称二进制代码语言,需要编程人员记忆每条指令的二进制编码。机器语言是计算机唯一可以直接识别和执行的语言。
  • 汇编语言。汇编语言用英文单词或其缩写代替二进制的指令代码,更容易为人们记忆和理解。使用汇编语言编辑的程序,必须经过一个称为汇编程序的系统软件的翻译,将其转换为计算机的机器语言后,才能在计算机的硬件系统上执行。
  • 高级语言。高级语言(如C、C++、Java等)是为方便程序设计人员写出解决问题的处理方案和解题过程的程序。通常高级语言需要经过编译程序编译成汇编语言程序,然后经过汇编操作得到机器语言程序,或直接由高级语言程序翻译成机器语言程序。由高级语言转换到汇编语言的过程叫做编译,由汇编语言转换到机器语言的过程叫做汇编边翻译边执行的叫做解析

1.3 CPU工作流程

1.3.1 CPU工作流程

取指令、指令译码、指令执行

程序的执行过程实际上是不断地取出指令、分析指令、执行指令的过程。

1.3.2 CPU指令的执行流程

  • 取指令阶段

    将一条指令从主存中取到指令寄存器的过程。

  • 指令译码阶段

    在指令译码阶段,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类别以及各种获取操作数的方法。

  • 执行指令阶段

    此阶段的任务是完成指令所规定的各种操作,具体实现指令的功能。为此,CPU的不同部分被连接起来,以执行所需的操作。

  • 访存取数阶段

    根据指令需要,有可能要访问主存,读取操作数,这样就进入了访存取数阶段。此阶段的任务是:根据指令地址码,得到操作数在主存中的地址,并从主存中读取该操作数用于运算。

  • 结果写回阶段

    作为最后一个阶段,结果写回阶段把执行指令阶段的运行结果数据“写回”到某种存储形式。结果数据经常被写到CPU的内部寄存器中,以便被后续的指令快速地存取;

1.3.3 CPU的指令周期

指令周期:

CPU取出一条指令并执行该指令所需的时间称为指令周期。

指令周期的长短与指令的复杂程度有关。

1.3.4 CPU中断

中断的分类:

内中断和外中断。

内中断:内中断的信号来源于CPU内部、与当前执行的指令有关。如整数除0。
外中断:外中断的信号来源于CPU外部、与当前执行的指令无关。如用户强制结束一个进程、IO设备完成操作发生的中断信号。

中断的处理过程:

(1) 执行完每个指令后,CPU都要检查当前是否有外部中断信号。

(2) 如果检测到外部中断信号,则需要保护被中断进程的CPU环境(如程序状态字PSW、程序计数器、各种通用寄存器)。

(3) 根据中断信号类型转入相应的中断处理程序。

(4) 恢复进程的CPU环境并退出中断,返回原进程继续往下执行。

中断总结:

(1) 中断是为了实现多道程序并发执行而引入的一种技术。

(2) 中断的本质就是发生中断时需要操作系统介入开展管理工作。

(3) 发生CPU会立即进入核心态,针对不同的中断信号,采取不同的处理方式。

(4) 中断是CPU从用户态进入核心态的唯一途径。

(5) 进程中断时,操作系统会保存CPU的运行环境,为了当进程再次运行时可以从中断的状态处继续运行。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值