ImageVerifierCode 换一换
格式:DOCX , 页数:109 ,大小:2.09MB ,
资源ID:8968591      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8968591.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机组成原理复习总结.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机组成原理复习总结.docx

1、计算机组成原理复习总结计算机组成原理考试复习总结整理WORD文档,下载后可编辑修改计算机体系结构(Computer Architecture)主要研究硬件和软件功能的划分,确定硬件和软件的界面,哪部分功能由硬件系统来完成,哪部分功能由软件系统来完成。 计算机组成原理(Computer Organization)是依据计算机体系结构,在确定且分配了硬件子系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,以及它们之间的连接关系,实现机器指令级的各种功能和特性,这点上说计算机组成原理是计算机体系结构的逻辑实现。 计算机实现(Computer Implementation)是计算机组成的物

2、理实现,包括中央处理器、主存储器、输入输出接口和设备的物理结构,所选用的半导体器件的集成度和速度,器件、模块、插件、底板的划分,电源、冷却、装配等技术,生产工艺和系统调试等各种问题。总之,就是将完成逻辑设计的计算机组成方案转换成真实的计算机,也就是将满足设计、运行、价格等各项要求的计算机系统真正地制作并调试出来。 计算机组成原理 【考查目标】 1. 理解单处理器计算机系统中各部件的内部工作原理,组成结构以及相互连接方式,具有完整的计算机系统的整机概念. 2. 理解计算机系统层次化结构概念,熟悉硬件与软件间的界面,掌握指令集体系结构的基本知识和基本实现方法 3. 能够运用计算机组成的基本原理和基

3、本方法,对有关计算机硬件系统中的理论和实际问题进行计算,分析,并能对一些基本部件进行简单设计. 一, 计算机系统概述 (一) 计算机发展历程 第一台电子计算机ENIAC诞生于1946年美国宾夕法尼亚大学.ENIAC2用了18000电子管,1500继电器,重30吨,占地170m,耗电140kw,每秒计算5000次加法.冯诺依曼(VanNeumann)首次提出存储程序概念,将数据和程序一起放在存储器,使编程更加方便.50年来,虽然对冯诺依曼机进行很多改革,但结构变化不大,仍称冯诺依曼机. 一般把计算机的发展分为五个阶段: 发展阶段 时间 硬件技术 速度/(次/秒) 第一代 1946-1957 电子

4、管计算机时代 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)电子离散变量计算机 组成原理是讲硬件结构的 系统

5、结构是讲结构设计的 摩尔定律 微芯片上的集成管数目每3年翻两番.处理器的处理速度每18个月增长一倍. 每代芯片的成本大约为前一代芯片成本的两倍 新摩尔定律 全球入网量每6个月翻一番. 数学家冯?诺依曼(von Neumann)在研究EDVAC机时提出了“储存程序”的概念.以此为基础的各类计算机通称为冯?诺依曼机.它有如下特点: ?计算机由运算器,控制器,存储器,输入和输出五部分组成 ?指令和数据以同等的地位存放于存储器内,并可按地址寻访 ?指令和数据均用二进制数表示 ?指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置 ?指令在存储器内按顺序存放 ?机器以

6、运算器为中心,输入输出设备与存储器间的数据传送通过运算器完成 图中各部件的功能 ?运算器用来完成算术运算和逻辑运算并将的中间结果暂存在运算器内 ?存储器用来存放数据和程序 ?控制器用来控制,指挥程序和数据的输入,运行以及处理运行结果 ?输入设备用来将人们熟悉的信息转换为机器识别的信息 ?输出设备将机器运算结果转为人熟悉的信息形式 运算器最少包括3个寄存器(现代计算机内部往往设有通用寄存器)和一个算术逻辑单元(ALU Arithmetic Logic Unit).其中ACC(Accumulator)为累加器,MQ(Multiplier-Quotient Register)为乘商寄存器,X为操作数

