计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt

上传人:小飞机 文档编号:1438927 上传时间:2022-11-24 格式:PPT 页数:278 大小:7.29MB
返回 下载 相关 举报
计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt_第1页
第1页 / 共278页
计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt_第2页
第2页 / 共278页
计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt_第3页
第3页 / 共278页
计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt_第4页
第4页 / 共278页
计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt_第5页
第5页 / 共278页
点击查看更多>>
资源描述

《计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理[完整版](罗克露)(全)原版ppt课件.ppt(278页珍藏版)》请在三一办公上搜索。

1、主要内容: 计算机的基本概念 系统硬件组成(主要部件、系统结构) 计算机的性能指标,第一章 概论,第一节 计算机的基本概念,1.1.1 冯 诺依曼思想,1. 用二进制代码表示程序和数据;,2. 计算机采用存储程序的工作方式;,3. 计算机硬件由存储器、运算器、控制,器、输入设备和输出设备组成。,1.1.2 信息的数字化表示,1. 在计算机中用数字代码表示各种信息,二进制代码,例1 用数字代码表示数据,5,- 5,表示为 0 101,表示为 1 101,例2 用数字代码表示字符,A,B,表示为 1000001,表示为 1000010,例3 用数字代码表示命令、状态,启动,停止,正在工作,工作结束

2、,表示为 00,表示为 01,表示为 10,表示为 11,2. 在物理机制上用数字信号,数字型电信号,例1 用电平信号表示数字代码,高电平,1,低电平,高电平,0,1,例2 用脉冲信号表示数字代码,有脉冲,无脉冲,有脉冲,1,0,1,表示数字代码,实现并行操作,实现串行操作,1.1.3 存储程序工作方式,1.事先编制程序,3.自动、连续地执行程序,2.事先存储程序,传统诺依曼机串行执行指令。,对传统诺依曼机的改造:增加并行处理功能。,第二节 计算机系统的硬件组成,1.2.1 主要功能部件,1. CPU由运算器、控制器组成。,(1) 运算器 1)功能:加工信息。 2)组成:,移位器,ALU,选择

3、器,通用寄存器组,选择器,移位器,ALU,选择器,通用寄存器组,选择器,ALU: 通过加法器实现运算操作(由全加器求和、由进位链传递进位信号)。,移位器,ALU,选择器,通用寄存器组,选择器,通用寄存器组:提供操作数,存放运算结果。,移位器,ALU,选择器,通用寄存器组,选择器,选择器:选择操作数;选择控制条件,实现各种算法。,移位器,ALU,选择器,通用寄存器组,选择器,移位器:直接或者移位送出运算结果。,3)讨论 几种典型的运算器组成 几种主要的运算方法(定、浮),(2)控制器 1)功能:产生控制命令(微命令), 控制全机操作。 2)组成:,微命令序列,微命令产生方式(指令执行控制方式):

4、,3)讨论 两种控制器组成原理与控制机制; 模型机的数据通路结构和指令执行过程。,组合逻辑控制方式:,微程序控制方式:,由组合逻辑电 路产生微命令,由微指令产生微命令,2. 存储器 1)功能: 存储信息。 2)组成(主存储器):,存储体: 存放信息的实体。,寻址系统:对地址码译码,选择存储单元。,读/写线路和数据寄存器:完成读/写操作,暂存读/写数据。,控制线路:产生读/写时序,控制读/写操作。,3. 输入/输出设备 1)功能:转换信息。,输入:原始信息,代码,送入主机,输出:处理结果,人所能接受的形式,并输出,(代码),2)讨论 显示器的工作原理和信息转换过程。,3)讨论 存储单元读/写原理

5、、存储器逻辑设计,1.2.2 硬件系统结构1. 以总线为基础的系统结构 总线:能为多个部件分时共享的一组信息传送线路。,总 线,总 线,功能 内总线 局部总线 系统总线 外总线,信息 地址总线 数据总线 控制总线,时序 同步总线 异步总线,格式 并行总线 串行总线,方向 单向总线 双向总线,(1)以CPU为中心的双总线结构,CPU,M,接口,接口,I/O,I/O,I/O 总线,M 总线,(2)单总线结构,CPU,M,接口,接口,I/O,I/O,系 统 总 线,(3)以M为中心的双总线结构,CPU,M,接口,接口,I/O,I/O,系 统 总 线,M 总线,(4)多级总线结构,CPU,RAM,RO

