计算机组成原理完整版(罗克露)(全)原版学习资料_第1页
计算机组成原理完整版(罗克露)(全)原版学习资料_第2页
计算机组成原理完整版(罗克露)(全)原版学习资料_第3页
计算机组成原理完整版(罗克露)(全)原版学习资料_第4页
计算机组成原理完整版(罗克露)(全)原版学习资料_第5页
已阅读5页,还剩273页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理[完整版](罗克露)(全)原版1.1.2信息的数字化表示

1.在计算机中用数字代码表示各种信息

二进制代码例1用数字代码表示数据

5

-5

表示为0101

表示为1101

例2用数字代码表示字符

A

B

表示为1000001

表示为1000010

例3用数字代码表示命令、状态

启动

停止

正在工作

工作结束

表示为00

表示为01

表示为10

表示为11

2.在物理机制上用数字信号

数字型电信号例1用电平信号表示数字代码

高电平

1

低电平

高电平

0

1

例2用脉冲信号表示数字代码

有脉冲无脉冲有脉冲101

表示数字代码

实现并行操作实现串行操作1.1.3存储程序工作方式

1.事先编制程序3.自动、连续地执行程序

2.事先存储程序传统诺依曼机串行执行指令。对传统诺依曼机的改造:增加并行处理功能。第二节计算机系统的硬件组成1.2.1主要功能部件1.CPU由运算器、控制器组成。(1)运算器1)功能:加工信息。2)组成:移位器ALU选择器通用寄存器组选择器移位器ALU选择器通用寄存器组选择器

ALU:通过加法器实现运算操作(由全加器求和、由进位链传递进位信号)。移位器ALU选择器通用寄存器组选择器通用寄存器组:提供操作数,存放运算结果。移位器ALU选择器通用寄存器组选择器选择器:选择操作数;选择控制条件,实现各种算法。移位器ALU选择器通用寄存器组选择器移位器:直接或者移位送出运算结果。3)讨论几种典型的运算器组成

几种主要的运算方法(定、浮)(2)控制器1)功能:产生控制命令(微命令),控制全机操作。2)组成:微命令发生器指令信息状态信息时序信号微命令序列微命令产生方式(指令执行控制方式):3)讨论两种控制器组成原理与控制机制;模型机的数据通路结构和指令执行过程。组合逻辑控制方式:微程序控制方式:由组合逻辑电路产生微命令由微指令产生微命令存储体地址寄存器译码器读/写线路数据寄存器控制线路……………………2.存储器1)功能:存储信息。2)组成(主存储器):存储体地址寄存器译码器读/写线路数据寄存器控制线路……………………

存储体:存放信息的实体。

寻址系统:对地址码译码,选择存储单元。

读/写线路和数据寄存器:完成读/写操作,暂存读/写数据。存储体地址寄存器译码器读/写线路数据寄存器控制线路……………………控制线路:产生读/写时序,控制读/写操作。3.输入/输出设备1)功能:转换信息。输入:原始信息代码,送入主机输出:处理结果人所能接受的形式,并输出(代码)2)讨论显示器的工作原理和信息转换过程。3)讨论存储单元读/写原理、存储器逻辑设计

1.2.2硬件系统结构1.以总线为基础的系统结构总线:能为多个部件分时共享的一组信息传送线路。总线部件部件部件总线功能

内总线

局部总线

系统总线

外总线信息

地址总线

数据总线

控制总线时序

同步总线

异步总线格式

并行总线

串行总线方向

单向总线

双向总线(1)以CPU为中心的双总线结构CPUM接口接口I/OI/OI/O总线M总线(2)单总线结构CPUM接口接口I/OI/O系统总线(3)以M为中心的双总线结构CPUM接口接口I/OI/O系统总线

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

外存容量与地址码位数无关。3.运算速度(1)定点/浮点四则运算时间(2)每秒平均执行的指令条数(MIPS)(3)CPU时钟频率(MHz)总线位数×总线时钟频率85.处理功能(1)指令系统功能(寻址方式、指令

类型)(2)系统软件配置总线带宽=4.数据传输率(B/S)第二章计算机中的信息表示

数据信息控制信息数值型数据非数值型数据指令信息等

第一节数据信息的表示

2.1.1表示数据的大小二进制、八进制、十六进制、二-十进制2.1.2表示数据的符号原码、补码、反码2.1.3表示小数点定点、浮点1.定点表示法无符号数定点整数定点小数0000000011111111(0)(255)1111111101111111原原(-127)

(127)补1000000001111111补(-128)

(127)1.11111110.1111111原原-(1-2-7)(1-2-7)1.00000000.1111111补补(-1)(1-2-7)类型E浮点数真值:N=+R×M阶码Ef