7、寄存器,这3个寄存器在完成不同运算时,说存放的操作数类别也各不相同. 计算机的主要硬件指标 (4.a) 主机完成一条指令的过程以取数指令为例 (4.b) 主机完成一条指令的过程以存数指令为例 (二) 计算机系统层次结构 1. 计算机硬件的基本组成 计算机硬件主要指计算机的实体部分,通常有运算器,控制器,存储器,输入和输出五部分. CPU是指将运算器和控制器集成到一个电路芯片中. 2. 计算机软件的分类 计算机软件按照面向对象的不同可分两类: 系统软件:用于管理整个计算机系统,合理分配系统资源,确保计算机正常高效地运行,这类软件面向系统.(包括:标准程序库,语言处理程序,OS,服务程序,数据库管

8、理系统,网络软件) 应用软件:是面向用户根据用户的特殊要求编制的应用程序,这类软件通常实现用户的某类要求. 3. 计算机的工作过程 (1)计算机的工作过程就是执行指令的过程 指令由操作码和操作数组成: 操作码指明本指令完成的操作 操作地址地址码指明本指令的操作对象 码 码 (2)指令的存储 指令按照存储器的地址顺序连续的存放在存储器中. (3)指令的读取 为了纪录程序的执行过程,需要一个记录读取指令地址的寄存器,称为指令地址寄存器,或者程序计数器.指令的读取就可以根据程序计数器所指出的指令地址来决定读取的指令,由于指令通常按照地址增加的顺序存放,故此,每次读取一条指令之后,程序计数器加一就为读

9、取下一条指令做好准备. (4)执行指令的过程 在控制器的控制下,完成以下三个阶段任务: 1)取指令阶段 按照程序计数器取出指令,程序计数器加一 2)指令译码阶段 分析操作码,决定操作内容,并准备操作数 3)指令执行阶段 执行操作码所指定内容 (三) 计算机性能指标 1. 吞吐量,响应时间 (1) 吞吐量:单位时间内的数据输出数量. (2) 响应时间:从事件开始到事件结束的时间,也称执行时间. 2. CPU时钟周期,主频,CPI,CPU执行时间 (1) CPU时钟周期:机器主频的倒数,T C(2)主频:CPU工作主时钟的频率,机器主频Rc (3)CPI:执行一条指令所需要的平均时钟周期 (4)C

10、PU执行时间: T=InCPIT CPUCIn执行程序中指令的总数 CPI执行每条指令所需的平均时钟周期数 T时钟周期时间的长度 C3. MIPS,MFLOPS (1)MIPS:(Million Instructions Per Second) Te:执行该程序的总时间=指令条数/(MIPS) In:执行该程序的总指令数 Rc:时钟周期Tc的到数 MIPS只适合评价标量机,不适合评价向量机.标量机执行一条指令,得到一个运行结果.而向量机执行一条指令,可以得到多个运算结果. (2) MFLOPS: (Million Floating Point Operations Per Second) MF

11、LOPS=Ifn/(Te) Ifn:程序中浮点数的运算次数 MFLOPS测量单位比较适合于衡量向量机的性能.一般而言,同一程序运行在不同的计算机上时往往会执行不同数量的指令数,但所执行的浮点数个数常常是相同的. 特点: 1. MFLOPS取决于机器和程序两方面,不能反映整体情况,只能反映浮点运算情况 2. 同一机器的浮点运算具有一定的同类可比性,而非同类浮点操作仍无可比性 当前微处理器的发展重点 ?进一步提高复杂度来提高处理器性能 ?通过线程进程级的并发性提高处理器性能 ?将存储器集成到处理器芯片来提高处理器性能 ?发展嵌入式处理器 软件开发有以下几个特点 1) 开发周期长 2) 制作成本昂贵

12、 3) 检测软件产品质量的特殊性 计算机的展望 一、计算机具有类似人脑的一些超级智能功能 15 要求计算机的速度达10/秒 二、芯片集成度的提高受以下三方面的限制 芯片集成度受物理极限的制约 按几何级数递增的制作成本 芯片的功耗、散热、线延迟 计算机辅助设计CAD 计算机辅助制造CAM 计算机辅助工艺规划 Computer Aided Process Planning CAPP 计算机辅助工程 Computer Aided Engineering CAE 计算机辅助教学 Computer Assisted Instruction CAI 科学计算和数据处理 工业控制和实时控制 网络技术应用 虚