6、M,公共接口,总线控制逻辑,M扩展板,I/O接口板,局部总线,系统总线,2. 采用通道或IOP的大型系统结构 (1)带通道的系统,I/O控制器,主机,I/O,通道,(2)带IOP的系统,CPU,M,接口,I/O,IOP,LM,接口,I/O,系统总线,I/O总线,3. 模型机系统结构,系 统 总 线,CPU,M,公共接口,接口,接口,I/O,I/O,4. 讨论 接口: 中断接口、DMA接口 总线:分类、信号组成,第三节 计算机系统的性能指标,1. 基本字长 指操作数的基本位数。 它影响计算精度、指令功能。2. 存储容量 (1)主存容量 指存储单元个数位数。,决定地址位数,表明编址单位,表示为:字

7、数字长(按字编址)或 字节数(按字节编址),(2)外存容量 常表示为字节数。 外存容量与地址码位数无关。,3. 运算速度 (1)定点/浮点四则运算时间 (2)每秒平均执行的指令条数(MIPS) (3)CPU时钟频率(MHz),总线位数总线时钟频率 8,5. 处理功能 (1)指令系统功能(寻址方式、指令 类型) (2)系统软件配置,总线带宽 =,4. 数据传输率,(B/S),第二章 计算机中的信息表示,数据信息,控制信息,数值型数据,非数值型数据,指令信息等,第一节 数据信息的表示,2.1.1 表示数据的大小,二进制、八进制、十六进制、二-十进制,2.1.2 表示数据的符号,原码、补码、反码,2

8、.1.3 表示小数点,定点、浮点,1. 定点表示法,无符号数,定点整数,定点小数,00000000 11111111,(0) (255),(-127) (127),(-128) (127),-(1-2-7) (1-2-7),(-1) (1-2-7),类型,阶码,尾数,阶符,数符,R:阶码底,隐含约定。,E:阶码,为定点整数,补码或移码表示。 其位数决定数值范围;,阶符表示数的大小。,M:尾数,为定点小数,原码或补码表示。 其位数决定数的精度;,数符表示数的正负。,尾数规格化:1/2 M 1,最高有效位绝对值为1,2. 浮点表示法,第二节 指令信息的表示,指令:指示计算机执行某类操作的信息的集合

9、。,本节主要讨论:一般指令格式 常用寻址方式 面向用户指令类型,2.2.1 指令格式,指令基本格式,一个,一个或几个,1. 指令字长,定长指令格式变长指令格式,便于控制,(1) 定长操作码各指令的位置、位数固定相同。(2)扩展操作码各指令的位置、位数不固定,根据需要变化。,合理利用存储空间,2. 操作码结构,关键在设置扩展标志。,例. 指令字长16位,可含有3、2、1或0个地址,每个地址占4位。,操作码 地址码,15 12 11 8 7 4 3 0,0000 X Y Z 1110 X Y Z,1111 0000 Y Z 1111 1110 Y Z,三地址指令 15条,二地址指令 15条,111

10、1 1111 0000 Z 1111 1111 1110 Z,一地址指令 15条,1111 1111 1111 0000 1111 1111 1111 1111,零地址指令 16条,(3)复合型操作码操作码分为几部分,每部分表示一种操作。例.某机算逻指令,3. 地址结构,指令中提供的地址数,存储单元地址码寄存器编号,(1)指令提供地址的方式显地址方式隐地址方式,:指令中明显指明地址。:地址隐含约定,不出现在指令中。,直接或间接给出,(2) 地址结构的简化,操作数地址, 四地址结构指令格式:,使用隐地址可以减少指令中的地址数,简化地址结构。,结果地址,下条指令地址,功能:,用指令计数器PC指示指

11、令地址。,三地址结构指令格式:,操作数地址,结果地址,下条指令地址,功能:,转移时,用转移地址修改PC内容。,源/目的,二地址结构指令格式:,目的/源,功能:,双操作数:,一地址结构指令格式:,隐含约定,单操作数:,功能:,零地址结构指令格式:,功能:,用于堆栈或特殊指令操作。,例.ADD;,执行前:,低,执行后:,高,低,高,2.2.2 寻址方式,是指寻找操作数地址或操作数的方式。,(1) 立即寻址,指令直接给出操作数。,1. 常见寻址方式,定长格式:,变长格式:,数在指令中,其长度固定、有限。,数在基本指令之后,其长度可变。,用来提供常数、设置初值等。,(2) 直接寻址,指令直接给出操作数

