计算机组成 原理.

Slides:



Advertisements
Similar presentations
三级偏软考点. 第一章必考点 1. 计算机的进位数制 (1) 计算机中所有数据是二进制 0,1 表示 (2) 在现实生活中人们普遍使用十进制 如何把十进制转换成计算机所识别的二 进制?整数是除 2 取余法,小数是乘 2 取 整法.
Advertisements

高校教师、高级项目经理 任铄 QQ : 第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 OS 结构设计.
会计从业资格 初级会计电算化. 考试题型: 本章内容在考试中以单选题、多选题、判断题 形式出现; 重点理解计算机软件的概念,掌握计算机软件 的构成,了解常用软件的内容。 计算机软件.
Linux 系统. 操作系统发展需求 1 没有操作系统 2 简单批处理操作系统 3 多道程序设计的批处理 4 多道程序设计的分时操作系统 5 多处理机并行系统 6 网络操作系统 7 分布式操作系统.
William Stallings Computer Organization and Architecture
信息技术:硬件、软件、网络、数据库 计算机技术、多媒体技术、压缩技术...
——Windows98与Office2000(第二版) 林卓然编著 中山大学出版社
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
2017年3月5日 单片机原理与应用 背景知识调查.
讲授人 何美香 微机原理及应用.
初级会计电算化 (用友T3) 制作人:张爱红.
计算机组装与维护.
电子数字计算机 计算机性能 计算机硬件 计算机软件 多级层次结构
《计算机组成原理》 计算机与通信学院 谢鹏寿
计算机组成原理 北京理工大学计算机科学工程系 赵清杰 北京理工大学计算机科学工程系.
计算机体系结构 Computer Architecture
第三章 数据类型和数据操作 对海量数据进行有效的处理、存储和管理 3.1 数据类型 数据源 数据量 数据结构
实用操作系统概念 张惠娟 副教授 1.
第一册第一章 第3节 计算机的基本工作原理 制作者:冯玉珊(广州市番禺区市桥中学).
1.1 计算机系统简介 1.2 计算机的基本组成 1.3 计算机硬件的主要技术指标 1.4 本书结构.
欢迎大家来到我的课堂.
1.2 计算机体系结构的概念 计算机系统中的层次概念 1. 计算机系统=软件+硬件/固件 2. 计算机语言由低级向高级发展
计算机系统结构 南京航空航天大学 计算机科学与技术学院 主讲:刘佳
第 四 章 信息的加工与表达(下).
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
计算机基础知识 丁家营镇九年制学校 徐中先.
冯.诺依曼计算机 1.3 计算机系统的组成 计算机系统概述 EDVAC的3个特点:
《数据库原理及应用》课程介绍 信息工程学院 孙俊国
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
嵌入式系统课程简介 宋健建 南京大学软件学院 2004/02/10.
存储系统.
走进编程 程序的顺序结构(二).
大数据管理技术 --NoSQL数据库 HBase 陈 辉 大数据分析技术.
微型计算机原理及应用 主讲:邓昭俊 讲师 电话:
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
数 控 技 术 华中科技大学机械科学与工程学院.
Windows网络操作系统管理 ——Windows Server 2008 R2.
逆向工程-汇编语言
数据挖掘工具性能比较.
CPU结构和功能.
第二单元 认识我的电脑 掌握计算机工作机制; 系统性掌握计算机系统的分类,并能结合日常应用,理解常见硬件、软件的功能及作用。
计算机组成与系统结构 陈泽宇 副教授.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
计算机文化概论
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
微机系统的组成.
计算机组成与系统结构 陈泽宇 副教授.
计算机组成与系统结构 陈泽宇 副教授.
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
实验三 16位算术逻辑运算实验 不带进位控制的算术运算 置AR=1: 设置开关CN 1 不带进位 0 带进位运算;
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
iSIGHT 基本培训 使用 Excel的栅栏问题
长春理工大学 电工电子实验教学中心 数字电路实验 数字电路实验室.
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
魏新宇 MATLAB/Simulink 与控制系统仿真 魏新宇
苏教版小学信息技术3年级第2课 认识计算机.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
第二节 C语言的特点.
实验目的:掌握数据的顺序存储结构及它们在计算机中的操作。 实验内容:
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
入侵检测技术 大连理工大学软件学院 毕玲.
computer organization principle
Presentation transcript:

计算机组成 原理

学习指南 本课程的性质 计算机组成原理是计算机科学与技术专业本科生的核心课程之一,是必修的专业基础课。

学习指南 本课程的地位 本课程在计算机学科中处于承上启下的地位,要求先修的课程有: 计算机科学导论 数字电路

学习指南 本课程的任务 讨论单机系统范围内计算机各部件和系统的组成以及内部工作机制。通过学习,掌握计算机各大部件的组成原理、逻辑实现、设计方法及其互连构成整机系统的技术,并为后继课程的学习打好基础。

学习指南 本课程的重点:五大基本部件的原理及实现。 本课程的难点:各部件互连构成整机系统,即整机概念的建立。 本课程的深广度:主要讨论计算机组成中具有共性的问题,要处理好抽象概念与具体实例的关系。

学习指南 参考书 白中英,计算机组成原理,北京科学出版社,2001。 唐朔飞,高等教育出版社,北京,2000。 蒋本珊,计算机组成原理学习指导与习题解析,北京,清华大学出版社,2005。

第1章 概论