E1…EmMf

M1

…Mn浮点数机器格式:尾数阶符数符R:阶码底,隐含约定。E:阶码,为定点整数,补码或移码表示。其位数决定数值范围;阶符表示数的大小。M:尾数,为定点小数,原码或补码表示。其位数决定数的精度;数符表示数的正负。尾数规格化:1/2≤M<1最高有效位绝对值为12.浮点表示法

第二节指令信息的表示

指令:指示计算机执行某类操作的信息的集合。本节主要讨论:一般指令格式常用寻址方式面向用户指令类型2.2.1指令格式指令基本格式操作码θ地址码D一个一个或几个1.指令字长定长指令格式变长指令格式便于控制(1)定长操作码各指令θ的位置、位数固定相同。(2)扩展操作码各指令θ的位置、位数不固定,根据需要变化。合理利用存储空间2.操作码结构关键在设置扩展标志。例.指令字长16位,可含有3、2、1或0个地址,每个地址占4位。操作码地址码

15~1211~87~43~00000X

Y

Z

1110X

Y

Z............11110000YZ

11111110

YZ............三地址指令15条二地址指令15条1111

11110000Z

111111111110Z............一地址指令15条1111

1111

1111000011111111

11111111............零地址指令16条(3)复合型操作码操作码分为几部分,每部分表示一种操作。例.某机算逻指令3.地址结构01234567815基本操作进位移位回送判跳操作数指令中提供的地址数存储单元地址码寄存器编号(1)指令提供地址的方式显地址方式隐地址方式:指令中明显指明地址。:地址隐含约定,不出现在指令中。直接或间接给出(2)地址结构的简化操作数地址●四地址结构指令格式:使用隐地址可以减少指令中的地址数,简化地址结构。θD1D2D3D4结果地址下条指令地址功能:(D1)θ(D2)D3(D4)下条指令用指令计数器PC指示指令地址。●三地址结构指令格式:操作数地址θD1D2D3结果地址下条指令地址功能:转移时,用转移地址修改PC内容。(D1)θ(D2)D3(PC)+1PC源/目的●二地址结构指令格式:θD1D2目的/源功能:(D1)θ(D2)D2/D1(PC)+1PC双操作数:●一地址结构指令格式:θD1隐含约定单操作数:功能:●零地址结构指令格式:(D1)θ(A)A(PC)+1PCθ(D1)D1(PC)+1PCθ

功能:用于堆栈或特殊指令操作。例.ADD;执行前:低SP102046SP3046执行后:高低高2.2.2寻址方式是指寻找操作数地址或操作数的方式。操作码θ立即数S(1)立即寻址指令直接给出操作数。1.常见寻址方式定长格式:变长格式:基本指令

立即数S数在指令中,其长度固定、有限。数在基本指令之后,其长度可变。用来提供常数、设置初值等。操作码θ有效地址D(2)直接寻址指令直接给出操作数地址。存储单元号寄存器号(数在M中)(数在R中)

●存储器直接寻址(直接寻址)定长格式D的位数有限,限制访存范围变长格式基本指令

DL

DHD的位数可覆盖整个存储空间S=(D)操作码θ寄存器号R存储单元号寄存器号(数在M中)(数在M中)●寄存器直接寻址(寄存器寻址)格式R所占位数少;访问R比访问M快格式S=(R)用于访问固定的存储单元或寄存器。(3)间接寻址指令给出操作数的间接地址。●存储器间址操作码θ间接地址DD=00300060...0060

S...S=((D))

M间址单元地址指针操作码θ寄存器号R●寄存器间址格式R所占位数少;R可提供全字长地址码;修改R内容比修改M内容快。格式S=((R))指针不变(由指令指定),指针内容可变,使同一指令可指向不同存储单元,以实现程序的循环、共享,并提供转移地址。●堆栈寻址操作码θ堆栈指针SP

SP...

S...S=((SP))

MR=02

M00400040

S.........地址指针0070...栈顶格式SP既可出现在指令中,也可隐含约定。●变址寻址(4)变址、基址寻址及其变化SP栈顶

M

S.........低高堆栈向上生成压栈:SP自动减1,再存数。-(SP),自减型间址。先取数,SP再自动加1。(SP)+,自增型间址。出栈:指令给出一个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。操作码θRXDD的位数有限,若不能提供全字长地址码,会使访存空间受到限制。变址寄存器号例.用变址方式访问一组连续区间内的数组元素。S=((RX)+D)D=首址D为存储区首址;(RX)为所访单元距离首址的长度;RX初值为0,每访问一个单元,(RX)+1。格式操作码θRXD形式地址修改量基准地址n-1...012...D+1D+2D+n-1