12、地址。,存储单元号寄存器号,(数在M中)(数在R中), 存储器直接寻址,(直接寻址),定长格式,D的位数有限,限制访存范围,变长格式,D的位数可覆盖整个存储空间,S =(D),存储单元号寄存器号,(数在M中)(数在M中), 寄存器直接寻址,(寄存器寻址),格式,R所占位数少;访问R比访问M快,格式,S =(R),用于访问固定的存储单元或寄存器。,(3)间接寻址,指令给出操作数的间接地址。, 存储器间址,D=0030,0060,.,0060,S,.,S =(D),M,间址单元,地址指针, 寄存器间址,格式,R所占位数少;R可提供全字长地址码;修改R内容比修改M内容快。,格式,S =(R),指针不

13、变(由指令指定),指针内容可变,使同一指令可指向不同存储单元,以实现程序的循环、共享,并提供转移地址。, 堆栈寻址,SP,.,S,.,S =(SP),M,R=02,M,0040,S,.,.,.,地址指针,.,栈顶,格式,SP既可出现在指令中,也可隐含约定。, 变址寻址,(4)变址、基址寻址及其变化,堆栈向上生成,压栈:,SP自动减1,再存数。-(SP),自减型间址。,先取数,SP再自动加1。(SP)+,自增型间址。,出栈:,指令给出一个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。,D的位数有限,若不能提供全字长地址码,会使访存空间受到限制。,变址寄存器号,例. 用变址方式访问一组连

14、续区间内的数组元素。,S =(RX)+ D),D=首址,D为存储区首址;(RX)为所访单元距离首址的长度;RX初值为0,每访问一个单元,(RX)+1。,形式地址,修改量,基准地址,D+1,D+2,D+n-1,.,格式,(D的位数只需覆盖一个较小的存储区间), 基址寻址,基址寄存器号,4K,指令给出一个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。,位移量,S =(Rb)+ D),基准地址,相对于基址的位移,4K,改变Rb的内容,程序能访问存储空间中任何一个定长区间(4K)。,便于访问两维数组中某类指定的元素。,变址与基址的区别:,变址:指令提供基准量(不变), R提供修改量(可变);

15、适 于处理一维数组。,基址:指令提供位移量(不变), R提供基准量(可变);用 于扩大有限字长指令的访 存空间。,S =(RX)+(Rb)+ D),格式, 基址加变址,变址寄存器号,指令给出两个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。,位移量,基址寄存器号,便于处理两维数组。,格式, 相对寻址,指令给出位移量,PC内容与位移量之和为有效地址。,位移量,或隐含指定,S =(PC)D),有效地址相对PC上下浮动,给编程带来方便。,格式, 页面寻址,指令给出位移量,PC的高位部分与位移量拼接,形成有效地址。,位移量,或隐含指定,S =(PC)H,D),例. M为64KB,划分为256

16、页,每页256B。,页号,页内地址,用于页式管理存储系统。寻址速度快,适于组织程序模块,有效利用存储空间。,017CH,S,2. 对寻址方式的说明,(1)操作码隐含说明不同寻址方式,例.某机指令操作码最高两位,00:RR型指令,寄存器-寄存器寻址01:RX型指令,寄存器-变址寻址10:SI型指令,基址-立即寻址11:SS型指令,基址-基址寻址,(2)指令中设置专门字段说明寻址方式,例.某机指令的每个地址字段中各设置一个3位的寻址方式字段。,源地址字段,目的地址字段,3位,3位,2.2.3 指令类型,1.传送指令,源地址 目的地址,数,设置时需考虑:,(1)规定传送范围,例. DJS-100系列

17、:,80X86:,IBM370:,(2)指明传送单位,例. 用操作码说明(VAX-11):,用地址量说明(80X86):,传送次数由计数器控制,MOVB 8,MOV AX,BX,MOVW 16,MOVL 32,MOV AL,BL,MOV EAX,EBX,例. 80X86的串传送指令:REP MOVSW,(3)设置寻址方式,在寻址方式的设置上几乎不受限制,能比较集中地反映指令系统各种寻址方式的实现。,8,16,32,2.输入/输出指令,各种信息,设置时需考虑:,(1)I/O指令的功能扩展,如何用通用I/O指令实现对各种具体设备的控制?, I/O指令中留有扩展余地,指令中某些字段编码事先不定义,需

18、要时再约定其含义。, I/O接口中设置控制/状态寄存器,用于外设种类、数量不多的场合。,(2)主机对外设的寻址方式,如何设置控制/状态寄存器是接口设计的关键。,寻找I/O接口中的寄存器的方式。,主机用输出指令或传送指令将具体设备的控制命令按约定的代码格式送往接口中的控制寄存器,向外设发出命令。外设的状态信息也以某种格式放在接口的状态寄存器中,主机用输入指令或传送指令从状态寄存器中取出有关信息进行查询、分析。,I/O端口,寻找I/O接口中的寄存器的方式。,如何为I/O端口分配地址?, 单独编址,I/O地址空间不占主存空间,可与主存空间重叠。,=1 访问存储器=0 访问I/O端口,需设置标志区分访