第1章 在本章中我们将从存储程序的概念入手,讨论计算机的基本组成与工作原理,使大家对于计算机系统先有一个简单的整体概念,为今后深入讨论各个部件打下基础。

1.1 电子计算机与存储程序控制 电子计算机是一种不需要人工直接干预,能够自动、高速、准确的对各种信息进行处理和存储的电子设备。 可以有非电子计算机(如:光计算机、量子计算机、超导计算机等)。 可以有非数字计算机(如:模拟计算机)。

1.1 电子计算机与存储程序控制 电子计算机(Electronic Digital Computer) 计算机拥有众多的物理形态 是按照一系列指令来对数据进行处理的机器 计算机拥有众多的物理形态 个人计算机(Personal Computer,PC) 便携计算机(Portable Computer) 又称膝上型计算机(Laptop Computer) 嵌入式计算机(Embedded Computer) 使用最为广泛的计算机形态

1.1 电子计算机与存储程序控制 根据Church–Turing理论, 任何一台具有最基本功能的计算机,原则上都能够执行任何其他计算机可以执行的任务 只要不考虑时间和存储容量,性能和复杂度均相差甚远的各种计算机,都能够执行相同的运算任务

计算机分类 根据效率、速度、价格、运行的经济性和适应性来划分,计算机可分为通用计算机和专用计算机两大类 通用计算机 专用计算机 功能齐全,通用性强,适应面广,可完成各种各样的工作 牺牲部分效率、速度和经济性 专用计算机 为某些特定问题而设计的计算机,相对说来结构较简单,功能较单一 具有可靠性高、速度快、成本低的优点 适应性较差

通用计算机分类 6类,其区别在于体积、复杂度、功耗、性能指标、数据存储容量、指令系统规模和价格 超级计算机(Supercomputer) 大型机(Mainframe) 服务器(Server) 工作站(Workstation) 微型机(Microcomputer) 单片机(Single-Chip Computer)

通用计算机分类 超级计算机 单片机 大型机、服务器、工作站、微型机 主要用于科学计算 运算速度远远超过其他计算机,数据存储容量很大,结构复杂,价格昂贵 单片机 用单片集成电路(Integrated Circuit,IC)做成的计算机 体积小,结构简单,性能指标较低,价格便宜 大型机、服务器、工作站、微型机 结构规模和性能指标依次递减 随着超大规模集成电路的迅速发展,主要技术下移。今天的工作站可能是明天的微型机,而今天的微型机也可能是明天的单片机

计算机分类 按信息的形式和处理方式分 按计算机规模分 按计算机的用途分 数字计算机 模拟计算机 数字模拟混合计算机 通用计算机 专用计算机 巨型机 大型机 中型机 小型机 微型机 多机系统或网络系统

1.1 电子计算机与存储程序控制 1.1.1电子计算机的发展 世界上第一台电子数字计算机是1946年2月问世的ENIAC (Electronic Numerical Integrator And Computer,电子数字积分计算机)。 ENIAC的设计开始于1943年, 该机一直使用到1955年。

ENIAC的特点: 1.1 电子计算机与存储程序控制 采用十进制 20 个10位的累加器 用开关手动编程 18,000个电子管, 1 500 多个继电器 重30 吨 占地170平方米 耗电170 KW 5,000次/秒加法运算

不同角度不同层次看发展 从使用器件的角度来说,计算机的发展大致经历了5代的变化(某些教材) 时间 使用器件 执行速度(次/秒) 典型应用 第1代 1946~1957 电子管 几千至几万 数据处理机 第2代 1958~1964 晶体管 几万至几十万 工业控制机 第3代 1965~1970 小规模/中规模集成电路 几十万至几百万 小型计算机 第4代 1971~1985 大规模/超大规模集成电路 几百万至几千万 微型计算机 第5代 1986~ 甚大规模集成电路 几亿至上百亿 单片计算机