...格式(D的位数只需覆盖一个较小的存储区间)●基址寻址基址寄存器号Rb

4K指令给出一个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。操作码θRbD位移量S=((Rb)+D)基准地址相对于基址的位移

M......…...…...Rb

4K改变Rb的内容,程序能访问存储空间中任何一个定长区间(4K)。便于访问两维数组中某类指定的元素。

4K

4KRb

M......…...…...RbD=2D=2学生姓名性别性别年龄年龄学生姓名变址与基址的区别:变址:指令提供基准量(不变),

R提供修改量(可变);适于处理一维数组。基址:指令提供位移量(不变),

R提供基准量(可变);用于扩大有限字长指令的访存空间。S=((RX)+(Rb)+D)格式●基址加变址变址寄存器号指令给出两个寄存器号和一个地址量,寄存器内容与地址量之和为有效地址。位移量操作码θRXRbD基址寄存器号便于处理两维数组。格式●相对寻址指令给出位移量,PC内容与位移量之和为有效地址。位移量操作码θPC

±D或隐含指定S=((PC)±D)有效地址相对PC上下浮动,给编程带来方便。格式●页面寻址指令给出位移量,PC的高位部分与位移量拼接,形成有效地址。位移量操作码θPC

D或隐含指定S=((PC)H,D)例.M为64KB,划分为256页,每页256B。页号页内地址用于页式管理存储系统。寻址速度快,适于组织程序模块,有效利用存储空间。PC0165H7C.........017CHS2.对寻址方式的说明

(1)操作码隐含说明不同寻址方式例.某机指令操作码最高两位00:RR型指令,寄存器-寄存器寻址01:RX型指令,寄存器-变址寻址10:SI型指令,基址-立即寻址11:SS型指令,基址-基址寻址(2)指令中设置专门字段说明寻址方式例.某机指令的每个地址字段中各设置一个3位的寻址方式字段。操作码θ寻址方式R寻址方式R源地址字段目的地址字段3位3位2.2.3指令类型1.传送指令源地址目的地址数设置时需考虑:(1)规定传送范围例.DJS-100系列:

80X86:

IBM370:R

MR

M,R

RR

M,R

R,M

M(2)指明传送单位例.用操作码说明(VAX-11):用地址量说明(80X86):传送次数由计数器控制MOVB

8MOVAX,BX

MOVW

16MOVL

32MOVAL,BL

MOVEAX,EBX

例.80X86的串传送指令:REP

MOVSW(3)设置寻址方式在寻址方式的设置上几乎不受限制,能比较集中地反映指令系统各种寻址方式的实现。816322.输入/输出指令各种信息主机外设设置时需考虑:(1)I/O指令的功能扩展如何用通用I/O指令实现对各种具体设备的控制?●I/O指令中留有扩展余地指令中某些字段编码事先不定义,需要时再约定其含义。●I/O接口中设置控制/状态寄存器用于外设种类、数量不多的场合。(2)主机对外设的寻址方式如何设置控制/状态寄存器是接口设计的关键。寻找I/O接口中的寄存器的方式。主机用输出指令或传送指令将具体设备的控制命令按约定的代码格式送往接口中的控制寄存器,向外设发出命令。外设的状态信息也以某种格式放在接口的状态寄存器中,主机用输入指令或传送指令从状态寄存器中取出有关信息进行查询、分析。I/O端口寻找I/O接口中的寄存器的方式。如何为I/O端口分配地址?●单独编址I/O地址空间不占主存空间,可与主存空间重叠。=1访问存储器=0访问I/O端口需设置标志区分访问对象,如编址到寄存器:为每个寄存器(I/O端口)分配独立的端口地址;

I/O指令中给出端口地址。M/IO●统一编址I/O端口占据部分主存空间。常将存储空间的低端分配给主存单元,高端分配给I/O端口,以示区分。编址到寄存器●设置专用I/O指令针对单独编址,用I/O指令访问I/O端口。指令中说明输入/输出操作,并给出端口地址。

:为每个寄存器(I/O端口)分配总线地址;访问外设时,指令中给出总线地址。(3)I/O指令设置方式显式I/O指令例.80X86I/O指令设置输入:INAL,n;端口地址(n)AL(直接端口寻址)

INAL,DX;间接端口地址((DX))AL(间接端口寻址)输出:OUTn,AL;(AL)n(直接端口寻址)

OUTDX,AL;(AL)(DX)(间接端口寻址)主机调用输入机:●用传送指令实现I/O操作针对统一编址,用传送指令访问I/O端口。不设专用I/O指令。例.某机I/O接口中设置控制/状态寄存器CSR,其总线地址为177550(8进制)数据缓冲寄存器DBR,其总线地址为177552隐式I/O指令控制/状态字格式:出错