19、问对象,如,编址到寄存器:为每个寄存器(I/O端口)分配独 立的端口地址; I/O指令中给出端口地址。, 统一编址,I/O端口占据部分主存空间。常将存储空间的低端分配给主存单元,高端分配给I/O端口,以示区分。,编址到寄存器, 设置专用I/O指令针对单独编址,用I/O指令访问I/O端口。指令中说明输入/输出操作,并给出端口地址。,:为每个寄存器(I/O端口)分配总 线地址; 访问外设时,指令中给出总线地址。,(3)I/O指令设置方式,显式I/O指令,例. 80X86I/O指令设置,输入:IN AL,n;,端口地址,(直接端口寻址),IN AL,DX;,间接端口地址,(间接端口寻址),输出:OU

20、T n,AL;,(直接端口寻址),OUT DX,AL;,(间接端口寻址),主机调用输入机:, 用传送指令实现I/O操作针对统一编址,用传送指令访问I/O端口。不设专用I/O指令。,例. 某机I/O接口中设置控制/状态寄存器CSR,其总线地址为177550(8进制)数据缓冲寄存器DBR,其总线地址为177552,隐式I/O指令,控制/状态字格式:,15 14 12 7 6 2 1 0,启动:测试:取数:, 通过I/O处理机进行I/O操作,CPU执行简单I/O指令 (启动、停止、查询、清除),设置时需考虑操作数类型、符号、进制等;运算结束后设置相应状态标志。,两级I/O指令,(1)算术运算指令,I

21、/O处理机执行I/O操作指令 (输入、输出),3.算术逻辑运算指令,(2)逻辑运算指令,实现对代码位的设置、测试、清除、修改等。,与,或,异或,控制程序流程。,(1)转移指令,4. 程序控制指令,(2)转子指令与返回指令,转子:操作码 子程序入口,无条件转移条件转移循环,:操作码 转移地址:操作码 转移地址 转移条件:转移条件为循环计数值,返回:操作码 返回地址,同一条返回指令应能提供多个不同的返回地址。返回地址的存取:,用堆栈存放返回地址。,(3)软中断指令,程序,自陷指令,第二章复习提纲1.I/O指令的功能扩展(目的、方法),外设编址方式和指令设置方式。2.基本概念:扩展操作码(扩展方法)

22、、地址结构(简化方法)、隐地址、显地址、基本寻址方式(立即、直接、间址、变址)的含义与应用场合。,表示不同的功能调用,调试程序,早期主要用于程序的调试。,现在常常用于系统功能调用。,以 INT n 的形式出现在程序中。,第三章 CPU子系统,运算器,控制器,本章主要讨论:,运算器 控制器数据通路结构与外部的连接,指令的执行过程,CPU组成,CPU工作原理,第一节 运算器组织,独立结构,小型存储器结构,单口双口,寄存器组,独立R、双口RAM用多路选择器作为ALU的输入逻辑,单口RAM用锁存器作为ALU的输入逻辑。,3.1.1 带多路选择器的运算器,特点:R各自独立;可同时向ALU提供两个操作数;

23、采用单向内总线。,3.1.2 带输入锁存器的运算器,特点:单口RAM不能同时向ALU提供两个操作数;用锁存器暂存操作数;采用双向内总线。,3.1.3 位片式运算器,特点:用双口RAM(两地址端、两数据端)作通用寄存器组,可同时提供数据;用多路选择器作输入逻辑,不需暂存操作数;ALU增加乘、除功能,用乘商寄存器存放乘数、乘积或商。,例. 4位片运算器粗框,第二节 运算方法,3.2.1.1 补码加减法,数用补码表示,符号位参加运算。,实际操作能否只取决于操作码?结果需不需修正?如何将减法转换为加法?,3.2.1 定点加减运算,1. 基本关系式,( X + Y )补 = X补 + Y补 (1) (

24、X - Y )补 = X补 + (-Y)补 (2),式(1):操作码为“加”时,两数直接相加。,3) X= 3 Y= 2,X补=0 0011 Y补=1 1110,0 0001,(+1补码),2) X= 3 Y= 2,X补=1 1101 Y补=1 1110,1 1011,( 5补码),1) X=3 Y=2,X补=0 0011 Y补=0 0010,0 0101,(+5补码),4) X= 3 Y= 2,X补=1 1101 Y补=0 0010,1 1111,(1补码),例. 求(X+Y)补,( X + Y )补 = X补 + Y补 (1) ( X - Y )补 = X补 + (-Y)补 (2),式(2

25、):操作码为“减”时,将减转换为加。,1) X= 4 Y= 5,X补=0 0100 Y补=1 1011(-Y)补=0 0101,0 1001,(+9补码),2) X= 4 Y= 5,X补=1 1100 Y补=0 0101(-Y)补=1 1011,1 0111,(9补码),例. 求(X Y)补,Y补 (Y)补:,将Y补变补,不管Y补为正或负,将其符号连同尾数一起各位变反,末位加1。,即将减数变补后与被减数相加。,X补=0 0100 Y补=1 1011,X补=1 1100 Y补=0 0101,注意:某数的补码表示与某数变补的区别。,例. 1 0101原 1 1011,补码表示,1 0011补 0