器件分代 第一代:电子管机(1946-1959) 第二代:晶体管机(1959-1964) 第三代:小、中规模集成电路(1964-1975) 第四代:大、超大规模集成电路机(1975-1990) 第五代:甚大规模集成电路机(新-代或智能计算机(1990- 200x) 第六代:极大规模集成电路机(200x- ) 超大规模集成电路 智能型系统结构 常温超导材料和光器件等 超并行结构的数据流计算等

第一台von Neumann 系统结构的计算机

第一代计算机 1946年到1959年 使用电子管(Vacuum Tube)作为电子器件 使用机器语言与符号语言编制程序 存储器使用延迟线、磁芯存储器,体积庞大,存储容量小,成本很高,可靠性较低 主要用于科学计算,国防、军事 在此期间,形成了计算机的基本体系结构,确定了程序设计的基本方法

第二代计算机 1959年到1964年 使用晶体管(Transistor)作为电子器件 开始使用计算机高级语言 磁芯存储器,体积缩小,存储容量扩大,成本降低,可靠性提高 用于科学计算、数据处理和事务处理等,并逐渐用于工业控制 “工业控制机”开始得到应用

第三代计算机 1964年到1975年 使用小规模集成电路(Small-Scale Integration,SSI)与中规模集成电路(Medium-Scale Integration,MSI)作为电子器件 操作系统开始出现 计算机小型化、微型化 科学计算,文字处理、企业管理和自动控制等领域 管理信息系统(Management Information System,MIS) “小型计算机”开始出现

第四代计算机 1975年到1990年 使用大规模集成电路(Large-Scale Integration,LSI)与超大规模集成电路(Very-Large-Scale Integration,VLSI)作为电子器件 半导体存储器,大容量、高速度 办公自动化、数据库管理、图像识别、语音识别和专家系统等众多领域 由几片大规模集成电路组成的“微型计算机”开始出现,并进入家庭

第五代计算机 1990年到200x年 采用甚大规模集成电路(Ultra-Large-Scale Integration,ULSI)作为电子器件,也包括常温超导材料和光器件等 由一片甚大规模集成电路实现的“单片计算机”开始出现 也称为新-代或智能计算机,采用智能型系统结构、超并行结构的数据流计算等新技术 不是纯器件的分代

总体而言 电子管计算机在整个20世纪50年代居于统治地位 20世纪60年代,晶体管计算机逐渐取而代之 20世纪70年代,集成电路技术的采用和其后微处理器的产生,导致计算机有了一次新的飞跃 20世纪80年代,计算机被个人广泛使用,成为现在无处不在的个人计算机 20世纪90年代以来,几乎所有的现代电子设备都会包含某种形式的计算机在内

Moore 定律 Intel 公司的缔造者之一 Gordon Moore 提出 微芯片上集成的 晶体管数目每三年翻两番

Intel 公司的典型微处理器产品 8080 8位 1974年 8086 16位 1979年 2.9 万 8080 8位 1974年 8086 16位 1979年 2.9 万 80286 16位 1982年 13.4 万 80386 32位 1985年 27.5 万 80486 32位 1989年 120.0 万 Pentium 64位(准) 1993年 310.0 万 Pentium pro 64位(准) 1995年 550.0 万 Pentium Ⅱ 64位(准) 1997年 550.0 万以上 Pentium Ⅲ 64位(准) 1999年 800.0 万以上 Pentium Ⅳ 64位 2000年 4 200.0 万 预计 2007 年 芯片上可集成 3 亿 5 千万 晶体管 2010 年 芯片上可集成 8 亿 晶体管

数字计算机的发展趋势 1)多处理 2)网络化 3)智能化 4)微型化 5)巨型化 6)多媒体

数字计算机的发展趋势 1)多处理 多处理(Multiprocessing) 超级计算机 低端市场应用 在一个或多个CPU之间划分工作 传统上用于超级计算机、大型机和服务器这类大型、强大的计算机上 超级计算机 经常拥有几千个CPU、定制的高速互连网络和专门的计算硬件 低端市场应用 配备多处理器(Multiprocessor)和多核(Multi-Core)处理器的台式/便携式计算机

数字计算机的发展趋势 2)网络化 20世纪70年代 此后 20世纪90年代 美国国防部高级研究计划署(ARPA)资助形成ARPANET 该网络传播开来,最终形成了互联网(Internet) 20世纪90年代 电子邮件(e-Mail)和万维网(World Wide Web,WWW)等应用普及 以太网(Ethernet)和非对称数字用户线路(Asymmetric Digital Subscriber Line,ADSL)等廉价、快速联网技术发展 计算机网络变得无处不在

数字计算机的发展趋势 3)智能化 4)微型化 5)巨型化 人们将用自然语言和机器对话 计算机将从数值计算为主过渡到知识推理为主,进入知识处理阶段 4)微型化 微型计算机将向更加微型化、网络化、高性能、多用途方向发展 5)巨型化 超级计算机将向更加巨型化、超高速、并行处理、智能化方向发展

数字计算机的发展趋势 6)多媒体 多媒体信息 多媒体计算机 文本、图像、图形、声音、视频等 将真正改善人机界面 使计算机向着人类接受和处理信息的最自然的方式发展

1.1 电子计算机与存储程序控制 1.1.2 存储程序概念 美籍匈牙利数学家冯·诺依曼等人在1946年6月提出存储程序概念。

1.1 电子计算机与存储程序控制 存储程序概念 ⑴ 计算机(指硬件)应由运算器、存储器、控制器、输入设备和输出设备五大基本部件组成; ⑵ 计算机内部采用二进制来表示指令和数据; ⑶ 将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,这就是存储程序的基本含义。

1.1 电子计算机与存储程序控制 EDVAC 冯·诺依曼设计的存储程序计算机 1951年诞生。 EDSAC 事实上的第一台存储程序计算机 1949年诞生。 目前绝大多数计算机仍建立在存储程序概念的基础上,称冯·诺依曼型计算机。 也出现了一些突破冯·诺依曼结构的计算机,统称非冯结构计算机,如:数据驱动的数据流计算机、需求驱动的归约计算机和模式匹配驱动的智能计算机等。

计算机系统软、硬件的概念 计算机系统 计算机的实体 如主机、外设等 由具有各类特殊功能 的信息(程序)组成 硬件 软件

计算机由硬件(Hardware)和软件(Software)组成: 硬件是基础,是软件活动的舞台 软件是灵魂,使硬件最大限度地发挥作用 两者缺一不可 计算机硬件 由物理元器件构成的有形实体 主要是数字逻辑电路 计算机软件 由计算机程序构成的无形的东西 需要存储在有形的硬件(如主存储器、硬盘等)中 可以实现更高层次的逻辑功能