13、拟现实 办公自动化和管理信息系统 Computer Aided Design CAD,CAM,CIMS Computer Aided Manufacturing 多媒体技术 Computer Integrated Manufacturing System 人工智能,模式识别,文字/语音识别,语言翻译,专家系统,机器人 二, 数据的表示和运算 (一) 数制与编码 1. 进位计数制及其相互转换 1)进位计数制 进位计数制是指按照进位制的方法表示数,不同的数制均涉及两个基本概念:基数和权. 基数:进位计数制中所拥有数字的个数. 权:每位数字的值等于数字乘以所在位数的相关常数,这个常数就是权. 任意一

14、个R进制数X,设整数部分为n位,小数部分为m位,则X可表示为: n-1n-20-1-2-m X,ar + ar + ? + ar + ar + ar+ ? + ar n-1n-20-1-2-m,mi(X)r = Kr,i1i,n,2)不同数制间的数据转换 (1)二,八,十六进制数转换成十进制数 ii 利用上面讲到的公式: (N)2=?Di2 ,(N)8=?Di8, (N)16=i?Di16,进行计算. (2)十进制数转换成二进制数 通常要对一个数的整数部分和小数部分分别进行处理,各自得出结果后再合并. , 对整数部分,一般采用除2取余数法,其规则如下: 将十进制数除以2,所得余数(0或1)即为

15、对应二进制数最低位的值.然后对上次所得商除以2,所得余数即为二进制数次低位的值,如此进行下去,直到商等于0为止,最后得的余数是所求二进制数最高位的值. , 对小数部分,一般用乘2取整数法,其规则如下: 将十进制数乘以2,所得乘积的整数部分即为对应二进制小数最高位的值,然后对所余数的小数部分部分乘以2,所得乘积的整数部分为次高位的值,如此进行下去,直到乘积的小数部分为0,或结果已满足所需精度要求为止. (3)二进制数,八进制数和十六进制数之间的转换 八进制数和十六进制数是从二进制数演变而来的: 由3位二进制数组成1位八进制数; 由4位二进制数组成1位十六进制数. 对一个兼有整数和小数部分的数以小

16、数点为界,小数点前后的数分别分组进行处理,不足的位数用0补足. 对整数部分将0补在数的左侧,对小数部分将0补在数的右侧.这样数值不会发生差错. 2. 真值和机器数 真值:数据的数值通常以正(+)负(-)号后跟绝对值来表示,称之为“真值”. 机器数:在计算机中正负号也需要数字化,一般用0表示正号,1表示负号.把符号数字化的数成为机器数. 3. BCD码(Binary Coded Decimal以二进制编码的十进制码) 在计算机中采用4位二进制码对每个十进制数位进行编码.4位二进制码有16种不同的组合,从中选出10种来表示十进制数位的0,9,用0000,0001,1001分别表示0,1,9,每个数

17、位内部满足二进制规则,而数位之间满足十进制规则,故称这种编码为“以二进制编码的十进制(binary coded decima1,简称BCD)码”. 在计算机内部实现BCD码算术运算,要对运算结果进行修正,对加法运算的修正规则是: 如果两个一位BCD码相加之和小于或等于(1001)2,即(9)10,不需要修正; 如相加之和大于或等于(1010)2,或者产生进位,要进行加6修正,如果有进位,要向高位进位. 4. 字符与字符串 在计算机中要对字符进行识别和处理,必须通过编码的方法,按照一定的规则将字符用一组二进制数编码表示.字符的编码方式有多种,常见的编码有ASCII码,EBCDIC码等. 1)AS

18、CII码(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)字符串的存放 向量存储法:字符串存储时,字符串中的所有元素在物理上是邻接的. 串表存储法:字符串的每个字符代码后面设置一个链接字,用于指出下一个字符的存储单元

19、的地址. 5. 校验码Check Digit 数据校验码是一种常用的带有发现某些错误或自动改错能力的数据编码方法.其实现原理,是加进一些冗余码,使合法数据编码出现某些错误时,就成为非法编码. 这样,可以通过检测编码的合法性来达到发现错误的目的.合理地安排非法编码数量和编码规则,可以提高发现错误的能力,或达到自动改正错误的目的. 码距:码距根据任意两个合法码之间至少有几个二进制位不相同而确定的,仅有一位不同,称其码距为1. 1)奇偶校验码(Parity Bit)WIKI (开销最小,能发现数据代码中一位出错情况的编码,常用于存储器读写检查或ASCII字符或其它类型的信息传输的检查)P216 它的