26、1101,变补,0 0101原 0 0101,补码表示,符号位不变;,负数尾数改变,正数尾数不变。,0 0011补 1 1101,变补,符号位改变,,尾数改变。,补码的机器负数,2. 算法流程,3. 逻辑实现,+1,(1)控制信号,加法器输入端:,+A:打开控制门,将A送。,+B:打开控制门,将B送。,+1:控制末位加 1 。,加法器输出端:,CPA:将结果打入A。,(2)补码加减运算器粗框,3.2.1.2 溢出判断,在什么情况下可能产生溢出?,例.数A有4位尾数,1位符号SA 数B有4位尾数,1位符号SB,符号位参加运算,结果符号Sf符号位进位Cf尾数最高位进位C,正确,正溢,正确,负溢,正

27、确,正确,1. 硬件判断逻辑一(SA、SB与Sf的关系),溢出=,SA,SB,Sf,SA,Sf,SB,2. 硬件判断逻辑二(Cf与C的关系),正确,正溢,正确,负溢,正确,正确,Cf=0C =0,Cf=0C =1,Cf=1C =1,Cf=1C =0,Cf=1C =1,Cf=0C =0,1,1,1,1,1,1,1. 硬件判断逻辑一(SA、SB与Sf的关系),2. 硬件判断逻辑二(Cf与C的关系),3. 硬件判断逻辑三(双符号位),第一符号位Sf1,第二符号位Sf2,1. 硬件判断逻辑一(SA、SB与Sf的关系),2. 硬件判断逻辑二(Cf与C的关系),3. 硬件判断逻辑三(双符号位),3.2.1

28、.3 移位操作,逻辑移位,:数码位置变化,数值不变。,1. 移位类型,算术移位,1 0 0 0 1 1 1 1,循环左移:,0,1 0 0 1 1 1 1,算术左移:,1,0,0,1,1,1,1,1,0,1,1,1,1,0,(-15),(-30),(1)单符号位 :,0 0111,0 1110,(2)双符号位:,00 1110,00 0111,2.正数补码移位规则,(3)移位规则,0 0111,0 0011,01 1100,00 1110,00 0111,数符不变,(单:符号位不变;双:第一符号位不变)。,空位补0,(右移时第二符号位移至尾数最高位)。,(1)单符号位 :,1 1011,1 0

29、110,(2)双符号位:,10 1100,11 0110,3.负数补码移位规则,(3)移位规则,1 1011,1 1101,11 0110,11 1011,数符不变,(单:符号位不变;双:第一符号位不变)。,左移空位补0,(第二符号位移至尾数最高位)。,右移空位补1,3.2.1.4 舍入方法,1. 0舍1入(原码、补码),0 00100原,1 00101原,1 11011补,2. 末位恒置1(原码、补码),0 00100原,1 11011补,1 00101原,0 0010原,1 0011原,1 1110补,0 0011原,1 0011原,1 1101补,1 0011原,1 1101补,例. 保

30、留4位尾数:,例. 保留4位尾数:,3.2.2 定点乘法运算,3.2.2.1 原码一位乘法 每次用一位乘数去乘被乘数。 1.算法分析,例. 0.11011.1011,X原,Y原,(1)手算 0.1101 0.1011,1101 1101 0000 1101,0.10001111上符号:1.10001111,部分积,问题:1)加数增多(由乘数位数决定)。 2)加数的位数增多(与被乘数、乘 数位数有关)。改进:将一次相加改为分步累加。,(2)分步乘法,每次将一位乘数所对应的部分积与原部分积的累加和相加,并移位。,设置寄存器: A:存放部分积累加和、乘积高位 B:存放被乘数 C:存放乘数、乘积低位,