1.2 计算机的硬件组成 冯·诺伊曼计算机具有5大部件 控制器、运算器、存储器、输入设备、输出设备 这些部件用总线相互连接 中央处理器(Central Processing Unit,CPU) 控制器和运算器的合称 早期由许多分立元件组成,现在通常被制作在单片集成电路上,称为微处理器(Microprocessor) CPU和存储器通常组装在一个机箱内,合称为主机 除去主机以外的硬件装置称为外围设备

注意 中央处理器(CPU) 主机 外部设备 1.2 计算机的硬件组成 CPU = 运算器 + 控制器 主机 = 中央处理器 + 主存储器 除去主机以外的硬件装置(如输入设备、输出设备、辅助存储器等) 注意

1.2 计算机的硬件组成 外设 存储器 输入设备 输出设备 辅助存储器 主存储器 运算器 控制器 控制 数据 CPU 地址或指令 主机

2.输出设备 1.2 计算机的硬件组成 1.2.1 计算机的主要部件 1.输入设备 输入设备的任务是把人们编好的程序和原始数据送到计算机中去,并且将它们转换成计算机内部所能识别和接受的信息方式。常用的有键盘、鼠标、扫描仪等。 2.输出设备 输出设备的任务是将计算机的处理结果以人或其他设备所能接受的形式送出计算机。常用的有显示器、打印机、绘图仪等。

1.2 计算机的硬件组成 3.存储器 存储器是用来存放程序和数据的部件,它是一个记忆装置,也是计算机能够实现“存储程序控制”的基础。

1.2 计算机的硬件组成 三级存储系统 速度 快 Cache 主存储器 辅助存储器 慢

1.2 计算机的硬件组成 三级存储系统 容量 Cache 主存储器 辅助存储器 小 大

1.2 计算机的硬件组成 三级存储系统 价格/位 Cache 主存储器 辅助存储器 贵 贱

1.2 计算机的硬件组成 主存储器 可由CPU直接访问,用来存放当前正在执行的程序和数据。 Cache 主存储器 辅助存储器 主存储器

1.2 计算机的硬件组成 辅助存储器 设置在主机外部,CPU不能直接访问,用来存放暂时不参与运行的程序和数据,需要时再传送到主存。 Cache 主存储器 辅助存储器 辅助存储器 辅助存储器 辅助存储器

1.2 计算机的硬件组成 高速缓冲存储器(Cache) CPU可以直接访问,用来存放当前正在执行的程序中的活跃部分(副本),以便快速地向CPU提供指令和数据。 Cache 主存储器 辅助存储器 Cache Cache Cache

1.2 计算机的硬件组成 4.运算器 运算器是对信息进行处理和运算的部件,经常进行的运算是算术运算和逻辑运算,因此运算器的核心是算术逻辑运算部件ALU。 运算器中有若干个寄存器(如累加寄存器、暂存器等)。

1.2 计算机的硬件组成 5.控制器 控制器是整个计算机的管理机构和指挥中心。 控制器中主要包括时序控制信号形成部件和一些专用的寄存器。 按照预先确定的操作步骤,协调控制计算机各部件有条不紊地自动工作 控制器工作的实质就是解释程序,逐条读取、分析、执行指令,控制各部件动作

1.2 计算机的硬件组成 1.2.2 计算机的总线结构(小、微型机典型结构) 将各大基本部件,按某种方式连接起来就构成了计算机的硬件系统。 目前许多计算机(主要指小、微型计算机)的各大基本部件之间是用总线(Bus)连接起来的。 总线是一组能为多个部件服务的公共信息传送线路,它能分时地发送与接收各部件的信息。

1.2 计算机的硬件组成 总线特点: 共享 分时 小型、微型机的设计目标是以较小的硬件代价组成具有较强功能的系统,而总线结构正好能满足这一要求。

1.2 计算机的硬件组成 1.单总线结构 接口 外设 … CPU 主存储器 系统总线

单总线并不是指只有一根信号线。系统总线按传送信息的不同又可以细分为:地址总线、数据总线和控制总线。 1.2 计算机的硬件组成 单总线并不是指只有一根信号线。系统总线按传送信息的不同又可以细分为:地址总线、数据总线和控制总线。 地址总线(Address Bus)由单方向的多根信号线组成,用于CPU向主存、外设传输地址信息; 数据总线(Data Bus)由双方向的多根信号线组成,CPU可以沿这些线从主存或外设读入数据,也可以沿这些线向主存或外设送出数据; 控制总线(Control Bus)上传输的是控制信息,包括CPU送出的控制命令和主存/外设反馈给CPU的状态信号。

1.2 计算机的硬件组成 2. 总线电路 (1)三态门 具有三种逻辑状态的门电路。这三种状态是: “0”状态 “1”状态 浮空状态 注意

1.2 计算机的硬件组成

1.2 计算机的硬件组成 (2)单向和双向总线 单向总线上的信息只能向一个方向传送,如地址总线。 双向总线上的信息可以向两个方向上传送,如数据总线。

1.2 计算机的硬件组成 1.2.3 大、中型机的典型结构 大、中型计算机系统的设计目标更着重于系统功能的扩大与效率的提高。 通道是承担I/O操作管理的主要部件,主机可以连接多个通道,每个通道可以接一台或几台设备控制器,每个设备控制器又可接一台或几台外部设备,这样整个系统就可以连接很多的外部设备。

1.2 计算机的硬件组成 … … … … … … CPU … 主机 第一级 第二级 第三级 第四级 设备 控制器 外设 外设 通道 设备 主存 通道 … 外设 设备 控制器 … 外设 外设