故障

完成

允许中断

维护

校验

启动:测试:取数:主机

177550控制字(启动位为1)传送指令主机

177550

状态字传送指令主机

177552

数据传送指令●通过I/O处理机进行I/O操作CPU执行简单I/O指令

(启动、停止、查询、清除)设置时需考虑操作数类型、符号、进制等;运算结束后设置相应状态标志。两级I/O指令(1)算术运算指令I/O处理机执行I/O操作指令

(输入、输出……)3.算术逻辑运算指令(2)逻辑运算指令实现对代码位的设置、测试、清除、修改等。与或异或控制程序流程。(1)转移指令4.程序控制指令(2)转子指令与返回指令转子:操作码子程序入口无条件转移条件转移循环:操作码转移地址:操作码转移地址转移条件:转移条件为循环计数值返回:操作码返回地址同一条返回指令应能提供多个不同的返回地址。返回地址的存取:用堆栈存放返回地址。(3)软中断指令程序自陷指令第二章复习提纲1.I/O指令的功能扩展(目的、方法),外设编址方式和指令设置方式。2.基本概念:扩展操作码(扩展方法)、地址结构(简化方法)、隐地址、显地址、基本寻址方式(立即、直接、间址、变址)的含义与应用场合。表示不同的功能调用…调试程序………早期主要用于程序的调试。现在常常用于系统功能调用。以INTn

的形式出现在程序中。第三章CPU子系统运算部件寄存器寄存器控制部件运算器控制器本章主要讨论:运算器控制器数据通路结构与外部的连接指令的执行过程CPU组成CPU工作原理

第一节运算器组织

独立结构小型存储器结构单口双口寄存器组独立R、双口RAM用多路选择器作为ALU的输入逻辑,单口RAM用锁存器作为ALU的输入逻辑。3.1.1带多路选择器的运算器移位器ALU多路选择器多路选择器R0RnR0...RnR0...Rn内部总线(单向)特点:R各自独立;可同时向ALU提供两个操作数;采用单向内总线。3.1.2带输入锁存器的运算器特点:单口RAM不能同时向ALU提供两个操作数;用锁存器暂存操作数;采用双向内总线。移位器ALU锁存器锁存器内部总线(双向)R0Rn通用寄存器组(小型存储器)3.1.3位片式运算器特点:用双口RAM(两地址端、两数据端)作通用寄存器组,可同时提供数据;用多路选择器作输入逻辑,不需暂存操作数;ALU增加乘、除功能,用乘商寄存器存放乘数、乘积或商。例.4位片运算器粗框移位器ALU多路选择器多路选择器DO

RAMDi

B地址A地址CnDBDAG、P控制信息Cn+4乘商寄存器444444444444

第二节运算方法3.2.1.1补码加减法数用补码表示,符号位参加运算。实际操作能否只取决于操作码?结果需不需修正?如何将减法转换为加法?

3.2.1定点加减运算1.基本关系式

(X+Y)补

=X补

+Y补

(1)

(X-Y)补

=X补

+(-Y)补

(2)式(1):操作码为“加”时,两数直接相加。3)X=3Y=–2

X补=00011Y补=1111000001(+1补码)2)X=–3Y=–2

X补=11101Y补=1111011011(–5补码)1)X=3Y=2

X补=00011Y补=0001000101(+5补码)4)X=–3Y=2

X补=11101Y补=0001011111(–1补码)例.求(X+Y)补

(X+Y)补

=X补

+Y补

(1)

(X-Y)补

=X补

+(-Y)补

(2)式(2):操作码为“减”时,将减转换为加。1)X=4Y=–5

X补=00100Y补=11011(-Y)补=0010101001(+9补码)2)X=–4Y=5

X补=11100Y补=00101(-Y)补=1101110111(–9补码)例.求(X–Y)补Y补(–Y)补:将Y补变补不管Y补为正或负,将其符号连同尾数一起各位变反,末位加1。即将减数变补后与被减数相加。

X补=00100

Y补=11011

X补=11100

Y补=00101注意:某数的补码表示与某数变补的区别。例.10101原

11011补码表示10011补

01101变补

00101原

00101补码表示符号位不变;负数尾数改变,正数尾数不变。00011补

11101变补符号位改变,尾数改变。补码的机器负数2.算法流程操作数用补码表示,符号位参加运算结果为补码表示,符号位指示结果正负X补+Y补X补+(-Y)补ADDSUB3.逻辑实现A(X补)B(Y补)+AABB+B+B+1CPA