31、步数 条件 操作 A C,00.0000 .1011,1),Cn=1,+B,Cn,+ 00.1101,00.1101,1101,00.0110,1.101,0.1101 0.1011,2),Cn=1,+B,+ 00.1101,01.0011,00.1001,11.10,0.1101 0.1011,3),Cn=0,+0,+ 00.0000,00.1001,00.0100,111.1,4),Cn=1,+B,+ 00.1101,01.0001,00.1000,1111,X原Y原 = 1.10001111,2.算法流程,Y,Y,N,N,3.运算规则,(1)操作数、结果用原码表示;(2)绝对值运算,符号

32、单独处理;(3)被乘数(B)、累加和(A)取双符号位;(4)乘数末位(Cn)为判断位,其状态决定 下步操作;(5)作n次循环(累加、右移)。,3.2.2.2 补码一位乘法 1.算法分析 X补 = X0.X1X2Xn,(1)Y为正:Y补 = 0.Y1Y2Yn (XY)补 = X补(0.Y1Y2Yn)(2)Y为负:Y补 = 1.Y1Y2Yn (XY)补 = X补(0.Y1Y2Yn)+(-X)补(3)Y符号任意: (XY)补 = X补(0.Y1Y2Yn)+(-X)补Y0,符号位,(4)展开为部分积的累加和形式:(XY)补 = X补(0.Y1Y2Yn)+(-X)补Y0,= X补(0.Y1Y2Yn)-X

33、补Y0,Yn+1,比较法:用相邻两位乘数比较的结果决定 +X补、-X补或+0。,2.比较法算法Yn(高位) Yn+1(低位) 操作(A补为部分积累加和),0 00 11 01 1,1/2A补 1/2(A补+X补) 1/2(A补-X补) 1/2A补,( 0 ),( 1 ),(-1 ),( 0 ),3.运算实例X=-0.1101,Y=-0.1011,求(XY)补。初值:A=00.0000,B=X补=11.0011, -B=(-X)补=00.1101,C =Y补=1.0101,步数 条件 操作 A C,00.0000 1.0101,1),1 0,-B,Cn,+ 00.1101,00.1101,00.

34、0110,11.0101,2),0 1,+B,+ 11.0011,11.1001,11.1100,111.010,3),1 0,-B,+ 00.1101,00.1001,00.0100,1111.01,4),0 1,+B,+ 11.0011,11.0111,11.1011,11111.0,0,Cn+1,CnCn+1,5),1 0,-B,+ 00.1101,(XY)补 = 0.10001111,4),0 1,+B,+ 11.0011,11.0111,11.1011,11111.0,5),1 0,-B,+ 00.1101,00.1000,1111,修正,(1)A、B取双符号位,符号参加运算;(2)

35、C取单符号位,符号参加移位,以决定最后是否 修正;(3)C末位设置附加位Cn+1,初值为0,CnCn+1组成判 断位,决定运算操作;(4)作n步循环,若需作第n+1步,则不移位,仅修正。,4.运算规则,1.0 : -B修正0.1 : +B修正0.0 : 不修正1.1 : 不修正,3.2.3 定点除法运算,例. 0.101100.11111,0.10110,1101,0.,0,1,11111,0.11111,0,0,0,1,11111,10101,0,1,11111,1011,0,0,.,00000,.,0.,商: 0.10110余数:0.101102,实现除法的关键:比较余数、除数绝对值大小,

36、以决定上商。,3.2.3.1 原码恢复余数法1.算法 比较两数大小可用减法试探。,2余数-除数=新余数,为正:够减,商1。为负:不够减,商0,恢复原余数。,2.实例,X=-0.10110,Y=0.11111,求X/Y,给出商Q和余数R,设置:A:被除数、余数,B:除数,C:商,初值:A= X = 00.10110,B= Y = 00.11111,C= Q = 0.00000,-B= 11.00001,步数 条件 操作 A C,00.10110 0.00000,1),0,-B,01.01100,+11.00001,00.01101,0.00001,2),1,-B,00.11010,+11.000

37、01,11.11011,0.00010,3),恢复余数,+B,+00.11111,00.11010,01.10100,0.00101,4),0,-B,+11.00001,00.10101,Cn,SA,Q1,Q2,Q3,r0,2r0,r1,2r1,r2,r2,2r2,r3,步数 条件 操作 A C,00.10101 0.00101,5),0,-B,01.01010,+11.00001,00.01011,0.01011,6),1,-B,00.10110,+11.00001,11.10111,0.10110,7),恢复余数,+B,+00.11111,00.10110,Q= -0.10110,Cn,Q