1.2 计算机的硬件组成 1.2.4 不同对象观察到的计算机硬件系统 一般用户观察到的计算机硬件系统

1.2 计算机的硬件组成 专业用户观察到的计算机硬件系统

1.2 计算机的硬件组成 计算机设计者观察到的计算机硬件系统

1.2.5 冯·诺依曼结构和哈佛结构的存储器设计思想 1.冯·诺伊曼结构 1.2 计算机的硬件组成 1.2.5 冯·诺依曼结构和哈佛结构的存储器设计思想 1.冯·诺伊曼结构 冯·诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。指令存储地址和数据存储地址指向同一个存储器的不同物理位置。 使用冯·诺伊曼结构的中央处理器有很多。如Intel公司的80X86、ARM公司的ARM7、MIPS公司的MIPS等都采用了冯·诺伊曼结构。

1.2 计算机的硬件组成 冯·诺依曼结构的存储器设计

1.2 计算机的硬件组成 2.哈佛结构 哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。CPU首先到指令存储器中读取指令内容,译码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。 哈佛结构的处理器通常具有较高的执行效率。其指令和数据分开组织和存储的,执行时可以预先读取下一条指令。 目前使用哈佛结构的中央处理器也有很多,如MOTOROLA公司的MC68系列、Zilog公司的Z8系列和ARM公司的ARM9、ARM10和ARM11等。

1.2 计算机的硬件组成 哈佛结构的存储器设计

注意 1.3 计算机系统 计算机系统=硬件系统+软件系统 硬件通常是指一切看得见,摸得到的设备实体;软件通常是泛指各类程序和文件,它们实际上是由一些算法以及其在计算机中的表示所构成的。

软件系统 计算机软件是程序的有序集合,而程序则是指令的有序集合 1.软件系统 2.程序设计语言 3.操作系统 4.数据库

软件系统 运行、维护、管理、应用计算机所编制的所有程序及文档的总和 软件通常分为系统软件和应用软件: 操作系统 编辑程序 汇编程序 系统软件 语言处理程序 编译程序 解释程序 数据库管理系统 软件 装配连接程序 通用软件(如工具软件) 应用软件 实用软件 用户程序

软件系统 系统软件 应用软件 用来管理整个计算机系统 语言处理程序 操作系统 软 件 服务性程序 数据库管理系统 网络软件

软件系统 1)应用软件 应用软件是为解决某种应用问题而编制的程序

软件系统 2)系统软件 系统软件用于实现计算机系统的管理、调度、监视和服务等功能 系统软件一般包括以下6类:

软件系统 ⑴服务性程序 又称为工具软件,包括诊断程序、调试程序等 ⑵语言处理程序 将用汇编语言或高级语言编制的源程序,翻译成机器可以直接识别的目的程序(机器语言程序) 不同语言的源程序,对应有不同的语言处理程序 语言处理程序有汇编程序、编译程序、解释程序3种

软件系统 语言分代 第一代: 机器指令语言,面向机器 第二代: 汇编语言,面向机器 第三代: 高级语言,面向问题 * FORTRAN 科学计算和工程计算 * PASCAL 结构化程序设计 * C++ 面向对象 * Java 适应网络环境 * ALGOL、COBOL、BASIC、C、PL/1 第四代: 第四代语言(4GL),面向对象(object-orionted)语言 * 集成语言如Power Builder、Delphi等 * 面向对象语言如VB、VC、C++ 、HTML、Java等 * 辅助软件CASE,CAD,CAM等

软件系统 ⑶操作系统 控制和管理计算机的各种资源 自动调度用户作业程序 处理各种中断 是用户与计算机的接口

软件系统 ⑷数据库管理系统 数据库 数据库和数据库管理软件一起,组成了数据库管理系统 是一种计算机软、硬件资源组成的系统 能够有组织、动态地存储大量的相关数据,方便多用户访问 数据库和数据库管理软件一起,组成了数据库管理系统

软件系统 ⑸标准库程序 ⑹计算机网络软件 为方便用户而预先按照标准格式编制好的一些常用程序段所组成的标准程序库 为计算机网络而配置的系统软件,负责对网络资源进行组织和管理,实现相互之间的通信 包括网络操作系统和数据通信处理程序 前者实现网络资源管理 后者实现网络操作

程序设计语言 1)机器语言 2)汇编语言 3)算法语言

程序设计语言 1)机器语言 早期人们直接用机器语言(即机器指令代码)编写程序,计算机完全可以“识别”并执行,所以又叫做目的程序 但是用机器语言编写程序需要耗费大量的人力和时间,且容易出错

程序设计语言 2)汇编语言 指令助记符 汇编语言(Assembly Language) 汇编程序(Assembler) 为了编写程序方便、提高机器使用效率,人们用约定的文字、符号和数字按规定格式来表示各种不同的指令,每条基本指令都被指定了一个表示其功能又便于记忆的短的名字,称为指令助记符(如ADD、SUB、MULT、JUMP等) 汇编语言(Assembly Language) 用指令助记符表示的指令来编写程序 汇编程序(Assembler) 用来把汇编语言程序转换为计算机可以理解、用机器语言表示的目的程序 机器语言及汇编语言,对于特定类型的计算机而言是唯一的 一台ARM体系结构的计算机无法理解一台Intel Pentium计算机的机器语言