A(1)控制信号加法器输入端:+A:打开控制门,将A送∑。+B:打开控制门,将B送∑。+1:控制末位加1。+B:打开控制门,将B送∑。加法器输出端:∑

A:打开控制门,将结果送A输入端。CPA:将结果打入A。(2)补码加减运算器粗框∑3.2.1.2溢出判断在什么情况下可能产生溢出?例.数A有4位尾数,1位符号SA

数B有4位尾数,1位符号SB

符号位参加运算结果符号Sf符号位进位Cf尾数最高位进位C正确0001100010(1)A=3B=23+2:00101(2)A=10B=710+7:010100011110001正溢正确负溢正确正确(3)A=-3B=-2-3+(-2):110111110111110(4)A=-10B=-7-10+(-7):011111011011001(5)A=6B=-46+(-4):000100011011100(6)A=-6B=4-6+4:111101101000100(2)A=10B=710+7:01010

0011110001(4)A=-10B=-7-10+(-7):0111110110110011.硬件判断逻辑一(SA、SB与Sf的关系)溢出=SASBSfSASfSB2.硬件判断逻辑二(Cf与C的关系)正确0001100010(1)A=3B=23+2:00101(2)A=10B=710+7:010100011110001正溢正确负溢正确正确(3)A=-3B=-2-3+(-2):110111110111110(4)A=-10B=-7-10+(-7):011111011011001(5)A=6B=-46+(-4):000100011011100(6)A=-6B=4-6+4:111101101000100Cf=0C=0Cf=0C=1Cf=1C=1Cf=1C=0Cf=1C=1Cf=0C=0111111(2)A=10B=710+7:01010

0011110001(4)A=-10B=-7-10+(-7):0111110110110011.硬件判断逻辑一(SA、SB与Sf的关系)溢出=SASBSfSASfSB2.硬件判断逻辑二(Cf与C的关系)溢出=CfC3.硬件判断逻辑三(双符号位)(1)3+2:正确00001100001000

0101(2)10+7:001010000111010001正溢正确负溢正确正确(3)-3+(-2):110111111101111110(4)-10+(-7):101111110110111001(5)6+(-4):000010000110111100(6)-6+4:11

111011

1010000100第一符号位Sf1第二符号位Sf2溢出=Sf1Sf2(2)A=10B=710+7:01010

0011110001(4)A=-10B=-7-10+(-7):0111110110110011.硬件判断逻辑一(SA、SB与Sf的关系)溢出=SASBSfSASfSB2.硬件判断逻辑二(Cf与C的关系)溢出=CfC3.硬件判断逻辑三(双符号位)3.2.1.3移位操作逻辑移位

:数码位置变化,数值不变。1.移位类型算术移位

10001111循环左移:0:数码位置变化,数值变化,符号位不变。1001111算术左移:1

001

1111011110(-15)(-30)(1)单符号位:0011101110

(2)双符号位:001110

0001112.正数补码移位规则(3)移位规则左移右移右移0011100011左移左移右移右移011100

001110000111数符不变(单:符号位不变;双:第一符号位不变)。空位补0(右移时第二符号位移至尾数最高位)。(1)单符号位:1101110110

(2)双符号位:101100

1101103.负数补码移位规则(3)移位规则左移右移右移1101111101左移右移右移110110111011数符不变(单:符号位不变;双:第一符号位不变)。左移空位补0(第二符号位移至尾数最高位)。右移空位补13.2.1.4舍入方法1.0舍1入(原码、补码)000100原

100101原

111011补

2.末位恒置1(原码、补码)000100原

111011补

100101原

00010原

10011原

11110补

00011原

10011原

11101补

10011原

11101补

例.保留4位尾数:例.保留4位尾数:

3.2.2定点乘法运算3.2.2.1原码一位乘法

每次用一位乘数去乘被乘数。

1.算法分析乘法部分积累加、移位。例.0.1101×1.1011乘积P=X×Y积符SP=SXSYX原Y原(1)手算0.1101×0.1011

1101110100001101

0.10001111上符号:1.10001111部分积问题:1)加数增多(由乘数位数决定)。

2)加数的位数增多(与被乘数、乘数位数有关)。改进:将一次相加改为分步累加。(2)分步乘法每次将一位乘数所对应的部分积与原部分积的累加和相加,并移位。设置寄存器:

A:存放部分积累加和、乘积高位

B:存放被乘数

C:存放乘数、乘积低位

设置初值:

A=00.0000B=X=00.1101C=Y=.1011

步数条件操作AC

00.0000.1011

1)Cn=1+BCn+00.110100.1101

0.1101×0.1011

1101110100001101

0.10001111BC

1101

00.01101.101

0.1101×0.10112)Cn=1+B+00.110101.001100.100111.10

0.1101×0.1011