20、实现原理,是使码距由1增加到2.若编码中有1位二进制数出错了,即由1变成0,或者由0变成1.这样出错的编码就成为非法编码,就可以知道出现了错误.在原有的编码之上再增加一位校验位,原编码n位,形成新的编码为n+1 位.增加的方法有2种: 奇校验:增加位的0或1要保证整个编码中1的个数为奇数个. 偶校验:增加位的0或1要保证整个编码中1的个数为偶数个. 2)海明校验码(Hamming Code)P100 实现原理,在数据中加入几个校验位,并把数据的每一个二进制位分配在几个奇偶校验组中.当某一位出错就会引起有关的几个校验组的值发生变化,这不但可以发现出错,还能指出是哪一位出错,为自动纠错提供了依据.

21、 r 假设校验位的个数为r,则它能表示2个信息,用其中的一个信息r指出“没有错误”,其余2-1个信息指出错误发生在哪一位.然而错误也可能发生在校验位,因此只有 rk=2-1-r个信息能用于纠正被传送数据的位数,也就是说要满足关系: r2k+r+1 3)CRC校验码(Cyclic Redundancy Check 循环冗余校验)P144 CRC校验码一般是指k位信息之后拼接r位校验码.关键问题是如何从k位信息方便地得到r位校验码,以如何从位k+r信息码判断是否出错. 将带编码的k位有效信息位组表达为多项式: 式Ci中为0或1. 若将信息位左移r位,则可表示为多项式M(x).xr.这样就可以空出r

22、位,以便拼接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. 定点数的表

23、示 1)无符号数的表示 无符号数就是指正整数,机器字长的全部位数均用来表示数值的大小,相当于数的绝对值. 对于字长为n+1位的无符号数的表示范围为: 0-1 2)带符号数的表示 (真值范围-n-1n) 带符号数是指在计算机中将数的符号数码化.在计算机中,一般规定二进制的最高位为符号位,最高位为“0”表示该数为正,为“1”表示该数为负.这种在机器中使用符号位也被数码化的数称为机器数. 根据符号位和数值位的编码方法不同,机器数分为原码,补码和反码. (1)原码表示法 机器数的最高位为符号位,0表示正数,1表示负数,数值跟随其后,并以绝对值形式给出.这是与真值最接近的一种表示形式. 原码的定义: (

24、2)补码表示法 机器数的最高位为符号位,0表示正数,1表示负数,其定义如下: (3)反码表示法 机器数的最高位为符号,0表示正数,1表示负数.反码的定义: 原码 补码 反码 整数 (mod ) (mod() 小 数 (mod 2) (mod(2-) =0.0000=0.0000 =0.0000=1.10 1.0000 111 负数原码求反+1 负数每位求反 移码 移码表示中零也是唯一的 真值的移码和补码仅差一个符号位.若将补码的符号位由0改为1或从1改为0即可得到真值的移码 乘法运算可用移码和加法来实现,两个n位数相乘,总共要进行n次加法运算和n次移位运算 三种机器数的特点可以归纳为: ?三种

25、机器数的最高位均为符号位.符号位和数值位之间可用“.”(对于小数)或“,”(对于整数)隔开 ?当真值为正时,原码,补码和反码的表示形式均相同,即符号位用“0”表示,数值部分与真值部分相同 ?当真值为负时,原码,补码和反码的表示形式不同,其它符号位都用“1”表示,而数值部分有这样的关系,即补码是原码的“求反加1”,反码是原码的“每位求反”. 2. 定点数的运算 1)定点数的位移运算 左移,绝对值扩大;右移,绝对值缩小. 算术移位规则 符号位不变 码添补代 制 码 正0 数 原 0 负数 补 右移添0 左移添1 反 1 算术移位和逻辑移位的区别: 算术移位:带符号数移位; 逻辑移位:无符号数移位;

26、 2)原码定点数的加/减运算; 对原码表示的两个操作数进行加减运算时,计算机的实际操作是加还是减,不仅取决指令中的操作码,还取决于两个操作数的符号.而且运算结果的符号判断也较复杂. 例如,加法指令指示做(,A),(,B)由于一操作数为负,实际操作是做减法(,A)-(+B),结果符号与绝对值大的符号相同.同理,在减法指令中指示做(,A),(,B)实际操作做加法(,A),(,B),结果与被减数符号相同.由于原码加减法比较繁琐,相应地需要由复杂的硬件逻辑才能实现,因此在计算机中很少被采用. 3)补码定点数的加/减运算; (1) 加法 n+1整数 A + B= A+B(mod 2) 补补补小数 A +