38、4,Q5,Q3,r3,2r3,r4,2r4,r5,r5,3.说明,3.2.3.2 原码不恢复余数法(加减交替法)1.算法分析第二步:2r1-B=r20第三步:r2+B=r2(恢复余数)第四步:2r2-B=r3,2r2-B=2(r2+B)-B =2r2+B=r3,第二步:2r1-B=r20第三步:2r2+B=r3 (不恢复余数),2.算法 ri+1=2ri+(1-2Qi)Y,ri为正,则Qi为1,第i+1步作2ri-Y;ri为负,则Qi为0,第i+1步作2ri+Y。,3.实例,X=0.10110,Y=-0.11111,求X/Y,给出商Q和余数R。,初值:A= X = 00.10110,B= Y

39、= 00.11111,C= Q = 0.00000,-B=11.00001,步数 条件 操作 A C,00.10110 0.00000,1),为正,-B,01.01100,+11.00001,00.01101,0.00001,2),为负,-B,00.11010,+11.00001,11.11011,0.00010,3),+B,+00.11111,11.10110,0.00101,为正,00.10101,Cn,r,Q1,Q2,Q3,r0,2r0,r1,2r1,r2,2r2,r3,4),为正,-B,01.01010,+11.00001,00.01011,0.01011,Q4,2r3,r4,步数 条

40、件 操作 A C,00.01011 0.01011,6),为负,恢复余数,+B,+00.11111,00.10110,Q= -0.10110,Cn,Q4,r4,5),为正,-B,00.10110,+11.00001,11.10111,0.10110,Q5,2r4,r5,r5,4.运算规则,(1)A、B取双符号位,X、Y取绝对值运算,X Y 。(2)根据余数的正负决定商值及下一步操作。(3)求n位商,作n步操作;若第n步余数为负,则第n+1步恢复余数,不移位。,3.2.3.3 补码不恢复余数法(加减交替法)如何判断是否够减?,如何上商?,如何确定商符?,1.判够减,(1)同号相除,1,0,1,0

41、,够减,不够减,够减,不够减,够减:r与X、Y同号;,不够减:r与X、Y异号。,(2)异号相除,1,0,1,0,够减,够减,不够减,不够减,够减:r与X同号,与Y异号;,不够减:r与X异号,与Y同号。,(3)判断规则,同号:作X补-Y补,X补,Y补,够减:r补与Y补同号,不够减:r补与Y补异号,异号:作X补+Y补,够减:r补与Y补异号,不够减:r补与Y补同号,2.求商值,同号:商为正,异号:商为负,够减商1不够减商0,够减商0不够减商1,(r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号),够减商1不够减商0,够减商0不够减商1,(r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号),(

42、r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号),够减商1不够减商0,够减商0不够减商1,上商规则:,余数与除数同号商1,异号商0。,3.算法 (ri+1)补=2ri补+(1-2Qi补)Y补,ri补与Y补同号,则Qi补为1,第i+1步作2ri补-Y补;ri补与Y补异号,则Qi补为0,第i+1步作2ri补+Y补。,4.求商符,令X补 = r0补,r0补与Y补,同号:Q0补=1异号:Q0补=0,与实际商符相反,商符,5.商的校正,商,余数,真商=假商+1.00001,=Q0.Q1Q2Qn-1,求n-1位商,(假商),第n位商(末位商)恒置1,(3)-1,商符变反,n位,(4)余数求至rn,6

43、.实例,X=0.10110,Y=-0.11111,求X/Y,给出商Q和余数R。,初值:A =X补=00.10110,B =Y补=11.00001,C =Q补=0.00000,-B =00.11111,步数 条件 操作 A C,00.10110 0.0000,1),异号,+B,01.01100,+11.00001,00.01101,0.0000,2),同号,+B,00.11010,+11.00001,11.11011,0.0001,Cn-1,r、Y,Q1,Q2,r0,2r0,r1,2r1,r2,求商符,Q0,异号,0,5),+B,+11.00001,00.10110,11.10111,步数 条件

