第一章 计算系统概论
1.1计算机系统简介 计算机系统组成: 计算机是按照给出的指令执行具体操作来解决问题的机器。 计算机系统由硬件和软件共同组成。 硬件是组成计算机的各种实际装置的总称,只能识别和执行机器指令,是软件运行的载体。 软件是由人们事先编制的具有各类特殊功能的程序和相关数据组成。 计算机软件可分为:系统软件和应用软件。 系统软件用来管理计算机系统,如:语言处理程序(编辑器、编译器、汇编器)、操作系统、标准程序 库、服务性程序(诊断、调试、连接)、数据库管理系统、网络软件等。 应用软件是用户根据具体任务需要所编制的各种程序,如:科学计算程序、数据处理程序、过程控制程 序、事务管理程序等。 程序透视计算机系统 计算机系统的层次结构(抽象方法) 计算机基本层次结构:硬件->系统软件->应用软件。 微程序机器/硬联机器M0:硬件直接执指令。操作命令的产生方法有两种:微程序和硬布线 实际机器M1(机器语言计算机):微指令解释机器指令(微指令) 虚拟机器M2(操作系统计算机):机器语言解释操作系统(机器语言) 虚拟机器M3(汇编语言计算机):用汇编程序翻译成机器语言程序(汇编语言)虚拟机器M4(高级语言计算机):用编译程序翻译成汇编语言程序(高级语言) 虚拟机器M5(应用语言计算机):应用语言的编写(非程序员) 描述软硬件两种常见的模式: 1.探究软件或硬件的深层运行机制以揭示更多的信息 2.掩盖底层细节为高层提供较简单的模型 抽象层次之间的关键接口就是指令系统结构——底层软件和硬件的接口。 计算机组成与系统结构 计算机系统的第一层作为软硬件之间的过渡层,称为指令系统结构。第零层完成硬件逻辑结构的设计与 实现。计算机层次结构中最低的两层衍生出三个主要的领域:计算机系统结构、计算机组成、计算机实 现 计算机系统结构(computer architecture):主要研究软件和硬件的功能分配以及确定软件和硬件的 界面。程序员所见到的计算机系统的属性、概念性的结构与功能特性(指令系统、数据类型、寻址技 术、io机理)等。 计算机组成(computer organization):研究硬件系统各组成部分的内部构造和相互联系,实现机器 指令级的各种功能和特性。 计算机实现(computer implementation):对计算机组成的物理实现。 1.2计算机系统发展与应用 计算机的发展: 1945年冯诺依曼在电子离散变量计算机EDVAC的设计中首次提出了存储程序思想。 世界上第一台电子管计算机:1946年宾夕法尼亚大学——电子数字积分计算机ENIAC 世界第一台存储程序计算机:1949年剑桥大学威尔克斯研究小组——电子延迟存储自动计算机EDSAC 晶体管计算机:1961年DEC公司——PDP-1 集成电路计算机:1964年IBM——system/360向量巨型机:1976年Cray-1 推动作用: 1.应用需求促进计算机的产生和发展。 2.器件性能和制造工艺对早期计算机发展起重要作用。 电子管计算机->晶体管计算->集成电路计算机->超大规模集成电路计算机 3.硬件和软件技术相互促进共同发展。 硬件和软件相互依存 硬件和软件逻辑上等价 硬件和软件协同发展 4.现代计算机的发展主要是体系结构的变革。 应用分类: 信息表示和处理方式:数字计算机(二进制表示和处理数据)、模拟计算机(以连续模拟量表示和处理 数据)、混合计算机(可以进行数字信息和模拟物理量处理)。 用途:通用计算机(功能多、配置全、用途广、通用性强)、专用计算机(为了适应某种特殊需要而设 计的)。 性能、体积等:巨型机、大中型机、小型机、微型机、工作站、服务器等。 主要应用:桌面计算机、服务器、嵌入式计算机。 1.3计算机的硬件组成 冯诺依曼计算机的特点 1945年冯诺依曼在电子离散变量计算机EDVAC的设计中首次提出了存储程序思想,采用存储程序思想研 制的计算机称为存储程序计算机。 IAS计算机特点可归纳为以下几个特点: 1.计算机由运算器、控制器、存储器、输入设备和输出设备五大部件组成。 2.指令与数据均用二进制形式表示。 3.指令与数据以同等地位存放于存储器中,并可以按地址访问。 4.指令由操作码和地址码组成,操作码表示指令的操作性质,地址码指明操作数的来源。 5.指令在存储器内按顺序存放。 6.机器以运算器为核心,输入输出设备与存储器之间的数据传送通过运算器完成。计算机硬件的基本组成 现代计算机大多采用总线结构,总线将计算机各部件连接在一起,,形成一个完整的计算机硬件系统。 总线成为各部件之间传输信息的公共通道。 计算机的硬件从原理上由五个基本部分组成: (1)存储器。存放程序和数据。 (2)运算器。完成算术运算和逻辑运算,并将运算结果暂存于运算器内。 (3)控制器。通过发出各种控制命令,控制程序和数据的输入、运行以及处理运算结果。 (4)输入设备。将人们熟悉的信息形式转换为机器能识别的信息形式。 (5)输出设备。将机器的运算结果转换为人们熟悉的信息形式。 运算器和控制器合起来统称中央处理器cpu,和存储器一起称为主机,输入设备和输出设备简称为i/o设 备,又称为外部设备。 I/O子系统完成人机交互功能,包括各种i/o设备及相应的接口。每种i/o设备都通过i/o接口于主机联系, 它接收控制器发来的各种控制命令,并完成相应操作。主存储器是计算机的主要工作存储器,存放正在运行的程序和数据。主存包括存储体、各种逻辑部件及 控制电路等。现代计算机还集成了MAR(存储器地址寄存器)MDR(存储器数据寄存器)。 存储体由许多存储单元组成,,每个存储单元又包含若干个存储元,每个存储元能存放一位二进制代码 0&1。控制器是计算机的指挥中心,由它发出各种控制命令指挥各部件自动、协调地工作。控制器由程序计数 器pc、指令寄存器ir、时序逻辑以及控制单元cu组成。 运算器的作用是进行数据加工处理。运算器的核心是算术逻辑单元ALU,还包含一些寄存器,用来暂存 参与运算的数据及运算结果。 计算机运行程序 硬件运行程序的必要条件: 程序已被转换为机器指令系列,即可执行程序 可执行程序已经被加载到主存储器中,并将起始位置置于PC 程序运行过程1.4计算机系统的性能 性能的定义 计算机系统的性能=功能+质量 在计算机系统满足一般功能特性前提下,性能高低通常以时间特性(或者速度特性)作为基本衡量标 准。 一个完整的计算机系统是由硬件子系统和软件子系统所构成。硬件子系统性能和软件子系统性能共同决 定一台计算机系统的性能。计算机系统的性能只能通过各类软件在硬件上运行而体现出来。硬件技术指标 (1)字长 字长概念: 机器字长:CPU能同时处理的数据位数,即数据字长。与CPU中寄存器的位数有关。 存储字长:一个存储单元可存放的二进制代码位数。 指令字长:一个指令所具有的二进制代码位数。 字节(Byte):计算机中另一种数据表示单位。一个标准字节=八位二进制代码。 机器字长指标的意义: 对结构的影响: 机器字长=数据通路宽度=寄存器位数=ALU位数 对性能的影响: 字长越长,数据的表示范围越大,精度越高,运算速度越快。 对造价的影响: 字长越长,硬件需求量越多,造价越高。 三种字长的关系: 当前计算机通常规定:机器字长=字节的2ⁿ倍。(常见机器字长为8位、16位、32位、64位等) 存储器按字节编址时,存储字长为一个字节;按字编址时,存储字长等于机器字长。 指令字长=字节的整数倍。(单字节指令、双字节指令、三字节指令等) (2)存储容量 主存容量指主存中可存放二进制代码的总数。容量的具体表示与主存的编址方式有关。 编制分类: 按字节编址 存储容量=存储字节数,单位:字节(B)如64KB。 按字编址 存储容量=存储字数X存储字长,单位:字(W)、位(b)如64KX32位。 (3)运算速度 运算速度是衡量计算机系统性能的一项重要指标,其他很多指标可能仅仅只为这一指标服务。常用单位: MIPS(million instruction per second):每秒执行百万条指令数。 CPI(cycle per instruction):执行一条指令所需时钟周期数。 IPC:一个是时钟周期所运行指令数。 FLOPS(floating point operation per second):每秒浮点运算次数 (4)外存容量 外部存储器容量通常指硬盘容量,即硬盘能存储二进制信息总量一般以字节(B)为单位。 (5)总线传输率 总线传输率通常指单位时间内系统总线上的数据传输量,也称为总线带宽,常用MB/S作为单位。一般可 表示为:总线带宽=总线工作频率x总线宽度(字节数)。 思考题与习题 1.在计算机发展过程中,有哪些事件可认为是具有转折点和里程碑意 义的?电子计算机的飞速发展,什么因素起着主要推动作用? 具有转折点和里程碑意义的事件: 1.1946年,第一台计算机ANIAC,标志信息时代开始; 2.1949年,第一台存储程序计算机EDSAC,现代计算机结构-冯诺依曼结构的第一个实现; 3.1961年,DEC推出PDP-1计算机,第一台晶体管计算机; 4.1964年,IBM推出system/360,第一台集成电路计算机; 5.1976年,Cray公司推出Gray-1,VLSI计算机开始普及。 计算机发展的推动因素: 1.应用需求促进计算机的产生和发展。 2.器件性能和制造工艺对早期计算机发展起重要作用。3.硬件和软件技术相互促进共同发展。 4.现代计算机的发展主要是体系结构的变革。 2.说明高级语言、汇编语言、机器语言三者的差别和联系。 机器语言由0、1代码组成,是机器能识别和执行的一种语言; 汇编语言是面向机器的语言,它由一些特殊符号表示指令; 高级语言是面向用户的语言,它是一种接近数学的语言,直观、通用、与具体机器无关。 汇编语言必须通过汇编器翻译成机器语言才能被机器识别和执行;高级语言必须经过编译汇编或解释后 才能被机器识别和执行。 3.软硬件之间的界面是确定不变的吗?软硬件在功能设计上有何种关系 存在? 软硬件之间的接口不是确定不变的; 软硬件在功能设计上是等价的关系,除了最基本的器件和电路外,任何硬件实现的操作都可以由软件实 现,,任何软件实现的操作也可以直接由硬件实现。 4.你如何理解软硬件逻辑等价性? 计算机系统结构中,除了最基本的功能必须由硬件实现外,其他功能即可由硬件实现,也可以由软件实 现。 对于某个特定功能来说,由软件还是硬件实现后所能达到的计算机系统的性能是有差异的。 通常,某个特定的功能由硬件实现比用软件实现的执行速度快,但由硬件实现比用软件实现的成本高。 而由软件实现比硬件实现的灵活性好。 5.冯诺依曼计算机的特点是什么? 计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成。 指令与数据均以二进制数形式表示。 指令与数据以同等地位存放于存储器内,并可以按地址访问。 指令由操作码和地址码组成,操作码表明操作的性质,地址码指出操作数的来源。 指令在存储器内按顺序存放。通常,指令是顺序执行的,也可以根据运算结果或某种设定条件改变指令 执行顺序。 计算机以运算器为中心,输入输出设备与存储器之间的数据传送通过运算器完成。 6.讨论将程序与数据存放在同一存储器中的优缺点? 优点: 主存只有一个地址空间,编程简单,管理容易,空间利用率高; 缺点: 指令与数据共享存储器访问总线,效率较低。7.在存储程序计算机中,cpu正在执行的程序所包含的指令和数据均 以二进制形式存储于主存储器,cpu需要区分指令与数据吗?为什 么?cpu如何区分? 需要区分。 因为cpu将指令和数据从存储器取出后要进行不同的操作。取出指令后放到指令寄存器IR中,然后进行指 令译码操作。而取出数据后放到数据寄存器中,然后进行算数逻辑等操作。 CPU通过不同的时间段来区分指令与数据,即:取指周期(或取指微程序)取出的即为指令,执行周期 (或相应微程序)取出的即为数据。 另外也可通过地址来源区分,从pc指出的存储单元取出的是指令,由指令地址码部分提供操作数地址。 8.在存储程序计算机中,指令在主存储器中按顺序存放,其优点是什 么? 可以比较方便地顺序存放和按顺序读取和执行; 顺序执行时指令寻址可以pc自增自动完成; 顺序执行时,指令中不需要给出下一条指令的地址,有利于缩短指令字长度。 9.有时候软件优化可以很大程度上提高计算机系统的性能。假设一个 CPU执行一条乘法运算指令需要时10ns,减法指令需要1ns。请问: (1)执行d=axb-axc需要花费CPU多少时间?(2)如何优化使执行 时间减少? (1)需要花费21ns。 (2)合并式为d=ax(b-c)执行时间为11ns。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/58735.html