0.1101×0.1011

1101110100001101

0.10001111BC3)Cn=0+0+00.000000.100100.0100111.14)Cn=1+B+00.110101.000100.10001111X原×Y原=1.10001111

2.算法流程0A、XB、YC、0CRCn=1?CR=n?1/2(A+B)A,C1/2(A+0)A,C

CR+1CRYYNN

Sx+SySA

3.运算规则(1)操作数、结果用原码表示;(2)绝对值运算,符号单独处理;(3)被乘数(B)、累加和(A)取双符号位;(4)乘数末位(Cn)为判断位,其状态决定下步操作;(5)作n次循环(累加、右移)。3.2.2.2补码一位乘法

1.算法分析

X补

=X0.X1X2……Xn(1)Y为正:Y补=0.Y1Y2……Yn

(XY)补=X补(0.Y1Y2……Yn)(2)Y为负:Y补

=1.Y1Y2……Yn

(XY)补=X补(0.Y1Y2……Yn)+(-X)补(3)Y符号任意:

(XY)补=X补(0.Y1Y2……Yn)+(-X)补Y0符号位(4)展开为部分积的累加和形式:(XY)补=X补(0.Y1Y2……Yn)+(-X)补Y0

=X补(0.Y1Y2……Yn)-X补Y0

=X补(-Y0+2Y1+2

Y2+……+2

Yn)-1

-2

-n

=X补

-Y0+(Y1-2Y1)+(2Y2-2Y2)+……-1-1-2-(n-1)-n

+(2Yn-2Yn)

=X补(Y1-Y0)+2(Y2-Y1)+2(Y3-Y2)+……-1-2

+2(0-Yn)-n

+2(0-Yn)-nYn+1

=X补(Y1-Y0)+2(Y2-Y1)+2(Y3-Y2)+……-1-2

+2(0

-Yn)-nYn+1比较法:用相邻两位乘数比较的结果决定

+X补、-X补或+0。

2.比较法算法Yn(高位)Yn+1(低位)操作(A补为部分积累加和)00011011

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步数条件操作AC

00.00001.0101

1)10-BCn+00.110100.110100.011011.01012)01+B+11.001111.100111.1100111.0103)10-B+00.110100.100100.01001111.014)01+B+11.001111.011111.101111111.00Cn+1CnCn+15)10-B+00.1101(XY)补

=0.100011114)01+B+11.001111.011111.101111111.05)10-B+00.110100.10001111修正(1)A、B取双符号位,符号参加运算;(2)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.10110÷0.111110.10110

11010.01

111110.111110001

11111

1010101

11111

101100.00000.0.商:0.10110余数:0.10110×2

5实现除法的关键:比较余数、除数绝对值大小,以决定上商。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步数条件操作AC00.101100.00000

1)0-B

01.01100+11.0000100.011010.000012)1-B00.11010+11.0000111.110110.000103)恢复余数+B+00.1111100.1101001.101000.001014)0-B+11.0000100.10101CnSAQ1

Q2

Q3

r02r0r12r1r2’r22r2r3步数条件操作AC00.101010.00101

5)0-B

01.01010+11.0000100.010110.010116)1-B00.10110+11.0000111.101110.101107)恢复余数+B+00.1111100.10110Q=-0.10110CnQ4

Q5

Q3

r32r3r42r4r5’r5R=0.10110×2-5X/Y=-0.10110+-0.10110×2-5

0.111113.说明(1)A、B双符号位,X、Y绝对值,X小于Y。(2)运算结束后,余数乘以2,与被除数同号。-n3.2.3.2原码不恢复余数法(加减交替法)1.算法分析第二步:2r1-B=r2’<0第三步:r2’+B=r2(恢复余数)第四步:2r2-B=r32r2-B=2(r2’+B)-B=2r2’+B=r3第二步:2r1-B=r2<0第三步:2r2+B=r3(不恢复余数)2.算法

ri+1=2ri+(1-2Qi)Yri为正,则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=00.11111

C=Q=0.00000

-B=11.00001步数条件操作AC00.101100.00000

1)为正-B

01.01100+11.0000100.011010.000012)为负-B00.11010+11.0000111.110110.000103)+B+00.1111111.101100.00101为正00.10101Cn

rQ1

Q2

Q3

r02r0r12r1r22r2r34)为正-B

01.01010+11.0000100.010110.01011Q4

2r3r4步数条件操作AC00.010110.01011

6)为负恢复余数+B+00.1111100.10110Q=-0.10110CnQ4

r45)为正-B

00.10110+11.0000111.101110.10110Q5

2r4r5’r5R=0.10110×2-5X/Y=-0.10110+

0.10110×2-5