44、 操作 A C,11.11011 0.0001,3),异号,-B,11.10110,+00.11111,00.10101,0.0010,4),异号,+B,01.01010,+11.00001,00.01011,0.0100,Cn-1,r、Y,Q3,Q2,r2,2r2,r3,2r3,r4,2r4,r5,假商=0.0100,Q4,真商=0.0100+1.00001=1.01001,Q= -0.10111 R= -0.010012,-5,7.运算规则,(1)A、B取双符号位,符号参加运算,并且 X Y 。(2)根据余数与除数的符号决定商值及下一 步操作。(3)求n-1位商,作n步操作(求出rn)。(

45、4)对商校正(商符变反,第n位商恒置1)。,3.2.4 浮点四则运算,3.2.4.1 浮点加减运算步骤:1.检测能否简化操作。,判操作数是否为0,尾数为0阶码下溢,2.对阶例.,10.0 1,(1)对阶:使两数阶码相等(小数点实际位置对齐, 尾数对应权值相同)。,(2)对阶规则:小阶向大阶对齐。,11 0.1,010.01,110.1,3.尾数加减.,(1) 1.0001 +0.1001,(4)阶码比较:比较线路或减法。,(3)对阶操作:小阶阶码增大,尾数右移。例.AEBE,则BE+1 BE,BM,直到BE=AE,1.1010,(2) 0.0101 +0.1101,4.结果规格化,1.0010

46、,应左移规格化,应右移规格化,若 Af1Af2=1,则右规:,(1) 11.0001 +00.1001,11.1010,(2) 00.0101 +00.1101,01.0010,(-1/2除外),Af1Af2 A1,11.1010,01.0010,Af1Af2,3.2.4.2 浮点乘法运算,步骤:,1.检测操作数是否为0。2.阶码相加。若阶码用移码表示,相加后要修正。,3.尾数相乘。,相乘前不需对阶。,4.结果规格化。,一般左规。,3.2.4.3 浮点除法运算,步骤:,1.检测操作数是否为0。2. AM BM ?,4.尾数相除。,相除前不需对阶。,5.结果不再规格化。,3.阶码相减。若阶码用移

47、码表示,相减后要修正。,简要回答下列问题 (1)原码一位乘法与补码一位乘法的主要区别是 什么?(2)原码加减交替除法和补码加减交替除法分别 根据什么情况商1、商0?(3)在浮点加减运算中如何进行对阶操作?(4)在什么情况下需要左移规格化?什么情况下 需要右移规格化?,第三章作业(一),第三节 组合逻辑控制器原理,3.3.1 控制器组成,1.微命令发生器,功能:,产生全机所需的各种微命令,控制最基本的操作(微操作)的命令,电位型脉冲型,2.指令计数器PC,功能:,指示指令在M中的位置。,PC+1,顺序执行:,PC先+1,再用转移地址修改PC,转移执行:,3.指令寄存器IR,功能:,存放现行指令。

48、,决定操作性质,操作码字段,操作数地址转移地址,IR,地址码字段,译码器,微命令发生器,地址形成部件,寻,D,4.状态寄存器PSW,功能:,指示程序运行方式,反映程序运行结果。,例. 某机的PSW,PSW,15 12 11 8 7 6 5 4 3 2 1 0,C=1 进位 V=1 溢出Z=1 结果为0N=1 结果为负,T=1, 执行跟踪程序,(1)条件码,反映程序运行结果,15 12 11 8 7 6 5 4 3 2 1 0,(2)跟踪标志,为程序查错设置的断点标志T。,程序,初始化置T为1,.,测试T,跟踪程序,.,.,程序优先级高于外部优先级,不响应程序优先级低于外部优先级,可响应,用户方

49、式:禁止程序执行某些指令核心方式:允许程序执行所有指令,(3)优先级,为现行程序赋予优先级别,以决定是否响应外部中断请求。,15 12 11 8 7 6 5 4 3 2 1 0,(4)工作方式,规定程序的特权级。,PSW在CPU中,反映程序运行状态;控制/状态字在接口中,反映CPU命令、设备状态。,5.时序线路,功能:,控制操作时间和操作时刻。,时序,时钟脉冲,工作脉冲,时钟周期(节拍),产生电位型微命令,控制操作时间段,产生脉冲型微命令,控制定时操作,1.取指令,PC,时序,3.3.2 控制器工作过程,地址,M,指令,IR,、译码(、寻址方式),PC+1,PC,2.取数,时序,按寻址方式,或

50、从寄存器取数,或从存储器取数。,3.执行,按操作码对数据进行运算处理。,1.组合逻辑控制器的时序划分,3.3.3 时序控制方式,即时序信号与操作的关系, 采用三级时序系统:,指令周期,工作周期1,工作周期2,工作周期n,时钟周期1,时钟周期2,时钟周期m,.,.,工作脉冲1,工作脉冲2,工作脉冲k,.,.,(节拍1),(节拍2),(节拍m), 时序关系:,晶振输出,工作周期1,工作周期2,工作周期3,时钟T1,工作脉冲P,时钟T2,指令周期,控制不同阶段操作时间,控制分步操作时间,对微操作定时,取指,执行,取数,取出指令,修改PC,打入IR,打入PC,2.时序控制方式及其变化,(1)同步控制,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号