27、 B= A+B(mod 2) 补补补(2) 减法 n+1整数 A - B= A+(-B)=A+ -B(mod 2) 补补补补 补小数 A - B= A+(-B)=A + -B(mod 2) 补补补补补无需符号判定,连同符号位一起相加,符号位产生的进位自然丢掉 4)定点数的乘/除运算 (1)一位乘法 原码定点一位乘法 两个原码数相乘,其乘积的符号为相乘两数的异或值,数值两数绝对值之积. 设 X=X0 X1 X2 Xn 原Y=Y0 Y1 Y2 Yn 原X?Y=X?Y= (X0?Y0)?(X1 X2 Xn)?(Y1 原原原Y2 Yn) 符号?表示把符号位和数值邻接起来. 原码两位乘和原码一位乘比较

28、原码一位乘 原码两位乘 符号位 操作数 绝对值 绝对值的补码 移位 逻辑右移 算术右移 移位次数 n 最多加法次数 n 定点补码一位乘法 有的机器为方便加减法运算,数据以补码形式存放.乘法直接用补码进行,减少转换次数.具体规则如下: X?Y=X(,Y0 + 0. Y1 Y2 Yn ) 补补布斯法 “布斯公式”: 在乘数Yn后添加Yn+1=0.按照Yn+1 ,Yn相邻两位的三种情况,其运算规则如下: (1) Yn+1 ,Yn =0( Yn+1 Yn =00或11),部分积加0,右移1位; (2) Yn+1 ,Yn =1( Yn+1 Yn =10) ,部分积加X,右移1位; 补(3) Yn+1 ,

29、Yn =-1( Yn+1 Yn =01) ,部分积加,X,右移1位 补最后一步不移位. (2)两位乘法 原码两位乘法,因此实际操作用Yi-1,Yi,C三位来控制,运算规则如下 Yi-1 Yi C 操作 +0, 右移2位 0?C +X, 右移2位 0?C 0 0 0 +X, 右移2位 0 0 1 0?C 0 1 0 +2X, 右移2位 0 1 1 0?C 1 0 0 +2X, 右移2位 1 0 1 0?C 1 1 0 -X, 右移2位 1 1 1 1?C -X, 右移2位 1?C +0, 右移2位 1?C 补码两位乘法 根据前述的布斯算法,将两步合并成一步,即可推导出补码两位乘的公式. Yn-i

30、-1 Yn-i Pi+2 补Yn-i+1 0 0 +0, 右移2位 0 +X, 右移2位 补0 0 +X, 右移2位 补1 +2X, 右移2位 补0 1 -2X, 右移2位 补0 -X, 右移2位 补0 1 -X, 右移2位 补1 +0, 右移2位 1 0 0 1 0 1 1 1 0 1 1 1 求部分积的次数和右移操作的控制问题. 当乘数由1位符号位和以n(奇数)位数据位组成时,求部分积的次数为(1,n),2,而且最后一次的右移操作只右移一位. 若数值位本身为偶数n,可采用下述两种方法之一: ?可在乘数的最后一位补一个0,乘数的数据位就成为奇数,而且其值不变,求部分积的次数为1+(n+l)/2,即n/2,1,最后一次右移操作也只右移一位. ?乘数增加一位符号位,使总位数仍为偶数,此时求部分积的次数为n/2+1,而且最后一次不再执行右移操作. (3)补码除法 笔算除法和机器除法的比较 笔算除法 机器除法 商符单独处理 符号位异或形成 心算上商 余数 不动 低位补“0” 余数 左移一位 低位补“0”

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1