-0.11111

4.运算规则(1)A、B取双符号位,X、Y取绝对值运算,X<Y。(2)根据余数的正负决定商值及下一步操作。(3)求n位商,作n步操作;若第n步余数为负,则第

n+1步恢复余数,不移位。3.2.3.3补码不恢复余数法(加减交替法)如何判断是否够减?如何上商?

如何确定商符?

1.判够减(1)同号相除4774-4-7-7-41-47-744-77-4010-43-7-3-(-4)-3-(-7)3够减不够减够减不够减够减:r与X、Y同号;不够减:r与X、Y异号。(2)异号相除

10

1

0+(-4)

3+(-7)-3

+4-3

+7

3够减够减不够减不够减够减:r与X同号,与Y异号;不够减:r与X异号,与Y同号。(3)判断规则同号:作X补-Y补X补Y补够减:r补与Y补同号不够减:r补与Y补异号异号:作X补+Y补够减:r补与Y补异号不够减:r补与Y补同号2.求商值X补Y补同号:商为正异号:商为负够减商1不够减商0够减商0不够减商1(r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号)够减商1不够减商0够减商0不够减商1(r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号)(r、Y同号)(r、Y异号)(r、Y异号)(r、Y同号)够减商1不够减商0够减商0不够减商1上商规则:Qi=Sri⊕SY余数与除数同号商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.商的校正X补Y补=(-1+2+∑2Qi补)+2rn补Y补-n-in-1i=0-n商余数真商=假商+1.000…01=Q0.Q1Q2……Qn-1求n-1位商(假商)X补Y补=(-1+2+∑2Qi补)+2rn补Y补-n-in-1i=0-n商余数(1)∑2Qi补n-1i=0-i(2)2-n第n位商(末位商)恒置1(3)-1商符变反n位(4)余数求至rn6.实例X=0.10110,Y=-0.11111,求X/Y,给出商Q和余数R。初值:A=X补=00.10110

B=Y补=11.00001C=Q补=0.00000

-B=00.11111步数条件操作AC00.101100.0000

1)异号+B

01.01100+11.0000100.01101

0.00002)同号+B00.11010+11.0000111.11011

0.0001Cn-1r、YQ1

Q2

r02r0r12r1r2求商符Q0

异号05)+B+11.0000100.1011011.10111步数条件操作AC11.110110.0001

3)异号-B

11.10110+00.1111100.10101

0.00104)异号+B01.01010+11.0000100.01011

0.0100Cn-1r、YQ3

Q2

r22r2r32r3r42r4r5假商=0.0100Q4

真商=0.0100+1.00001=1.01001Q=-0.10111R=-0.01001×2X/Y=-0.10111+-0.01001×2-5

-0.11111-5

7.运算规则(1)A、B取双符号位,符号参加运算,并且

X<Y。(2)根据余数与除数的符号决定商值及下一步操作。(3)求n-1位商,作n步操作(求出rn)。(4)对商校正(商符变反,第n位商恒置1)。

3.2.4浮点四则运算3.2.4.1浮点加减运算步骤:1.检测能否简化操作。判操作数是否为0尾数为0阶码下溢2.对阶例.10.01(1)对阶:使两数阶码相等(小数点实际位置对齐,尾数对应权值相同)。(2)对阶规则:小阶向大阶对齐。2×0.10012×0.110123110.1010.01110.12×0.010132×0.110133.尾数加减.(1)1.0001+0.1001(4)阶码比较:比较线路或减法。(3)对阶操作:小阶阶码增大,尾数右移。例.AE>BE,则BE+1BE,BM,直到BE=AE1.1010(2)0.0101+0.1101AM+BMAM4.结果规格化

M<1/21.0010

M>1应左移规格化应右移规格化AE-1AE若Af1⊕Af2=1,则右规:(1)11.0001+00.100111.1010(2)00.0101+00.110101.0010(-1/2除外)Af1Af2A1AM11.1010若Af1Af2A1+Af1Af2A1=1,则左规:01.0010Af1Af2AMAE+1AE3.2.4.2浮点乘法运算步骤:1.检测操作数是否为0。2.阶码相加。若阶码用移码表示,相加后要修正。浮点乘定点加、定点乘3.尾数相乘。相乘前不需对阶。设A=2×AM,B=2×BMAEBEAE+BEA×B=2

×(AM×BM)

4.结果规格化。一般左规。3.2.4.3浮点除法运算步骤:1.检测操作数是否为0。2.AM<BM?浮点除定点减、定点除4.尾数相除。相除前不需对阶。设A=2×AM,B=2×BMAEBE5.结果不再规格化。AE-BEA÷B=2

×(AM÷BM)