程序设计语言 3)算法语言 算法语言 是指按实际需要规定好的一套基本符号,以及由这套基本符号构成程序的规则 比较接近数学语言,直观通用,与具体机器无关 有影响的算法语言包括BASIC、FORTRAN、C、C++、JAVA等 复杂程序采用算法语言编写,能够更便利地表达程序员的设计思想,帮助减少程序错误 源程序(Source) 是指用算法语言编写的程序 不能由机器直接识别和执行 必须“翻译”为机器语言后才能由机器识别和执行

程序设计语言 ⑴编译程序(Compiler) ⑵解释程序(Interpreter) 源程序“翻译”方法 把用算法语言编写的源程序翻译成目的程序,然后在运行系统中执行目的程序,得出计算结果 编译程序和运行系统合称为编译系统 ⑵解释程序(Interpreter) 进行解释执行,即逐个解释并立即执行源程序的语句 不是编译出目的程序后再执行,而是逐一解释语句并立即得出计算结果

操作系统 管理计算机资源(如处理器、存储器、外围设备和各种编译、应用程序) 自动调度用户的作业程序 使多个用户能有效地共用一套计算机系统

操作系统 三大功能 具体功能 资源管理: 硬件,软件 组织协调各部分运行 界面处理 作业操作 资源管理 对CPU、内存、外设以及各类程序和数据进行管理 中断处理 并行操作以及异常处理 I/O处理 调度 对处理机、进程、作业、外设等进行调度和管理 错误处理 保护和保密 对程序和数据进行必要的保护和数据安全处理 记账

操作系统 操作系统的基本类型 批处理操作系统(BOS--Batch operating system) 程序一旦进入计算机,由计算机统一调度运行,高效但不便调试和人机对话 分时系统(TSOS--Time sharing operating system) 用户按分时方式使用计算机 实时系统(RTOS--Real time operating system) 计算机按用户优先级别给予响应,要求响应时间快,安全性能好 实时过程控制 实时信息处理 网络操作系统(NOS) 利用计算机网络将分布在不同地理位置的计算机互联,NOS用于对多台计算机及其设备之间的通信进行有效的监护和管理 分布式处理操作系统(DPS) 功能分布处理的多处理机系统 常用的操作系统有DOS、Windows、OS/2、UNIX等,网络操作系统有Windows NT、Windows2000 Server、Linux等

操作系统 操作系统的管理功能 处理机管理 分配或回收处理机 存储管理 文件管理 设备管理 处理机管理 分配或回收处理机 作业管理 作业调度,设置作业的状态(运行,挂起等),属高级别管理 进程管理 进程调度,属低级别的管理 线程管理 线程调度 存储管理 分配内存空间(或回收) 为作业或进程分配存储空间.(见表1.3) 内存保护 如不同作业访问公共区时限制其对公共区数据的修改等 地址转换 实现逻辑地址到物理 文件管理 外存,文件目录表,文件分配表 设备管理 I/O子系统,处理外部设备的中断请求(读,写等),分配外部设备等

数据库 大量数据和表格按一定的规律组织起来,形成数据库(Database,DB) 数据库就是实现有组织、动态地存储大量相关数据,方便多用户访问的计算机软、硬件资源所组成的系统 数据库和数据库管理软件一起,组成了数据库管理系统(Database Management System,DBMS)

数据库 系统/应用软件,数据统一管理,共享度高,数据冗余度较小,安全保密性较高 3类主要数据模型: 层次数据模型 网状数据模型 关系数据模型 关系数据库使用方便,广泛应用。常用的关系型数据库有FoxPro、Paradox、Access以及SyBase、Oracle、Informix、DB/2、SQL Server等

1.3 计算机系统 1.3.1 硬件与软件的关系 硬件是计算机系统的物质基础,软件是计算机系统的灵魂。硬件和软件是相辅相成的,不可分割的整体。 当前计算机的硬件和软件正朝着互相渗透,互相融合的方向发展,在计算机系统中没有一条明确的硬件与软件的分界线。硬件和软件之间的界面是浮动的,对于程序设计人员来说,硬件和软件在逻辑上是等价的。

1.3 计算机系统 硬件软化:原来由硬件实现的操作改由软件来实现。它可以增强系统的功能和适应性。 软件硬化:原来由软件实现的操作改由硬件来实现。它可以显著降低软件在时间上的开销。

1.3 计算机系统 固件是指那些存储在能永久保存信息的器件(如ROM)中的程序,是具有软件功能的硬件。固件的性能指标介于硬件与软件之间,吸收了软、硬件各自的优点,其执行速度快于软件,灵活性优于硬件,是软、硬件结合的产物,计算机功能的固件化将成为计算机发展中的一个趋势。

1.3 计算机系统 1.3.2 系列机和软件兼容 系列机是指一个厂家生产的,具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。 系列机应在指令系统、数据格式、字符编码、中断系统、控制方式、输入/输出操作方式等方面保持统一,从而保证软件的兼容性。 软件兼容:向上兼容 向下兼容 向前兼容 向后兼容 √ √

1.3 计算机系统

