计算机组成原理教案设计

上传人:1777****777 文档编号:39977775 上传时间:2021-11-13 格式:DOC 页数:87 大小:4.44MB
返回 下载 相关 举报
计算机组成原理教案设计_第1页
第1页 / 共87页
计算机组成原理教案设计_第2页
第2页 / 共87页
计算机组成原理教案设计_第3页
第3页 / 共87页
点击查看更多>>
资源描述
教教 案案 2020121220201313 学年学年 秋秋 学期学期 教教 研研 室:室:软件与理论软件与理论教研室教研室 课程名称:课程名称: 计算机组成原理计算机组成原理 课程类型课程类型: : 专业基础专业基础 甘肃民族师范学院计算机科学系制甘肃民族师范学院计算机科学系制 课程名称课程名称 计算机组成原理计算机组成原理 总总 计:计: 9 90 0 学时学时 课程类课程类型型 专业专业基础课基础课 学分学分 6 6 理理 论论 讲讲 授授: 6060 学时学时 实验实验(实训)(实训) : 3030 学时学时 任课教师任课教师 职称职称 讲师讲师 授课对象授课对象 专业:专业: 计算机科学与技术计算机科学与技术 班级班级 1 1: 1 11111 班班级级 2 2:112112 教材教材信息信息 计算机组成原理 第二版 罗克露 电子工业出版社 参考资料参考资料 计算机组成原理 第四版 白中英 科学出版社 计算机体系结构 第二版 张晨曦 高等教育出版社 教学目教学目标标 计算机组成原理是计算机专业的一门核心专业基础课,本课程从普遍性和原理性出发, 讲述计算机硬件系统的组成、 各部件的结构及工作原理,使学生从普遍原则和典型案例两个角度理解计算机的组织与结构和工作过程,掌握计算机的硬件系统的设计方法。培养学生具有分析、设计和开发计算机硬件系统的能力,为后续课程打下坚实的基础。 重重 点点 与与 难难 点点 重点:重点: 计算机系统的硬件结构 中央处理器 控制单元 难点:难点: 总线控制 存储器工作原理 计算机的运算方法 CPU 的结构和功能 微程序控制器的设计 内容课时内容课时分分 配配 章章 内容内容 学时数学时数 1 1 计算机系统概论 4 2 2 数据在计算机中的表示方法 8 3 3 中央处理器 24 4 4 存储器 12 5 5 系统总线 4 6 6 输入输出系统 8 注:课程类型:通识课、专业基础课、专业发展课、专业方向课、职业技能训练课、实习实践课、实验课。 教 案 正 页 课程名称:课程名称:计算机组成原理计算机组成原理 任任 课课 教教 师师 总课序总课序 第第 1 1 次次 授授 课课 时时 间间 第第 1 1 周周 第第 1 1 次课次课 撰写(修改)稿撰写(修改)稿 20122012 年年 3 3 月月 5 5 日日 讲讲 课课 内内 容容 第第 5 5 章章 课课 题题 系统总线系统总线 课时安排课时安排 4 4 课时课时 授课方式授课方式 理论课 讨论课 实践课 实验课 习题课 其 他 教教 具具 准准 备备 黑板、多媒体演示 教教 学学 目目 的的 1.了解计算机的分类与应用范围。 2.掌握计算机的硬件,软件组成及各部件功能,理解计算机基本工作原理。 3.了解计算机软硬件发展历程及前景。 教教 学学 重重 点点 软件的组成,多级组成的计算机系统,冯诺依曼思想,程序局部性原理。 教教 学学 难难 点点 教教 学学 基基 本本 内内 容容 教学手段及时间分配教学手段及时间分配 复习旧课:复习旧课: 引入新课:引入新课:计算机系统概论计算机系统概论 新课内容:新课内容: 1.1.计算机系统的分类和应用。计算机系统的发展状况、应用领计算机系统的分类和应用。计算机系统的发展状况、应用领域和发展方向,计算机系统的分类(域和发展方向,计算机系统的分类(FlynnFlynn 分类法) 。分类法) 。 2.2.计算机系统的组成,计算机系统的硬件组成,计算机系统的计算机系统的组成,计算机系统的硬件组成,计算机系统的基本启动过程。基本启动过程。 3.3.计算机系统的层次结构计算机系统的层次结构 板书纲要:板书纲要: 1.计算机系统的分类和应用(1 学时) 。 2.计算机系统的组成(1 学时) 。 3.计算机系统的层次结构 (2学时) 。 ( (一一) ) 计算机发展历程计算机发展历程 第一台电子计算机 ENIAC 诞生于 1946 年美国宾夕法尼亚大学.ENIAC 用了 18000 电子管,1500 继电器,重 30 吨,占地 170m2,耗电 140kw,每秒计算 5000 次加法.冯诺依曼(VanNeumann)首次提出存储程序概念,将数据和程序一起放在存储器,使编程更加方便.50 年来,虽然对冯诺依曼机进行很多改革,但结构变化不大,仍称冯诺依曼机. 一般把计算机的发展分为五个阶段: 发展阶段 时间 硬件技术 速度/(次/秒) 第一代 1946-1957 电子管计算机时代 40 000 第二代 1958-1964 晶体管计算机时代 200 000 第三代 1965-1971 中小规模集成电路计算机时代 1 000 000 第四代 1972-1977 大规模集成电路计算机时代 10 000 000 第五代 1978-现在 超大规模集成电路计算机时代 100 000 000 ENIAC(Electronic Numerical Integrator And Computer)电子数字积分机和计算机 EDVAC(Electronic Discrete Variable Automatic Computer)电子离散变量计算机 组成原理是讲硬件结构的 系统结构是讲结构设计的 摩尔定律摩尔定律 微芯片上的集成管数目每 3 年翻两番.处理器的处理速度每 18 个月增长一倍. 每代芯片的成本大约为前一代芯片成本的两倍 新摩尔定律新摩尔定律 全球入网量每 6 个月翻一番. 数学家冯诺依曼(von Neumann)在研究 EDVAC 机时提出了“储存程序”的概念.以此为基础的各类计算机通称为冯诺依曼机.它有如下特点: 计算机由运算器,控制器,存储器,输入和输出五部分组成 指令和数据以同等的地位存放于存储器内,并可按地址寻访 指令和数据均用二进制数表示 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置 指令在存储器内按顺序存放 机器以运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成 图中各部件的功能 运算器用来完成算术运算和逻辑运算并将的中间结果暂存在运算器内 存储器用来存放数据和程序 控制器用来控制,指挥程序和数据的输入,运行以及处理运行结果 输入设备用来将人们熟悉的信息转换为机器识别的信息 输出设备将机器运算结果转为人熟悉的信息形式 运算器最少包括 3 个寄存器(现代计算机内部往往设有通用寄存器)和一个算术逻辑单元(ALU Arithmetic Logic Unit).其中 ACC(Accumulator)为累加器,MQ(Multiplier-Quotient Register)为乘商寄存器,X 为操作数寄存器,这 3 个寄存器在完成不同运算时,说存放的操作数类别也各不相同. 计算机的主要硬件指标 (4.a) 主机完成一条指令的过程以取数指令为例 (4.b) 主机完成一条指令的过程以存数指令为例 ( (二二) ) 计算机系统层次结构计算机系统层次结构 1. 1. 计算机硬件的基本组成计算机硬件的基本组成 计算机硬件主要指计算机的实体部分,通常有运算器,控制器,存储器,输入和输出五部分. CPU 是指将运算器和控制器集成到一个电路芯片中. 2. 2. 计算机软件的分类计算机软件的分类 计算机软件按照面向对象的不同可分两类: 系统软件:用于管理整个计算机系统,合理分配系统资源,确保计算机正常高效地运行,这类软件面向系统.(包括:标准程序库,语言处理程序,OS,服务程序,数据库管理系统,网络软件) 应用软件:是面向用户根据用户的特殊要求编制的应用程序,这类软件通常实现用户的某类要求. 3. 3. 计算机的工作过程计算机的工作过程 (1)计算机的工作过程就是执行指令的过程 指令由操作码和操作数组成: 操作码指明本指令完成的操作 地址码指明本指令的操作对象 (2)指令的存储 指令按照存储器的地址顺序连续的存放在存储器中. (3)指令的读取 为了纪录程序的执行过程,需要一个记录读取指令地址的寄存器,称为指令地址寄存器,或者程序计数器.指令的读取就可以根据程序计数器所指出的指令地址来决定读取的指令,由于指令通常按照地址增加的顺序存放,故此,每次读取一条指令之后,程序计数器加一就为读取下一条指令做好准备. (4)执行指令的过程 在控制器的控制下,完成以下三个阶段任务: 1)取指令阶段 按照程序计数器取出指令,程序计数器加一 2)指令译码阶段 分析操作码,决定操作内容,并准备操作数 3)指令执行阶段 执行操作码所指定内容 ( (三三) ) 计算机性能指标计算机性能指标 1. 1. 吞吐量吞吐量, ,响应时间响应时间 (1) 吞吐量:单位时间内的数据输出数量. (2) 响应时间:从事件开始到事件结束的时间,也称执行时间. 2. CPU2. CPU 时钟周期时钟周期, ,主频主频, ,CPICPI, ,CPUCPU 执行时间执行时间 (1) CPU 时钟周期:机器主频的倒数,TC (2)主频:CPU 工作主时钟的频率,机器主频 Rc (3)CPI:执行一条指令所需要的平均时钟周期 (4)CPU 执行时间: TCPU=InCPITC 操作码 地址码 In 执行程序中指令的总数 CPI 执行每条指令所需的平均时钟周期数 TC时钟周期时间的长度 3. MIPS3. MIPS, ,MFLOPSMFLOPS (1)MIPS:(Million Instructions Per Second) Te:执行该程序的总时间=指令条数/(MIPS) In:执行该程序的总指令数 Rc:时钟周期 Tc 的到数 MIPS 只适合评价标量机,不适合评价向量机.标量机执行一条指令,得到一个运行结果.而向量机执行一条指令,可以得到多个运算结果. (2) MFLOPS: (Million Floating Point Operations Per Second) MFLOPS=Ifn/(Te) Ifn:程序中浮点数的运算次数 MFLOPS 测量单位比较适合于衡量向量机的性能.一般而言,同一程序运行在不同的计算机上时往往会执行不同数量的指令数,但所执行的浮点数个数常常是相同的. 特点: 1. MFLOPS 取决于机器和程序两方面,不能反映整体情况,只能反映浮点运算情况 2. 同一机器的浮点运算具有一定的同类可比性,而非同类浮点操作仍无可比性 当前微处理器的发展重点 进一步提高复杂度来提高处理器性能 通过线程进程级的并发性提高处理器性能 将存储器集成到处理器芯片来提高处理器性能 发展嵌入式处理器 软件开发有以下几个特点 1) 开发周期长 2) 制作成本昂贵 3) 检测软件产品质量的特殊性 计算机的展望 一、计算机具有类似人脑的一些超级智能功能 要求计算机的速度达 1015/秒 二、芯片集成度的提高受以下三方面的限制 芯片集成度受物理极限的制约 按几何级数递增的制作成本 芯片的功耗、散热、线延迟 计算机辅助设计 CAD 计算机辅助制造 CAM 计算机辅助工艺规划 Computer Aided Process Planning CAPPCAPP 计算机辅助工程 Computer Aided Engineering CAECAE 计算机辅助教学 Computer Assisted Instruction CAICAI 科学计算和数据处理 工业控制和实时控制 网络技术应用 虚拟现实 办公自动化和管理信息系统 Computer Aided Design CAD,CAM,CIMS Computer Aided Manufacturing 多媒体技术 Computer Integrated Manufacturing System 人工智能,模式识别,文字/语音识别,语言翻译,专家系统,机器人 布布 置置 作作 业业 (书面作业、电子版作业)(书面作业、电子版作业) 课后小结课后小结 教 案 正 页 课程名称:课程名称:计算机组成原理计算机组成原理 任任 课课 教教 师师 总课序总课序 第第 2 2 次次 授授 课课 时时 间间 第第 2 2 周周 第第 1 1 次课次课 撰写(修改)稿撰写(修改)稿 2012012 2 年年 3 3 月月 5 5 日日 讲讲 课课 内内 容容 第第 2 2 章章 课课 题题 数据的表示数据的表示 课时安排课时安排 4 4 课时课时 授课方式授课方式 理论课 讨论课 实践课 实验课 习题课 其 他 教教 具具 准准 备备 黑板、多媒体演示 教教 学学 目目 的的 1. 掌握定点数和浮点数的表示方法,以及原码,反码,补码和移码表示。 2.了解指令系统的发展与性能要求,掌握指令的基本格式、指令和数据的寻址方式。 3. 掌握文字与字符串的表示方法。4. 理解内部总线的概念,分类及特点。 教教 学学 重重 点点 数据的概念,数据的表示方法,指令格式,寻址方式 教教 学学 难难 点点 数据的表示方法,指令格式,寻址方式 教教 学学 基基 本本 内内 容容 教学手段及时间分配教学手段及时间分配 复习旧课:复习旧课:计算机的基本组成计算机的基本组成 引入新课:引入新课:人和人人和人之间是如何交流的之间是如何交流的? 新课内容:新课内容: 1. 1.数据在计算机中的表示方法数据在计算机中的表示方法 2. 2.指令系统概述指令系统概述 3.3.指令格式指令格式 4. 4.寻址方式寻址方式 板书纲要:板书纲要: 实验讲解 课堂讨论 本讲共 2 课时,其中: 1.数据在计算机中的表示方法(2 学时) 2.指令系统概述(2 学时) 3.指令格式(2 学时) 4.寻址方式(2 学时) 教 案 中 页 ( (一一) ) 数制与编码数制与编码 1. 1. 进位计数制及其相互转换进位计数制及其相互转换 1 1) )进位计数制进位计数制 进位计数制是指按照进位制的方法表示数,不同的数制均涉及两个基本概念:基数和权. 基数:进位计数制中所拥有数字的个数. 权:每位数字的值等于数字乘以所在位数的相关常数,这个常数就是权. 任意一个 R 进制数 X,设整数部分为 n 位,小数部分为 m 位,则 X 可表示为: Xan-1rn-1 + an-2rn-2 + + a0r0 + a-1r-1 + a-2r-2 + + a-mr-m (X)r = mniiirK1 2 2) )不同数制间的数据转换不同数制间的数据转换 (1)二,八,十六进制数转换成十进制数 利用上面讲到的公式: (N)2=Di2i ,(N)8=Di8i, (N)16=Di16i,进行计算. (2)十进制数转换成二进制数 通常要对一个数的整数部分和小数部分分别进行处理,各自得出结果后再合并. 对整数部分对整数部分, ,一般采用除一般采用除 2 2 取余数法取余数法, ,其规则如下其规则如下: : 将十进制数除以 2,所得余数(0 或 1)即为对应二进制数最低位的值.然后对上次所得商除以 2,所得余数即为二进制数次低位的值,如此进行下去,直到商等于 0 为止,最后得的余数是所求二进制数最高位的值. 对小数部分对小数部分, ,一般用乘一般用乘 2 2 取整数法取整数法, ,其规则如下其规则如下: : 将十进制数乘以 2,所得乘积的整数部分即为对应二进制小数最高位的值,然后对所余数的小数部分部分乘以2,所得乘积的整数部分为次高位的值,如此进行下去,直到乘积的小数部分为 0,或结果已满足所需精度要求为止. (3)二进制数,八进制数和十六进制数之间的转换 八进制数和十六进制数是从二进制数演变而来的: 由 3 位二进制数组成 1 位八进制数; 由 4 位二进制数组成 1 位十六进制数. 对一个兼有整数和小数部分的数以小数点为界,小数点前后的数分别分组进行处理,不足的位数用 0 补足. 对整数部分将 0 补在数的左侧,对小数部分将 0 补在数的右侧.这样数值不会发生差错. 2. 2. 真值和机器数真值和机器数 真值:数据的数值通常以正(+)负(-)号后跟绝对值来表示,称之为“真值”. 机器数:在计算机中正负号也需要数字化,一般用 0 表示正号,1 表示负号.把符号数字化的数成为机器数. 3. BCD3. BCD 码码( (Binary Coded Decimal 以二进制编码的十进制码) ) 在计算机中采用4位二进制码对每个十进制数位进行编码.4位二进制码有16种不同的组合,从中选出10种来表示十进制数位的09,用 0000,0001,1001 分别表示 0,1,9,每个数位内部满足二进制规则,而数位之间满足十进制规则,故称这种编码为“以二进制编码的十进制(binary coded decima1,简称 BCD)码”. 在计算机内部实现 BCD 码算术运算,要对运算结果进行修正,对加法运算的修正规则是: 如果两个一位 BCD 码相加之和小于或等于(1001)2,即(9)10,不需要修正; 如相加之和大于或等于(1010)2,或者产生进位,要进行加 6 修正,如果有进位,要向高位进位. 4. 4. 字符与字符串字符与字符串 在计算机中要对字符进行识别和处理,必须通过编码的方法,按照一定的规则将字符用一组二进制数编码表 示.字符的编码方式有多种,常见的编码有 ASCII 码,EBCDIC 码等. 1)ASCII 码(American Standard Code for Information Interchange 美国信息交换标准码) ASCII 码用 7 位二进制表示一个字符,总共 128 个字符元素,包括 10 个十进制数字(0-9),52 个英文字母(A-Z和 a-z),34 专用符号和 32 控制符号. 2)EBCDIC 码为 Extended Binary Coded Decimal Interchange Code 的简称,它采用 8 位来表示一个字符. 3)字符串的存放 向量存储法:字符串存储时,字符串中的所有元素在物理上是邻接的. 串表存储法:字符串的每个字符代码后面设置一个链接字,用于指出下一个字符的存储单元的地址. 5. 5. 校验码校验码 Check DigitCheck Digit 数据校验码是一种常用的带有发现某些错误或自动改错能力的数据编码方法.其实现原理,是加进一些冗余码,使合法数据编码出现某些错误时,就成为非法编码. 这样,可以通过检测编码的合法性来达到发现错误的目的.合理地安排非法编码数量和编码规则,可以提高发现错误的能力,或达到自动改正错误的目的. 码距:码距根据任意两个合法码之间至少有几个二进制位不相同而确定的,仅有一位不同,称其码距为 1. 1)1)奇偶校验码奇偶校验码(Parity Bit)(Parity Bit)WIKI (开销最小,能发现数据代码中一位出错情况的编码,常用于存储器读写检查或 ASCII 字符或其它类型的信息传输的检查)P216 它的实现原理,是使码距由 1 增加到 2.若编码中有 1 位二进制数出错了,即由 1 变成 0,或者由 0 变成 1.这样出错的编码就成为非法编码,就可以知道出现了错误.在原有的编码之上再增加一位校验位,原编码n位,形成新的编码为 n+1 位.增加的方法有 2 种: 奇校验:增加位的 0 或 1 要保证整个编码中 1 的个数为奇数个. 偶校验:增加位的 0 或 1 要保证整个编码中 1 的个数为偶数个. 2)2)海明海明校验码校验码(Hamming Code)(Hamming Code)P100 实现原理,在数据中加入几个校验位,并把数据的每一个二进制位分配在几个奇偶校验组中.当某一位出错就会引起有关的几个校验组的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为自动纠错提供了依据. 假设校验位的个数为r,则它能表示2r个信息,用其中的一个信息指出“没有错误”,其余2r-1个信息指出错误发生在哪一位.然而错误也可能发生在校验位,因此只有 k=2r-1-r 个信息能用于纠正被传送数据的位数,也就是说要满足关系: 2rk+r+1 3)CRC3)CRC 校验码校验码(Cyclic Redundancy Check (Cyclic Redundancy Check 循环冗余校验循环冗余校验) )P144 CRC 校验码一般是指 k 位信息之后拼接 r 位校验码.关键问题是如何从 k 位信息方便地得到 r 位校验码,以如何从位 k+r 信息码判断是否出错. 将带编码的 k 位有效信息位组表达为多项式: 式 Ci 中为 0 或 1. 若将信息位左移 r 位,则可表示为多项式 M(x).xr.这样就可以空出 r 位,以便拼接 r 位校验位. CRC 码是用多项式 M(x).xr 除以生成多项式 G(x)所得的余数作为校验码的.为了得到 r 位余数,G(x)必须是r+1 位. 设所得的余数表达式为 R(x),商为 Q(x).将余数拼接在信息位组左移 r 位空出的 r 位上,就构成了 CRC 码,这个码的可用多项式表达为: M(x)xr+R(x)=Q(x)G(x)+R(x)+R(x) =Q(x)G(x)+R(x)+R(x) =Q(x)G(x) 因此,所得 CRC 码可被 G(x)表示的数码除尽. 将收到的 CRC 码用约定的生成多项式 G(x)去除,如果无错,余数应为 0,有某一位出错,余数不为 0. ( (二二) ) 定点数的表示和运算定点数的表示和运算 1. 1. 定点数的表示定点数的表示 1)无符号数的表示 无符号数就是指正整数,机器字长的全部位数均用来表示数值的大小,相当于数的绝对值. 对于字长为 n+1 位的无符号数的表示范围为: 0-1 2)带符号数的表示 (真值范围-n-1 n) 带符号数是指在计算机中将数的符号数码化.在计算机中,一般规定二进制的最高位为符号位,最高位为“0”表示该数为正,为“1”表示该数为负.这种在机器中使用符号位也被数码化的数称为机器数. 根据符号位和数值位的编码方法不同,机器数分为原码,补码和反码. (1)原码表示法 机器数的最高位为符号位,0表示正数,1表示负数,数值跟随其后,并以绝对值形式给出.这是与真值最接近的一种表示形式. 原码的定义: (2)补码表示法 机器数的最高位为符号位,0 表示正数,1 表示负数,其定义如下: (3)反码表示法 机器数的最高位为符号,0 表示正数,1 表示负数.反码的定义: 原码 补码 反码 整数 (mod ) (mod() 小数 (mod 2) (mod(2-) 0 =0.0000=1.0000 =0.0000 =0.0000=1.1111 负数原码求反+1 负数每位求反 移码 移码表示中零也是唯一的 真值真值的移码和补码仅差一个符号位.若将补码的符号位由 0 改为 1 或从 1 改为 0 即可得到真值的移码 乘法运算乘法运算可用移码和加法来实现,两个 n 位数相乘,总共要进行 n 次加法运算和 n 次移位运算 三种机器数的特点可以归纳为:三种机器数的特点可以归纳为: 三种机器数的最高位均为符号位.符号位和数值位之间可用“.”(对于小数)或“,”(对于整数)隔开 当真值为正时,原码,补码和反码的表示形式均相同,即符号位用“0”表示,数值部分与真值部分相同 当真值为负时,原码,补码和反码的表示形式不同,其它符号位都用“1”表示,而数值部分有这样的关系,即补码补码是原码的“求反加是原码的“求反加 1 1”, ,反码是原码的“每位求反”反码是原码的“每位求反”. . 2 2. . 浮点数的表示浮点数的表示 1 1) )浮点数的表示范围浮点数的表示范围; ; 浮点数是指小数点位置可浮动的数据,通常以下式表示: N=MRE 其中,N 为浮点数,M(Mantissa)(Mantissa)为尾数(可正可负),E(Exponent)(Exponent)为阶码(可正可负),R(Radix)(Radix)称为“阶的基数(底)”,而且 R 为一常数,一般为 2,8 或 16.在一台计算机中,所有数据的 R 都是相同的,于是不需要在每个数据中表示出来.因此,浮点数的机内表示一般采用以下形式: 浮点数的机内表示一般采用以下形式: Ms E M 1 位 n+1 位 m 位 Ms 是尾数的符号位,设置在最高位上. E 为阶码(移码),有 n+1 位,一般为整数,其中有一位符号位,设置在 E 的最高位上,用来表正阶或负阶. M 为尾数(原码),有 m 位,由 Ms 和 M 组成一个定点小数.Ms=0,表示正号,Ms=1,表示负.为了保证数据精度属数通常用规格化形式表示:当 R2,且尾数值不为 0 时,其绝对值大于或等于(0.5)10.对非规格化浮点数,通过将尾数左移或右移,并修改阶码值使之满足规格化要求. 浮点数的表示范围以通式 N=MRE设浮点数阶码的数值位取 m 位,尾数的数值位取 n 位 2 2) )IEEE754IEEE754 标准标准( (Institute of Electrical and Electronics Engineers 美国电气和电子工程协会) ) S S 阶码(含阶符) 尾 数 数符 小数点位置 根据 IEEE 754 国际标准,常用的浮点数有三种格式: 符号位S S 阶码 尾数 总位数 短实数 1 8 23 32 长实数 1 11 52 64 临时实数 1 15 64 80 单精度格式 32 位,阶码为 8 位,尾数为 23 位.另有一位符号位 S,处在最高位. 由于 IEEE754 标准约定在小数点左部有一位隐含位,从而实际有效位数为 24 位.这样使得尾数的有效值变为1.M . 例如,最小为 x1.00,最大为 x1.11.规格化表示.故小数点左边的位横为 1,可省去. 阶码部分采用移码表示,移码值 127,1 到 254 经移码为-126 到+127. S(1 位) E(8 位) M(23 位) N(共 32 位) 符号位 0 0 0 符号位 0 不等于 0 (-1)S2-126(0.M) 为非规格化数 符号位 1 到 254 之间 - (-1)S2E-127(1.M) 为规格化数 符号位 255 不等于 0 NaN(非数值) 符号位 255 0 无穷大 0 有了精确的表示,无穷大也明确表示.对于绝对值较小的数,可以采用非规格化数表示,减少下溢精度损失.非规格化数的隐含位是 0,不是 1. (三)(三) 指令系统指令系统 人们习惯把每一条机器语言的语句称为机器指令机器指令, ,而又将全部机器指令的集合称为机器的指令系统指令系统 指令的执行过程 读取指令 指令地址(在 PC 中)送到地址寄存器 读主存,读出内容(指令代码)送入指令寄存器 IR 分析指令 形成下一条指令的地址并送到 PC 中 执行指令 用一到几个执行步骤,完成指令的运算、操作功能, 不同的指令操作步骤和具体运算、操作功能各不相同 减产有无中断请求 无中断请求、进入下一条指令的执行过程 ( (一一) ) 指令格式指令格式 1. 1. 指令的基本格式指令的基本格式 计算机是通过执行指令来处理各种数据的.为了指出数据的来源,操作结果的去向及所执行的操作,一条指令必须包含下列信息: (1)操作码,具体说明了操作的性质及功能. (2)操作数的地址. (3)操作结果的存储地址. (4)下一条指令的地址. 从上述分析可知,一条指令实际上包括两种信息即操作码和地址码. 操作码(operation code)用来表示该指令所要完成的操作(如加,减,乘,除,数据传送等),其长度取决于指令系统中的指令条数.如操作码占 7 位,则该机器最多包含 27=128 条指令. 地址码用来描述该指令的操作对象,或直接给出操作数或指出操作数的存储器地址或寄存器地址(即寄存器名). 操作码的长度不固定会增加指令译码和分析难度操作码的长度不固定会增加指令译码和分析难度, ,使控制器的设计复杂使控制器的设计复杂. . 操作码 寻址地址 形式地址 A 形式地址 指令字中的地址 有效地址 操作数的真实地址 约定 指令字长=存储字长=机器字长 2. 2. 定长操作码指令格式定长操作码指令格式 1 1) )零地址指令零地址指令 格式: OP操作码 OP 指令中只有操作码,而没有操作数或没有操作数地址.这种指令有两种可能: (1)无需任何操作数,如空操作指令,停机指令等. (2)所需的操作数是默认的.如堆栈结构计算机的运算指令,所需的操作数默认在堆栈中,由堆栈指针 SP 隐含指出,操作结果仍然放回堆栈中.又如 Intel 8086 的字符串处理指令,源,目的操作数分别默认在源变址寄存器 SI 和目的变址寄存器 DI 所指定的存储器单元中. 2 2) )一地址指令一地址指令 格式: OP操作码 A操作数的存储器地址或寄存器名 指令中只给出一个地址,该地址既是操作数的地址,又是操作结果的存储地址.如加 1,减 1 和移位等单操作数指令均采用这种格式,对这一地址所指定的操作数执行相应的操作后,产生的结果又存回该地址中. 在某些字长较短的微型机中(如早期的 Z80,Intel8080,MC6800 等),大多数算术逻辑指令也采用这种格式,第一个源操作数由地址码 A 给出,第二个源操作数在一个默认的寄存器中,运算结果仍送回到这个寄存器中,替换了原寄存器内容,通常把这个寄存器称累加器. 3 3) )二地址指令二地址指令 格式: OP操作码 A1第一个源操作数的存储器地址或寄存器地址. A2第二个源操作数和存放操作结果的存储器地址或寄存器地址. 这是最常见的指令格式,两个地址指出两个源操作数地址,其中一个还是存放结果的目的地址.对两个源操作数进行操作码所规定的操作后,将结果存入目的地址,在本例中即为 A2 指定的地址 4 4) )三地址指令三地址指令 格式: OP操作码 A1第一个源操作数的存储器地址或寄存器地址 A2第二个源操作数的存储器地址或寄存器地址 A3操作结果的存储器地址或寄存器地址 其操作是对 A1,A2 指出的两个源操作数进行操作码(OP)所指定的操作,结果存入 A3 中. 6)6)多地址指令多地址指令 在某些性能较好的大,中型机甚至高档小型机中,往往设置一些功能很强的,用于处理成批数据的指令,如字符串处理指令,向量,矩阵运算指令等. 为了描述一批数据,指令中需要多个地址来指出数据存放的首地址,长度和下标等信息 3. 3. 扩展操作码指令格式扩展操作码指令格式 设某机器的指令长度为 16 位,包括 4 位基本操作码字段和三个 4 位地址字段,其格式下: OP(4) A1(4) A2(4) A3(4) 4位基本操作码有16个码点(即有16种组合),若全部用于表示三地址指令,则只有16条.但,若三地址指令仅需 15 条,两地址指令需 15 条,一地址指令需 15 条,零地址指令需 16 条,共 61 条指令,应如何安排操作码? 显然,只有 4 位基本操作码是不够的,必须将操作码的长度向地址码字段扩展才行. 一种可供扩展的方法和步骤如下: (1)15条三地址指令的操作码由4位基本操作码从00001110给出,剩下一个码点1111用于把操作码扩展到A1,即 4 位扩展到 8 位; (2)15条二地址指令的操作码由8位操作码从1111000011111110给出,剩下一个码点11111111用于把操作码扩展到 A2,即从 8 位扩展到 12 位; (3)15 条一地址指令的操作码由 12 位操作码从 111111110000111111111110 给出,剩下的一个码点111111111111 用于把操作码扩展到 A3,即从 12 位扩展到 16 位; (4)16条零地址指令的操作码由16位操作码从11111111111100001111111111111111给出. 指令字长取决于操作码的长度操作码的长度、操作数地址的长度操作数地址的长度和操作数地址的个数操作数地址的个数. .为了提高指令的运行速度和节省存储空间,通常尽可能的吧常用的指令(如数据传输指令、算逻运算指令等)设计成单字长或短字长格式的指令. 操作数类型 地址 地址实际也可以看做是一种数据,在许多情况下要计算操作数的地址.这时地址可看作无符号的整数 数字 计算机中常见的数字有定点数、浮点数和十进制数字 字符 在应用计算机时,文本或者字符串也是一种常见的数据类型 逻辑数据 计算机除了做算术运算外,有时还做逻辑运算,此时n个0和1的组合不是被看做算术数字而被看做逻辑数 奔腾PentiumPentium 处理器的数据类型有逻辑数、有符号数(补码)、无符号数、压缩和未压缩的 BCD 码、地址指针、位串以及浮点数(符合 IEEE754 标准)等 指令操作类型 1.数据传送 数据传送包括寄存器与寄存器,寄存器与存储单元,存储单元与存储单元之间的传送 2.算术逻辑操作 这操作可实现算术运算(加,减,乘,除,增 1,减 1,取负即求补)逻辑运算(与,或,非,异或) 3.移位 移位可分为算术移位,逻辑移位和循环移位三种 4.转移 无条件转移 不受任何约束条件直接把程序转移到下一条需执行指令的地址 条件转移 根据当前指令的执行结果决定是否需要转移 调用与返回 子程序可在多处被调用 子程序调用可出现在子程序中,即允许子程序嵌套 每个 CALL 指令都对应一条 RETURN 指令 CPU必须记住返回地址,使子程序能准确返回,返回地址存放在以下 3处 寄存器内.机器内设有专用寄存器,专用于存放返回地址 子程序的入口地址内 栈顶内.现代计算机都设有堆栈,执行 RETURN 指令后,便可自动从堆栈内取出应返回的地址 陷 阱 (Trap) 与陷阱指令 其实是一种意外事故的中断,一般不提供给用户使用,作为隐指令,再出现故障时,由 CPU 自动产生并执行 5.输入输出 对于 I/O 单独编址的计算机而言,通常设有输入输出指令,他完成从外设中的寄存器读入一个数据到 CPU 寄存器内,或将数据从 CPU 的寄存器输出至某外设的寄存器中 6.其它 包括等待指令、停机指令、空操作指令、开中断指令、关中断指令、置条件码指令等 备注 有些大型或巨型机还设有向量指令,可对整个向量或矩阵进行求和求积运算 ( (二二) ) 指令的寻址方式指令的寻址方式 1. 1. 有效地址的概念有效地址的概念 操作数的真实地址称为有效地址,记做 EA,它是寻址方式和形式地址共同来决定的. 2. 2. 数据寻址和指令寻址数据寻址和指令寻址 寻址方式是指确定本条指令的数据地址以及下一条将要执行的指令的地址,与硬件结构密切相关,寻址方式分为指令寻址和数据寻址两大类 指令寻址分为顺序寻址和跳跃寻址两种. 顺序寻址可以通过程序计数器 PC 加 1 自动形成下一条指令的地址,跳跃寻址则通过转移类指令实现,是通过对 PC 的运算得到新的下一条指令的地址. 3. 3. 常见寻址方式常见寻址方式 1)立即寻址 所需的操作数由指令的地址码部分直接给出,就称为立即数(或直接数)寻址方式.这种方式的特点是取指时,操作码和一个操作数同时被取出,不必再次访问存储器,提高了指令的执行速度.但是由于这一操作数是指令的一部分,不能修改,而一般情况下,指令所处理的数据都是在不断变化的(如上条指令的执行结果作为下条指令的操作数),故这种方式只能适用于操作数固定的情况.通常用于给某一寄存器或存储器单元赋初值或提供一个常数等.(图中“#”表示立即寻址的标记,A 的位数限制了这类指令所能表述的立即数的范围) 2)直接寻址 指令的地址码部分给出操作数在存储器中的地址. 3)隐含寻址 操作数的地址隐含在操作码或者某个寄存器中. 4)间接寻址 在寻址时,有时根据指令的地址码所取出的内容既不是操作数,也不是下一条要执行的指令,而是操作数的地址或指令的地址,这种方式称为间接寻址或间址. 5)寄存器寻址 计算机的中央处理器一般设置有一定数量的通用寄存器,用以存放操作数,操作数的地址或中间结果.假如指令地址码部分给出某一通用寄存器地址,而且所需的操作数就在这一寄存器中,则称为寄存器寻址.通用寄存器的数量一般在几个至几十个之间,比存储单元少很多,因此地址码短,而且从寄存器中存取数据比从存储器中存取快得多,所以这种方式可以缩短指令长度,节省存储空间,提高指令的执行速度,在计算机中得到广泛应用. 6)寄存器间接寻址 EA = ( Ri ) 有效地址在寄存器中 寄存器中给出的是操作数的地址,因此还需要访问一次存储器才能得到操作数. 7)基址寻址 在计算机中设置一个专用的基址寄存器,或由指令指定一个通用寄存器为基址寄存器.操作数的地址由基址寄存器的内容和指令的地址码 A 相加得到 8)变址寻址 指令地址码部分给出的地址 A 和指定的变址寄存器 X 的内容通过加法器相加,所得的和作为地址从存储器中读出所需的操作数.这是几乎所有计算机都采用的一种寻址方式. 9)相对寻址 把程序计数器 PC 的内容(即当前执行指令的地址)与指令的地址码部分给出的位移量(disp)之和作为操作数的地址或转移地址,称为相对寻址. 主要用于转移指令,执行本条指令后,将转移到(PC)disp,(PC)为程序计数器的内容.相对寻址有两个特点: 1 转移地址不是固定的,它随着 PC 值的变化而变化,并且总是与 PC 相差一个固定值 disp,因此无论程序装人存储器的任何地方,均能正确运行,对浮动程序很适用. 2位移量可正,可负,通常用补码表示.如果位移量为 n 位,则这种方式的寻址范围在 (PC)-2n-1 (PC)+2n-1-1 之间 计算机的程序和数据一般是分开存放的,程序区在程序执行过程中不允许修改.在程序与数据分区存放的情况下,不用相对寻址方式来确定操作数地址. 10)堆栈寻址 在一般计算机中,堆栈主要用来暂存中断和子程序调用时现场数据及返回地址,用于访问堆栈的指令只有压入(即进栈)和弹出(即退栈)两种,它们实际上是一种特殊的数据传送指令: 压入指令(PUSH)是把指定的操作数送入堆栈的栈顶; 弹出指令(POP)的操作刚好相反,是把栈顶的数据取出,送到指令所指定的目的地. 一般的计算机中,堆栈从高地址向低地址扩展,即栈底的地址总是大于或等于栈顶的地址(也有少数计算机刚好相反)当执行压入操作时,首先把堆栈指针(SP)减量(减量的多少取决于压入数据的字节数,若压入一个字节,则减 1;若压入两个字节,则减 2,以此类推),然后把数据送人 SP 所指定的单元;当执行弹出操作时,首先把 sp 所指定的单元(即栈顶)的数据取出,然后根据数据的大小(即所占的字节数)对 SP 增量. 设计指令格式应考虑的各种因素 指令系统集中反映了机器的性能,又是程序员编程的依据,高档机必须能兼容低档机的程序运行,称之为“向上兼容”. 指令格式集中体现了指令系统的功能.为此,在确定指令系统时,必须从以下几个方面综合考虑. 操作类型:包括指令数及操作的难易程度 数据类型:确定哪些数据类型可以参加操作 指令格式:包括指令字长、操作码位数、地址码位数、地址个数、寻址方式类型、以及指令字长和操作码位数是否可变等. 寻址方式:包括指令和操作数具体有哪些寻址方式. 寄存器个数:寄存器的多少直接影响指令的执行时间. 寻址方式 详情 指令寻址 顺序寻址 顺序寻址顺序寻址可通过程序计数器 PC 加 1 自动形成下一条指令的地址 跳跃寻址 跳跃寻址跳跃寻址则通过转移类指令实现 数据寻址 1.立即寻址 操作数本身设在指令字内,即形式地址 A 不是操作数地址而是操作数本身 指令执行阶段不访存 A 的位数限制了这类指令所能表述的立即数的范围 2.直接寻址 指令中的形式地址 A 就是操作数的真实地址 EA,即 EA=A 执行阶段访问一次存储器 缺点在于 A 的位数限制了操作数的寻址范围而且必须修改 A 的值才能修改操作数的地址 3.隐含寻址 指令字中不明显给出操作数的地址,其操作数的地址隐含在操作码或某个寄存器中 由于隐含寻址在指令字中少了一个地址,因此,这种寻址方式的指令有利于缩短指令字长 4.间接寻址 倘若指令字中的形式地址不直接指出操作数的地址,而是指出操作数有效地址所在的存储单元的地址,也就是说,有效地址是由形式地址间接提供的,即为间接地址,即 EA=(A) 优点 1. 与直接寻址相比,扩大了操作数的寻址范围,因为 A 的位数通常小于指令字长,而存储字长可与指令字长相等 2. 它便于编制程序 缺点 指令的执行阶段需要访存两次(一次间接寻址)或多次(多次间接寻址),致使指令执行时间延长 5.寄存器寻址 在寄存器寻址的指令字中,地址码字段直接指出了寄存器的编号,即 EA=R 由于地址字段只需指明寄存器编号(计算机中寄存器数有限)故指令字 较短,节省了存储空间,因此寄存器寻址在计算机中得到广泛应用 执行阶段不访存,只访问寄存器,执行速度快 寄存器个数有限,可缩短指令字长 6.寄存器间接寻址 有效地址 EA+=(Ri),因有效地址 有效地址在寄存器中, 操作数在存储器中,执行阶段访存 便于编制循环程序 7.基址寻址 基址寻址需设有基址寄存器 BR,其操作数的有效地址 EA 等于指令字中的形式地址与基址寄存器中的内容(称为基地址)相加,即 EA=A+(BR) 采 用 专 用 寄 可扩大寻址范围 ( (三三) ) CISCCISC 和和 RISCRISC 的基本概念的基本概念 1 1CISCCISC( (复杂指令集计算机复杂指令集计算机) ) 随着VLSI技术的发展,计算机的硬件成本不断下降,软件成本不断提高,使得人们热衷于在指令系统中增加更多的指令和复杂的指令,来提高操作系统的效率,并尽量缩短指令系统与高级语言的语义差别,以便于高级语言的编译和降低软件成本. 另外,为了做到程序兼容,同一系列计算机的新机器和高档机的指令系统只能扩充而不能减去任意一条,因此,促使指令系统越来越复杂,某些计算机的指令多达几百条.例如,DEC 公司的 VAX 11/780 计算机有 303 条指令,18 种寻址方式,我们称这些计算机为复杂指令系统计算机(complex instruction set computer,简称CISC).Intel 公司的 180X86 微处理器,IBM 公司的大,中计算机均为 CISC. 2 2RISCRISC( (简单指令集计算机简单指令集计算机) ) ( (1 1) )RISCRISC 的产生的产生 1975 年 IBM 公司开始研究指令的合理性问题,IBM 的 John cocke 提出了 RISC 的想法. 对 CISC 的测试表明: 最长使用的是一些简单指令,占指令总数的 20%,但在程序中出现的频率却占 80%. 而占 20%的复杂指令,为实现其功能而设计的微程序代码却占总代码的 80%.CISC 研制时间长,成本高,难于实现流水线;因此出现了 RIC技术. 计算机执行程序所需的时间 P 可用下式表述: P=IP=I C C T T 其中,I 是高级语言程序编译后在机器上运行的机器指令数;C 为执行每条机器指令所需的平均机器周期;T 是每个机器周期的执行时间. ( (2 2) )RISCRISC 的特点的特点 1)优先选取使用频率最高的一些简单指令; 选用使用频度较高的一些 简单指令,复杂指令的存 器 作 基 址寄存器 有利于多道程序 BR 内容由操作系统或管理程序确定 在程序的执行过程中 BR 内容不变,形式地址 A 可变 采 用 通 用 寄存 器 作 基 址寄存器 由用户指定哪个通用寄存器作为基址寄存器 基址寄存器的内容由操作系统确定 在程序的执行过程中 R0 内容不变,形式地址 A 可变 8.变址寻址 变址寻址与基址寻址极为相似.其有效地址EA等于指令字中的形式地址A与变址寄存器 IX 的内容相加之和,即 EA=A+(IX) 可扩大寻址范围 IX 的内容由用户给定 在程序的执行过程中 IX 内容可变,形式地址 A 不变 便于处理数组问题 9.相对寻址 的有效地址是将 PC 的内容(即当前指令地址)与指令字中的形式地址 A(A 是相对于当前指令的位移量(可正可负,补码)相加而成,即 EA=(PC)+A A 的位数决定操作数的寻址范围 程序浮动 广泛应用于转移指令 10.堆栈寻址 要求计算机中设有堆栈.堆栈既可用寄存器组(称为硬堆栈)来实现,也可利用主存的一部分空间作堆栈(称为软堆栈) 硬堆栈 多个寄存器 软堆栈 制定的存储空间 功能由简单指令来组合 2)指令长度固定; 指令 长度固定、指令格式种类少、寻址方式少 3)只有取数/存数指令(load/store)访问内存; 只有 LOAD / STORE 指令访存 4)CPU 中的寄存器数量很多; CPU 中有多个 通用 寄存器 5)大部分指令在一个或小于一个机器周期完成; 采用 流水技术 一个时钟周期 内完成一条指令 6)硬布线控制逻辑为主,不用或少用微码控制; 采用 组合逻辑 实现控制器 7)一般用高级语言编程,特别重视编译优化,以减少程序执行时间. 采用 优化 的 编译 程序 ( (3 3) )RISCRISC 的发展的发展 1983 年,一些中小型公司开始推出 RISC 产品,由于其高性能价格比,市场占有率不断提高.1987 年 SUN 公司用SPARC 芯片构成工作站;目前一些大公司,IBM,DEC,Intel,Motorola 以将部分力量转移到 RISC 方面. ( (4 4) )CISCCISC 机与机与 RISCRISC 机的主要特征对比机的主要特征对比 CISC RISC 指令系统 指令数 指令格式 指令字长 寻址方式 可访问指令 各种指令使用频率 各种指令执行时间 复杂,庞大 一般大于 200 一般大于 4 一般大于 4 不固定 不加限制 相差很大 相差很大 简单,精简 一般小于 100 一般小于 4 一般小于 4 固定 32 位 只有 LOAD/STORE 指令 相差不大 绝大多数在一个机器周期完成 优化编译实现 很难 较容易 程序源代码长度 较短 较长 控制逻辑实现方式 绝大多数为微程序控制 绝大多数为硬连线控制 RISC 机的主要优点可归纳如下 充分利用 VLSI 芯片的面积 提高了计算机运行速度 便于设计,降低成本,提高可靠性 有效支持高级语言程序 布布 置置 作作 业业 (书面作业、电子版作业)(书面作业、电子版作业) 课后小结课后小结 教 案 正 页 课程名称:课程名称:计算机组成原理计算机组成原理 任任 课课 教教 师师 总课序总课序 第第 3 3 次次 授授 课课 时时 间间 第第 2 2 周周 第第 1 1 次课次课 撰写(修改)稿撰写(修改)稿 2012012 2 年年 3 3 月月 5 5 日日 讲讲 课课 内内 容容 第第 3 3 章章 课课 题题 系统总线系统总线的概念及分类的概念及分类 课时安排课时安排 2 2 课时课时 授课方式授课方式 理论课 讨论课 实践课 实验课 习题课 其 他 教教 具具 准准 备备 黑板 教教 学学 目目 的的 了解系统总线的基本概念及其分类 教教 学学 重重 点点 系统总线的基本概念及其分类 教教 学学 难难 点点 系统总线的基本概念及其分类 教教 学学 基基 本本 内内 容容 教学手段及时间教学手段及时间分配分配 复习旧课:复习旧课: 简述计算机的基本组成 引入新课:引入新课:提问: “计算机各硬部件由什么连接传输、交换数据?”什么是总线、为什么要用总线? 新课内容:新课内容:3.1 总线的基本概念 3.2 总线的分类 板书纲要:板书纲要:见增加页见增加页 范例讲解 实验讲解 课堂讨论 本讲共 2 课时, 其中:3.1总线的基本概念 1课时 3.2 总线的分类 1 课时 教 案 中 页 同步通同步通信信 通信双方由统一时标控制数据传送称为同步通信 一般用于总线长度较短,各部件存取时间比较一致的场合 异步通异步通信信 异步通信克服了同步通信的缺点,允许各模块速度的不一致性,给设计者充分的灵活性和选择余地. (1)不互锁方式.主模块发出请求信号后,不等待接到从模块的回答信号,而是经过一段时间.确认从模块已收到请求信号后,便撤消其请求信号;从设备接到请求信号后,在条件允许时发出回答信号,并经过一段时间,确认主设备已收到回答信号后,自动撤消回答信号.可见通信双方并无互锁关系. (2)半互锁方式.主模块发出请求信号,待接到从模块的回答信号后再撤消其请求信号,存在着简单的互锁关
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 任务书类


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!