3.阶码相减。若阶码用移码表示,相减后要修正。简要回答下列问题(1)原码一位乘法与补码一位乘法的主要区别是什么?(2)原码加减交替除法和补码加减交替除法分别根据什么情况商1、商0?(3)在浮点加减运算中如何进行对阶操作?(4)在什么情况下需要左移规格化?什么情况下需要右移规格化?第三章作业(一)第三节组合逻辑控制器原理3.3.1控制器组成微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成PCθD寻来自M送M或ALU+1送M微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成PCθD寻来自M送M或ALU+1送M微命令发生器1.微命令发生器功能:产生全机所需的各种微命令控制最基本的操作(微操作)的命令电位型脉冲型微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成PCθD寻来自M送M或ALU+1送M2.指令计数器PC功能:指示指令在M中的位置。PC+1顺序执行:PC先+1,再用转移地址修改PC微命令发生器PC转移执行:3.指令寄存器IR功能:存放现行指令。决定操作性质操作码字段操作数地址转移地址PC微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成θD寻来自M送M或ALU+1送M微命令发生器PC

IR地址码字段译码器微命令发生器地址形成部件寻D4.状态寄存器PSW功能:指示程序运行方式,反映程序运行结果。例.某机的PSWPC微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成θD寻来自M送M或ALU+1送M微命令发生器PC

IR

PSW工作方式

优先级

T

NZVC151211876543210C=1进位

V=1溢出Z=1结果为0N=1结果为负T=1,执行跟踪程序(1)条件码反映程序运行结果工作方式

优先级TNZVC151211876543210(2)跟踪标志为程序查错设置的断点标志T。程序初始化置T为1...测试T跟踪程序….....程序优先级高于外部优先级,不响应程序优先级低于外部优先级,可响应用户方式:禁止程序执行某些指令核心方式:允许程序执行所有指令(3)优先级为现行程序赋予优先级别,以决定是否响应外部中断请求。工作方式优先级TNZVC151211876543210(4)工作方式规定程序的特权级。PSW在CPU中,反映程序运行状态;控制/状态字在接口中,反映CPU命令、设备状态。5.时序线路功能:控制操作时间和操作时刻。PC微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成θD寻来自M送M或ALU+1送M微命令发生器PC

IR

PSW时序振荡器分频器时钟脉冲工作脉冲时钟周期(节拍)产生电位型微命令,控制操作时间段产生脉冲型微命令,控制定时操作1.取指令PCPC微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成θD寻来自M送M或ALU+1送M微命令发生器PC

IR

PSW时序3.3.2控制器工作过程地址M指令IR、译码(θ、寻址方式)PC+1PC2.取数PC微命令发生器微命令序列I/O状态控制台信息运行状态译码…...

PSW时序

IR地址形成θD寻来自M送M或ALU+1送M微命令发生器PC

IR

PSW时序按寻址方式,或从寄存器取数,或从存储器取数。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打入PC2.时序控制方式及其变化(1)同步控制各项操作受统一时序控制。①定义:②特点:有明显时序时间划分,③优缺点:时序关系简单,时序划分规整,控制不复杂;时间安排不合理。④应用场合:用于CPU内部、设备内部、系统总线操作

控制逻辑易于集中,便于管理。

(各挂接部件速度相近,传送时间确定,传送距离较近)。时钟周期时间固定,

各步操作的衔接、各部件之间的数据传送受严格同步定时控制。各项操作受统一时序控制。由CPU或其他设备提供(2)异步控制各项操作按不同需要安排时间,不受统一时序控制。①定义:②特点:无统一时钟周期划分,例.异步传送操作●

主设备:申请并掌握总线权的设备。各操作间的衔接和各部件之间的信息交换采用异步应答方式。总线主从●

从设备:响应主设备请求的设备。发/接接/发主设备获得总线控制权●

操作流程:主设备询问从设备主设备发送/接收数据主设备释放总线控制权从设备准备好?YN主设备输出端与总线连接主设备输出端与总线断开时间安排紧凑、合理;控制复杂。③优缺点:④应用场合:用于异步总线操作(各挂接部件速度差异大,传送时间不确定,传送距离较远)。(3)同步方式的变化指令周期长度可变,时钟周期长度不变。①不同指令安排不同时钟周期数②总线周期中插入延长周期经总线传送一次数据所用的时间(送地址、读/写)总线周期长度可变,时钟周期长度不变。总线周期(4T)例.一个总线周期包含4个时钟周期时钟T1T3T2T4送地址读/写数据结束同步方式时钟T1T3T2T4T4T4Tw送地址读/写数据结束总线周期(5T)扩展同步方式③同步方式引入异步应答以固定时钟周期作为时序基础,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论