1.3 计算机系统 1.3.3 计算机系统的多层次结构 微程序级(实际机器) 机器语言级(实际机器) 汇编语言级(虚拟机器) 应用语言级(虚拟机器) 高级语言级(虚拟机器) 操作系统级(虚拟机器) 硬操作时序(实际机器) 第0级 第1级 第2级 第3级 第4级 第5级 第6级 应用语言级(虚拟机器) 1.3.3 计算机系统的多层次结构 现代计算机系统是一个硬件、固件与软件组成的十分复杂的综合体,我们可以把它看成是按功能划分的多级层次结构。 为了对计算机系统进行描述、分析、设计和使用,人们从语言的角度出发,把计算机系统按功能划分成多层次级别,每一级以一种不同的语言为特征,每一级都能进行程序设计 应用程序 高级语言级(虚拟机器) 编译程序 汇编语言级(虚拟机器) 汇编程序 操作系统级(虚拟机器) 操作系统 机器语言级(实际机器) 微程序 微程序级(实际机器) 硬联逻辑 硬联逻辑(实际机器)

1.3 计算机系统 1.3.4 实际机器和虚拟机器 对每一个机器级的用户来说,都可以将此机器级看成是一台独立的使用自己特有的“机器语言”的机器。 在计算机系统的多层次结构中,除第0、1、2级外,上面四级均为虚拟机。 虚拟计算机是指这个计算机只对该级的观察者存在。对某一层次的观察者来说,他只能是通过该层次的语言来了解和使用计算机,至于下层是如何工作和实现的就不必关心了。简而言之,虚拟计算机是指以软件或以软件为主实现的机器。

1.4.1 计算机的工作过程 1.4 计算机的工作过程和主要性能指标 将编制好的程序放在主存中,由控制器控制逐条取出指令执行,以计算a+b-c=?为例加以说明。 设a、b、c为已知的3个数,分别存放在主存的5~7号单元中,结果将存放在主存的8号单元

1.4 计算机的工作过程和主要性能指标 数据总线 累加器 ALU 000 001 002 003 005 006 007 008 004 存储器数据寄存器 数据总线 累加器 ALU 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT

1.4 计算机的工作过程和主要性能指标 取数指令 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT 存储器数据寄存器 数据总线 累加器 ALU LOAD 005 a a a

1.4 计算机的工作过程和主要性能指标 加法指令 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT 存储器数据寄存器 数据总线 累加器 ALU LOAD 005 ADD 006 a+b a a b a b

1.4 计算机的工作过程和主要性能指标 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT 存储器数据寄存器 数据总线 累加器 ALU a+b 减法指令 SUB 007 a+b-c c c

1.4 计算机的工作过程和主要性能指标 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT 存储器数据寄存器 数据总线 累加器 ALU a+b a+b-c 存数指令 STORE 008 a+b-c a+b-c a+b-c

1.4 计算机的工作过程和主要性能指标 000 001 002 003 005 006 007 008 004 主存 b a c LOAD 005 ADD 006 SUB 007 STORE 008 HALT 存储器数据寄存器 数据总线 累加器 ALU a+b a+b-c 停机指令 HALT

1.4.2 计算机的主要性能指标 1.4 计算机的工作过程和主要性能指标 1.机器字长 机器字长是指参与运算的数的基本位数,它是由加法器、寄存器、数据总线的位数决定的。 在计算机中为了更灵活地表达和处理信息,许多计算机又以字节(Byte)为基本单位,一个字节等于8位二进制位(bit)。 不同的计算机,字(Word)可以不相同,但对于系列机来说,在同一系列中,字却是固定的,如80X86系列中,一个字等于16位;IBM303X系列中,一个字等于32位。

2.数据通路宽度 1.4 计算机的工作过程和主要性能指标 数据总线一次所能并行传送信息的位数,称为数据通路宽度。它影响到信息的传送能力,从而影响计算机的有效处理速度。这里所说的数据通路宽度是指外部数据总线的宽度,它与CPU内部的数据总线宽度(内部寄存器的大小)有可能不同。 内、外数据通路宽度相等的CPU有:Intel 8086、80286、80486等; 外部<内部的CPU有:8088、80386SX等; 外部>内部的CPU有:Pentium等。

3.主存容量 1.4 计算机的工作过程和主要性能指标 一个主存储器所能存储的全部信息量称为主存容量。衡量主存容量单位有两种: ① 字节数。这类计算机称为字节编址的计算机。每1024个字节称为1K字节(210=1K),每1024K字节称为1M字节(220=1M),每1024M字节称为1G字节(230=1G)。 ② 字数×字长。这类计算机称为字编址的计算机。如:4096×16表示存储器有4096个存储单元,每个存储单元字长为16位。

4.运算速度 1.4 计算机的工作过程和主要性能指标 以MIPS和MFLOPS作为计量单位来衡量运算速度。 MIPS表示每秒百万条指令。

计算机系统的主要性能指标(某些教材) 1.主频(时钟周期) 2.字长(指令长度、存储单元长度) 3.运算速度 4.兼容性及其分类 5.系统的可靠性 6.系统可维护性 7.性能价格比

早期: 字长、运算速度和存储容量三大指标 1.主频(时钟周期) 2.字长 单位为MHz或GHz: MHz=1024KHz GHz =1024MHz 如Intel8086为5MHz,80286为8MHz,80386为16MHz,80486在25M— 33MHz之间,而奔腾(Pentium IV)的芯片已达数GHz 2.字长 字长指运算器中一条指令的二进制位数,有4位、8位、16位、32位和64位之分, Pentium芯片也已到达64位,有些大中小型机长达64位或更长。 (1)运算精度 , 字长越长,精度越高,当k位十进制数与k位二进制数比较时,有 两边取对数 说明要保持k位十进制数的精度,至少要3.3倍c位二进制数位数

