第一节:概括所学知识
第二节:
操作系统简图
其中 ISA是对硬件的一种抽象,供软件功能所使用。
程序执行结果不止取决于算法和程序编写,还取决于语言处理系统,操作系统,ISA,微体系结构等。
第三节:
冯·诺依曼-存储程序
任何要计算机完成的工作都要先被编写成程序,然后讲程序和原始数据送入主页并启动运行。一旦程序启动,计算机应能在不需操作人员干预下,自动完成逐条取出指令和执行指令的任务。
ISA计算机结构
I/O设备:输入输出部件
程序控制单元:解释主存储器中存储的指令,进行译码,生成各种控制信号,控制计算机完成相应的动作。
算数逻辑单元:对各种运算指令进行算数运算或逻辑运算。数据来自于累加器或主存储器。
冯·诺依曼结构的主要思想
- 计算机应由运算器、控制器、储存器、输入设备和输出设备五个基本部件组成
- 各部件的基本功能是:
· 储存器不仅能存放数据,而且也能存放指令,形式上两者没有区别,但计算机应你呢个区分数据还是指令
· 控制器应能自动取出指令来执行;
· 运算器应能进行加减乘除四种基本运算,并且也能进行一些逻辑运算和附加运算;
· 操作人员可以通过输入设备、输出设备和主机进行通信。 - 内部以二进制表示数据和指令。每条指令由操作码和地址码两部分组成。操作指出操作类型,地址码指出操作数的地址。有一串指令组成程序。
- 采用存储程序工作方式。
第四节
现代计算机结构模型
- MAR和MDR直接与总线相连,属于总线接口部件
- CPU到存储器中取指令,必须先将指令的地址和控制信号送给存储器,读出数据和指令通过数据总线分别送到GPRS和IR,然后送到ALU进行运算。或者MDR中数据直接送到ALU进行运算。
计算机是如何工作的
- 程序在执行前,数据和指令事先放在存储器中,每条指令和每条数据都有地址,指令按序存放,指令由OP和ADDR字段组成,程序起始地址置PC。
- OP:操作码字段,指出指令的操作限制(操作类型)
- ADDR:地址字段,根据地址到存储器或寄存器取操作数
- 开始执行程序,
第一步:根据PC取指令
第二步:指令译码
第三步:取操作数
第四步:指令执行
第五步:回写结果
第六步:修改PC的值,继续执行下一条指令
第五节
从机器语言到高级语言
- 机器语言和汇编语言都是机器级语言
- 高级语言转换为机器级语言分为两种方式
一:编译程序(Complier):将高级语言源程序转换成机器级目标程序,执行时只需要启动目标程序即
二:解释程序(Interpreter):将高级语言逐条转换成机器指令并立即执行,不生成目标文件。
第六节
hello.c的转换处理过程
高级语言开发和运行程序需要的支撑
- 需要编辑器编写源程序
- 需要一套翻译转换软件处理各类源程序
*编辑方式:预处理程序、编辑器、汇编器、链接器
*解释方式:解释程序 - 需要一个可以执行程序的界面(环境)
*GUI方式:图形用户界面
*CUI方式:命令行用户界面
支撑程序开发和运行的环境由系统软件提供
最重要的系统软件是操作系统和语言处理系统
语言处理系统运行在操作系统之上,操作系统利用指令管理软件
第七节
计算机系统的层次
- 语言处理系统包括:各种语言处理程序(如编译,汇编,链接)、运行时系统(如库函数,调试,优化等功能)
- 操作系统包括:人机交互界面、提供服务功能的内核例程。
第八节
计算机系统抽象层的转换
计算机系统的不同用户
程序执行结果不仅取决于算法、程序编写,而且取决于语言处理系统、操作系统、ISA、微体系结构
最终用户工作在由应用程序提供的最上面的抽象层
系统管理员工作在由操作系统提供的抽象层
应用程序员工作在由语言处理系统(主要有编译器和汇编器)的抽象层
语言处理系统建立在操作系统之上
系统程序员(实现系统软件)工作在ISA层次,必须对ISA非常了解
编译器和汇编器的目标程序由机器级代码组成
操作系统通过指令直接对硬件进行编程控制
ISA处于软件和硬件的交界面(接口)
ISA是对硬件的抽象
所有软件功能都建立在ISA之上
指令集体系结构(ISA)
- ISA指Instruction Set Architecture,即指令集体系结构,有时简称为指令系统
- ISA是一种规约(Specification),它规定了如何使用硬件
-可执行指令的集合,包括指令样式,操作种类以及每种操作对应的操作数的相应规定;
-指令可以接受的操作数的类型;
-操作数所能存放的寄存器组的结构,包括每个寄存器的名称、编号、长度和用途;
-操作数所能存放的存储空间的大小和编制方式;
-操作数在存储空间存放时按照大端还是小端存放;
-指令获取操作数的方式,即寻址方式;
-指令执行过程的控制方式,包括程序计数器(pc)、条件码定义等。
- ISA在通用计算机系统中是必不可少的一个抽象层
-没有它,软件无法使用计算机硬件
-没有它,一台计算机不能称为“通用计算机”
ISA与计算机组成的关系
ISA是计算机组成的抽象