(2)指令长度 机器字长决定了指令的信息位长度,适宜的信息位长度保证指令的处理功能 操作码位数多,表示指令条数多;指令中地址位长,寻址范围宽 (3)存储单元长度 通常存储单元长度等于字长或字长的整数倍,字长越长,寻址范围越大

3.运算速度 4.兼容性及其分类 5.系统的可靠性 早期: 加法指令次数/秒或存储指令次数/秒 现在: 等效速度或平均速度 等效速度根据统计得到的某机各种指令的运算比例及执行时间,由加权平均法求得 4.兼容性及其分类 “兼容”是广泛的概念,包括数据和文件的兼容、程序兼容(语言兼容)、系统程序兼容、 设备兼容以及所谓“向上兼容”等。“兼容”有巨大意义,对机器本身来说,兼容使机器便于推广,对用户来说,兼容可减少工作量和重复投资 软件兼容----计算机的软件能在不同的机种上运行 硬件兼容----某部件或设备能在不同的机种上运行 5.系统的可靠性 用平均无故障时间MTBF (Mean Time Between Failures)衡量。(或平均故障间隔时间)

6.系统可维护性 系统可维护性的意思是系统出了故障能尽快恢复,因此可用平均修复时间MTTR (Mean Time To Restore)表示 7.性能价格比 综合性能: 硬件、软件性能,价格

计算机系统的3个术语 1.计算机体系结构 计算机体系结构(Computer Architecture)定义为机器语言程序员所看到的计算机系统的属性 这些属性是计算机系统中由硬件或固件完成的功能 对通用寄存器型机器来说,这些属性主要包括:数据表示、寻址规则、寄存器定义、指令集、终端系统、存储系统、信息保护、I/O结构等 计算机体系结构概念的实质 确定计算机系统中软硬件的界面 界面之上是软件的功能,界面之下是硬件和固件的功能

计算机系统的3个术语 2.计算机组成 计算机组成(Computer Organization)指的是计算机体系结构的逻辑实现 包括机器内部的数据流和控制流的组成以及逻辑设计等 着眼于机器内各事件的排序方式与控制方式、各部件的功能以及各部件的联系

计算机系统的3个术语 3.计算机实现 计算机实现(Computer Implementation)指的是计算机组成的物理实现 包括处理机、存储器等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等 着眼于器件技术和微组装技术,其中器件技术在实现技术中占主导作用

计算机系统的3个术语 三个术语有紧密的关系 具有相同计算机体系结构(如指令系统相同)的计算机,可以采用不同的计算机组成 例如,取指令、指令译码、指令执行、访存取数、结果写回5个阶段,可以在时间上按顺序方式进行,也可以让它们在时间上按重叠方式进行(即时间并行),以提高执行速度 一种计算机组成可以采用多种不同的计算机实现 例如,存储器件可以采用静态RAM(SRAM)芯片,也可以采用动态RAM(DRAM)芯片,可以采用单片大规模集成电路,也可以采用中小规模集成电路进行构建 取决于性能价格比的要求与器件技术的现状

计算机体系结构的分类 1966年,Michael J. Flynn从计算机体系结构的并行性能出发,按照指令流和数据流的不同组织方式,把计算机系统的结构分为4类: Single Instruction (单指令) Multiple Instruction (多指令) Single Data (单数据) SISD (单指令流单数据流) MISD (多指令流单数据流) Multiple Data (多数据) SIMD (单指令流多数据流) MIMD (多指令流多数据流)

计算机体系结构的分类 1.SISD体系结构 SISD计算机是传统的顺序执行的计算机 在同一时刻只能执行一条指令(即只有一个控制流)、处理一个数据(即只有一个数据流) 通常由一个处理器和一个存储器组成 主要缺点 单个处理器的处理能力有限 这种结构没有发挥数据处理中的并行性潜力

计算机体系结构的分类 2.SIMD体系结构 SIMD计算机属于并行结构计算机 一条指令可以同时对多个数据进行运算 单一的指令部件,多个处理单元 由一个控制器、多个处理器、多个存储模块和一个互连网络组成 以阵列处理机和向量处理机为代表

计算机体系结构的分类 3.MISD体系结构 MISD计算机 具有多个处理单元,分别执行不同的指令流 同一个数据流顺次通过各个处理单元 只适用于某些特定的法,在目前常见的计算机系统中很少见

计算机体系结构的分类 4.MIMD体系结构 MIMD计算机属于并行结构计算机 多个处理单元根据不同的控制流程执行不同的操作,处理不同的数据 由多台处理机、多个存储模块和一个互连网络组成 每台处理机执行自己的指令,操作数也是各取各的,每个处理器都可以单独编程 以多处理机和机群系统为代表

第1章 小结 1.1 电子计算机与存储程序控制 1.2 计算机系统的硬件组成 存储程序概念 主机 计算机的五大基本部件 总线 三态门 大、中型机的典型结构 冯·诺依曼结构和哈佛结构

第1章 小结 1.3 计算机系统 1.4 计算机的工作过程和主要性能指标 计算机系统 硬件和软件的关系 系列机概念 软件兼容 固件的概念 虚拟机概念 1.4 计算机的工作过程和主要性能指标 主要性能指标 机器字长、数据通路宽度、主存容量