微机原理期末复习:微机原理期末复习.pdf

上传人:无*** 文档编号:90918622 上传时间:2023-05-18 格式:PDF 页数:38 大小:5.75MB
返回 下载 相关 举报
微机原理期末复习:微机原理期末复习.pdf_第1页
第1页 / 共38页
微机原理期末复习:微机原理期末复习.pdf_第2页
第2页 / 共38页
点击查看更多>>
资源描述

《微机原理期末复习:微机原理期末复习.pdf》由会员分享,可在线阅读,更多相关《微机原理期末复习:微机原理期末复习.pdf(38页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、微机原理期末复习第2章计算机的基本结构与工作过程1.计算机的基本组成及各个组成部件的基本功能运算器运算器是进行算术运算(如加、减、乘、除等)和逻辑运算(如非、与、或等)的装置。通常由算术逻辑部件AL U、专用寄存器X、Y和Z、累加器、通用寄存器R O、R 1、R n-1以及标志寄存器F组成。核心部件AL U用于完成算术运算和逻辑运算。X、Y是AL U的输入寄存器,Z是AL U的输出寄存器。X、Y、Z是 与AL U不可分的一部分,通常称为AL U的数据暂存器。X、Y中的数据可来自通用寄存器,也可来自存储器。Z中的数据可送往通用寄存器,也可送往存储器。F用于存放运算结果的状态,例如,结果是否为零,

2、是正还是负,有无进位,是否溢出,等等。控制器为了实现对计算机各部件的有效控制,快速准确地取指令、分析指令和执行指令,控制器通常由下面几部分组成:指令寄存器I R 用于存放正在执行或即将执行的指令。程序计数器P C用于存放下一条指令的存储单元地址,它具有自动增量计数的功能。存储器地址寄存器M AR 用于在访存时缓存存储单元的地址。存储器数据寄存器M D R 用于在访存时缓存对存储单元读/写的数据。指令译码器I D一一用于对I R中的指令进行译码,以确定I R中存放的是哪一条指令。控制电路一一产生时序脉冲信号,并在时序脉冲的同步下对有关的部件发出微操作控制命令(微命令),以控制各个部件的动作。输入

3、设备用来输入数据和程序的装置,其功能是将外界的信息转换成机内的表示形式并传送到计算机内部。常见的输入设备有键盘、鼠标、图形数字化仪、图像扫描仪等等。输出设备用来输出数据和程序的装置,其功能是将计算机内的数据和程序转换成人们所需要的形式并传送到计算机外部。常见的输出设备有显示器、打印机、绘图机等等。存储器计算机中的指令和数据都表现为二进制数码。为了准确地对存储器进行读或写,通常以字节(或以字)为单位将存储器划分为一个个存储单元,并依次对每一个存储单元赋予一个序号,该序号称为存储单元的地址。存储单元中存放的数据或指令称为存储单元的内容。地址的位数由控制器地址线的位数确定,每个存储单元中内容的位数由

4、设计计算机时对存储器的编址方法确定。基本结构:02.微型计算机系统的组成CP U、存储器、I/O接口、输入/输出设备。CP U、存储器、I/O接口电路之间用三组总线相连:地址总线(AB,Ad d r e s s Bu s).数据总线(D B,D a t a Bu s)控制总线(CB,Co n t r o l Bu s)()地址总线、数据总线、控制总线通常统称为系统总线。从传输方向上看,数据总线是双向的,地址总线是单向的,控制总线中的信号线有的是单向的,也有的是双向的。3.计算机执行指令的基本过程(P48)(1)控制器把PC中的指令地址送往存储器地址寄存器M AR,并发出读命令“M读”。存储器按

5、给定的地址读出指令,经由存储器数据寄存器M D R送往控制器,保存在指令寄存器IR中。(2)指令译码器ID对指令寄存器IR中的指令进行译码,分析指令的操作性质,并由控制电路向存储器、运算器等有关部件发出指令所需要的微命令。(3)当需要由存储器向运算器提供数据时,控制器根据指令的地址部分,形成数据所在的存储单元地址,并送往存储器地址寄存器M AR,然后向存储器发出读命令“M读”,从存储器中读出的数据经由存储器数据寄存器M D R送往运算器。(4)当需要由运算器向存储器写入数据时,控制器根据指令的地址部分,形成数据所在的存储单元地址,并送往存储器地址寄存器M AR,再将欲写的数据存入存储器数据寄存

6、器M D R,最后向存储器发出写命令“M写”,M D R中的数据即被写入由M AR指示地址的存储单元中。5)一条指令执行完毕后,控制器就要接着执行下一条指令。为了把下一条指令从存储器中取出,通常控制器把PC的内容加上一个数值,形成下一条指令的地址。在 遇 到“转移”指令时,控制器则把“转移地址”送 入PC。控制器不断重复上述过程的(1)到(5),每重复一次,就执行了一条指令,直到整个程序执行完毕。4.硬布线控制器与微程序控制器的基本结构、工作原理及各自特点。硬布线控制器(硬连线控制器或组合逻辑控制器)基本结构:硬布线控制器主要由环形脉冲发生器、指令译码器和微命令编码器组成。环形脉冲发生器用于循

7、环地产生节拍脉冲信号;指令译码器用于确定IR中存放的是哪一条指令;微命令编码器用于在不同节拍脉冲信号的同步下产生相应的微命令信号。工作原理:在取指令和执行指令时,都需要控制器能针对不同的指令在不同的机器周期内发出所需要的各种微命令。例如,在取指令时,就需要控制器在第一个周期内发出PCO U T、M AR IN,M读、PC加 共4个微命令,在第二个周期内发出M D R O U T和IR IN两个微命令。针对前面给出的4条指令及对指令执行过程的讨论,可归纳出对不同指令在不同机器周期内应发出的微命令如表2-2所示。表中的E n d代表指令执行结束的微命令。指令名TlT2T3T4T5L O ADPCo

8、 u tM D R o u tIR o u tM D R o u tE n d(0 0)M AR i nIR i nM AR i nR l i nM读M读PC加AD D同上同上IR o u tM D R o u t Y i nR l o u t(0 1)M AR i na d dM读STO R E同上同上IR o u tR l o u tE n d(1 0)M AR i nM D R i nM写JM P同上同上IR o u tE n d(1 1)PCi n如 果 用“表 示“与”,用“+”表 示“或”,用Ti表示第i个机器周期的节拍脉冲信号,并设所有的信号都是高电平有效,则可用一个逻辑表达式来

9、表示某个微命令应在什么时间发出、对哪些指令发出。例如,对于微命令M AR IN,所有的四条指令在T 1周期内都需要,L O AD、AD D、STO R E三条指令在T3周期内也需要,而其他指令则不需要。描述上述关系的逻辑表达式就是:MA R I N=T 1 (L O A D+A D D+S T O R E+J MP)+T 3 (L 0 A D+A D D+S T 0 R E)=T l+T 3 (L O A D+A D D+S T O R E)o优缺点:硬布线控制器直接由组合逻辑电路产生微操作控制信号,因而其操作速度较快,但相应的控制逻辑电路十分庞杂,给设计、调试和检测都带来不便。这种形式的控制

10、器设计完毕后若想扩充和修改,则更为困难。其突出的优点是指令执行速度很快,常用于R I S C结构的机器中。微程序控制器基本组成:主要由控制存储器(C M)、微指令寄存器(u I R)、微地址寄存器(U A R)和微地址形成电路等部件组成。指令代码运行状态微地址形成电路微地址寄存器微 命 令 序 列(至 处 理顺序控制方式微地址给定部分微指令寄存器|1IR微操作控制字段顺序控制字段基本原理:(1)在微程序中有一条或几条微指令,其微命令是实现“取指”的操作,称为“取机器指令用的微指令”,属于微程序的公用部分。在开始执行机器指令时,先从控制存储器中读取“取机器指令用的微指令”,它所包含的微命令使C

11、P U访问主存储器,读取机器指令,送入指令寄存器I R,然后修改程序计数器P C的内容。(2)根据机器指令中的操作码,通过微地址形成电路,找到与该机器指令所对应的微程序入口地址。(3)逐条取出对应的微指令,每一条微指令提供一个微命令序列,控制相关部件的操作。执行完一条微指令后,根据微地址形成方法产生后继微地址,读取下一条微指令。(4)执行完对应于一条机器指令的一段微程序后,返 回 到“取机器指令用的微指令”,开始读取与执行又一条机器指令。顺序控制方式:(1)初始微地址的形成:每一条机器指令由一段对应的微程序解释执行,该段微程序的入口地址就是所谓的初始微地址。(i)读取机器指令:在整个微程序中需

12、设置一小段公用的“取机器指令用的微程序”,来实现读取机器指令的操作。这段微程序可以从控制存储器的0#单元或其他特定单元开始,这样就可以以该单元地址为初始微地址读取机器指令。(i i)功能转移:取出机器指令后,根据指令代码转换成相应的微程序段入口地址,称为功能转移。常见的有“一级功能转移”和“多级功能转移”等。(2)后续微地址的形成:每条微指令执行完毕后,都要根据其顺序控制字段的规定形成后续微地址。常用的有增量方式与断定方式两种类型。(i)增量方式:又称计数器方式,是用微程序计数器u P C (即微地址寄存器uA R)来产生下一条微指令的微地址,将微程序中各条微指令按执行顺序安排在控制存储器中,

13、后续微地址由现行微地址加上一个增量来得到。U P C的更新一般是进行加1的操作,但当遇到特殊情况时可做专门的处理:例如微程序结束时,u P C复位到初始微地址,这个微地址可由初始微地址生成电路产生。(i i)断定方式:这是一种将“直接给定”与“测试断定”相结合的方式。具体做法是,直接给定微地址的高位部分,而将微地址的若干低位作为可断定的部分,相应地在微指令的顺序控制字段中设置断定条件,即微地址低位段的形成条件。优缺点:与硬连线控制器相比,微程序控制器是一种利用软件方法来设计硬件的技术,可实现复杂指令的操作控制。它具有规整性的突出优点,它实质上是用程序的方法来产生和组织微命令信号(将程序技术引入

14、CPU),用存储逻辑控制代替组合逻辑控制(将存储逻辑引入CPU)。微程序控制器每执行一条指令都要启动控制存储器中的一串微指令(即一段微程序),因此指令的执行速度相对于“硬布线”控制器来说要慢。微程序控制器的另一个优点是其灵活性。它使得在计算机中可以较方便地增加和修改指令,只要增加或修改一部分微程序即可。甚至可以实现其他计算机的指令系统,从而可以在一种计算机上运行另一种计算机的指令代码。这种实现不同机器指令系统的方式称为计算机系统的“指令仿真(E m ulation)”。计算机的指令仿真是一种获得机器软件兼容的方法,它使得已有软件能够在新型的计算机中继续运行。第3章 微处理器的编程结构1.80

15、86处理器的寄存器结构通用寄 存 器(多功能寄存器)共 有8个通用寄存器,按它们的功能差别,又可分为两组,即:“通用数据寄存器”及“指针寄存器和变址寄存器”。通用数据寄存器通用数据寄存器用来存放8位、1 6位 或3 2位的操作数。大多数算术运算和逻辑运算指令都可以使用这些寄存器。共有4个通用数据寄存器,它们是EAX、EBX、ECX 和 EDXo(2)指针寄存器和变址寄存器这是另外4个通用寄存器,分别是:堆栈指针寄存器ESP、基址指针寄存器EBP、源变址寄存器E S I和目的变址寄存器EDE指令指针寄存器 E I P (I n s t r u c t i o n P o i n t e r)E

16、I P 是一个专用寄存器,用于寻址当前需要取出的指令字节。当CP U 从内存中取出一个指令字节后,E I P 就自动加1,指向下一指令字节。当微处理器工作在实模式下时,这个寄存器为I P(1 6位);当80 3 86及更高型号的微处理器工作于保护模式下时,则是E I P(3 2 位)。程序员不能对E I P/I P 进行存取操作。程序中的转移指令、返回指令以及中断处理能对E I P/I P 进行操作。标志寄存器E FL A GSE FL A GS 用于指示微处理器的状态并控制它的操作。早期的80 86/80 88微处理器的标志寄存器FL A G为 1 6 位,且只定义了其中的9位;80 2 8

17、6 微处理器虽然仍为1 6 位的标志寄存器,但定义的标志位已从原来的9位增加到1 2 位;80 3 86 及更高型号的微处理器则采用3 2 位的标志寄存器E FL A GS,所定义的标志位也有相应的扩充。段寄存器FS 和 GS这两个段寄存器仅对80 3 86 及更高型号的微处理器有效,以便程序访问相应的两个附加的存储器段。2.80 86 标志寄存器及每个标志位的功能80 86/80 88系统中所定义的9 个标志位0、D、I、T、S、Z、A、P、C,这也是实模式下80 x 86/P e n ti um系列微处理器所使用的标志位。在这9 个标志位中,有 6 位(即C F、P F、A F、Z F、S

18、 F和O F)为状态标志;其余3 位(即T F、I F和 D F)为控制标志。状态标志(1)进位标志 C F(C a r r y Fl a g):当执行算术运算指令时,其结果的最高位有进位或借位时将C F置 1;否则将C F置 0。(2)奇偶标志 P F(P a r i ty Fl a g):该标志位反映操作结果低8 位中“1”的个数情况,若为偶数个“1”,则将PF置“1”;若为奇数个“1”,则将P F置“0”。(3)辅助进位标志 A F(A ux i l i a r y c a r r y Fl a g):辅助进位标志也称“半进位”标志。A F=1,表示本次运算的低4位中的最高位有进位(加法

19、运算时)或有借位(减法运算时)。AF 一般用于BCD运算中是否进行十进制调整的依据。十进制调整指令DAA和DAS测试这个标志位。(4)零标志 ZF(Zero F la g):反映运算结果是否为零。若结果为零,则Z F=1;若结果不为零,则Z F=0。(5)符号标志 SF(Sign F la g):反映带符号数(以二进制补码表示)运算结果符号位的情况。若结果为负数,则S F=1;若结果为正数,则S F=0。S F的取值总是与运算结果的最高位(字节操作为D 7,字操作为D 1 5,双字操作为D31)取值一致。(6)溢出标志 OF(Overflow F la g):反映有符号数运算结果是否发生溢出。

20、若发生溢出,则O F=1;否则,0F=0o溢出是指运算结果超出了计算装置所能表示的数值范围。例如,对于字节运算,数值表示范围为T 2 8 +127;对于字运算,数值表示范围为-32768+32767。若超过上述范围,则发生了溢出。溢出是一种差错,系统应做相应的处理。例:指出80 x86CPU执行如下指令后,标志寄存器中各状态标志位的值:(1)M OV AX,32C5H(2)M OVAX,0E453HADDAX,546AHADDAX,0C572H解:0011001011000101(2)1110010001010011+0101010001101010+110001010111001010000

21、111001011111010100111000101所以,0F=l SF=1 ZF=O0F=0 SF=1 ZF=OAF=0 PF=0 CF=0AF=0 PF=1 CF=1控制标志(1)方向标志 D F(D irection F la g):用来控制串操作指令的执行。若D F=0,则串操作指令的地址自动增量修改,串数据的传送过程是从低地址到高地址的方向进行;若D F=1,则串操作指令的地址自动减量修改,串数据的传送过程是从高地址到低地址的方向进行。可以设置D F的指令为S T D (置1)和C L D (清0)。(2)中断标志 I F(I n te r r up t Fl a g):用来控制对

22、可屏蔽中断的响应。若I F=1,则允许C P U响应可屏蔽中断请求;若I F=0,则C P U不能对可屏蔽中断请求作出响应。可以设置I F的指令有S T I (置1)和C L I (置0)。I F对非屏蔽中断和内部中断不起作用。(3)陷阱标志 T F(T r a p F l a g):陷阱标志也称单步标志。当T F=1时,微处理器就进入单步工作方式,每执行完一条指令便自动产生一个内部中断(称为单步中断),转去执行一个中断服务程序,可以借助中断服务程序来检查每条指令的执行情况;若T F=0,则C P U正常(连续)执行指令。单步工作方式常用于程序的调试。3.物理地址与逻辑地址的概念在有地址变换机

23、构的计算机系统中,每个存储单元可以看成具有两种地址:物理地址和逻辑地址。物理地址是信息在存储器中实际存放的地址,它 是C P U访问存储器时实际输出的地址。逻辑地址是编程时所使用的地址。编程时不需要知道产生的代码或数据在存储器中的具体物理位置。这样可以简化存储资源的动态管理。在实模式下的软件结构中,逻辑地址由“段基值”和“偏移量”两部分构成。每个存储单元有惟一的物理地址,但它可以由不同的“段基值”和“偏移量”转换而来,这只要把段基值和偏移量改变为相应的值即可。同一个物理地址可以由不同的逻辑地址来构成。或者说,同一个物理地址与多个逻辑地址相对应。4.“段加偏移”的寻址机制“段基值”是段的起始地址

24、的高1 6位。“偏移量”(o f f s e t)也称偏移地址,它是所访问的存储单元距段的起始地址之间的字节距离。给定段基值和偏移量,就可以在存储器中寻址所访问的存储单元。在实模式下,“段基值”和“偏移量”均 是1 6位的。“段基值”由段寄存器C S、D S、S S、E S、F S和G S提供;“偏移量”由B X、B P、S P、S I、D I、I P或以这些寄存器的组合形式来提供。将段寄存器中的1 6位“段基值”左 移4位(低位补0),再 与1 6位 的“偏移量”相加,即可得到所访问存储单元的物理地址。上述由段基值(段寄存器的内容)和偏移量相结合的存储器寻址机制也称为“段加偏移”寻址机制,所

25、访问的存储单元的地址常被表示成“段基值:偏移量”的形工I 0默认的段和偏移寄存器段寄存器偏移地址寄存器主要用途C SI P指令地址S SS P 或 B P堆栈地址D SB X、D I、S I、8位 或1 6位数数据地址E S串操作指令的D I串操作目的地址5.堆栈的定义,堆栈的结构,堆栈的操作。堆栈定义堆栈是存储器中的一个特定的存储区,它的一端(栈底)是固定的,另一端(栈顶)是浮动的,信息的存入和取出都只能在浮动的一端进行,并且遵循后进先出(L a s tI n F ir s t O u t)的原则。堆栈的结构堆栈是在存储器中实现的,并由堆栈段寄存器S S和堆栈指针寄存器S P来定位。S S寄

26、存器中存放的是堆栈段的段基值,它确定了堆栈段的起始位置。S P寄存器中存放的是堆栈操作单元的偏移量,S P总是指向栈顶。这种结构的堆栈是所谓“向下生长的”,即栈底在堆栈的高地址端,当堆栈为空时S P就指向栈底。堆栈段的段基址(由S S寄存器确定)并不是栈底。堆栈的操作实模式下的堆栈为1 6位宽(字宽),堆栈操作指令(P U S H指令或P O P指令)对堆栈的操作总是以字为单位进行。要压栈(执 行P U S H指令)时,先 将S P的值减2,然后 将1 6位的信息压入新的栈顶。要弹栈(执 行P O P指令)时,先从当前栈顶取出1 6位的信息,然后将S P的值加2。可概括为:压栈时,先修改栈指针

27、后压入”,“弹栈时,先弹出后修改栈指针”。第4章寻址方式与指令系统1.寻址方式指出给定指令的源操作数及目的操作数的寻址方式;指出/比较给定寻址方式的特点。数据寻址方式(1)立即寻址(I m m e d ia t e a d d r e s s ing)M O V A L ,8 0 H指令中直接给出操作数,操作数紧跟在操作码之后,作为指令的一部分存放在代码段里,在取出指令的同时也就取出了操作数,立即有操作数可用,所以称之为立即寻址。立即数可以为8位,也可以为1 6位。如 果 是1 6位数,则“高位字节存放在高地址中,低位字节存放在低地址中。”立即寻址方式常用于给寄存器赋值,并且只能用于源操作数,

28、而不能用于目的操作数。(2)寄存器寻址(R e g is t e r a d d r e s s ing)M O V A X ,B X操作数在寄存器中,指令中指明寄存器号,这种寻址方式叫寄存器寻址。对 于8位操作数,寄存器可以是AH,AL,BH,BL,CH,CL,DH,DL。对于 16 位操作数,寄存器可以是 AX,BX,CX,DX,SI,DI,SP,BP,CS,DS,ES,SS(但C S不能作目的寄存器)。两个操作数不能都是段寄存器。操作数就在寄存器中,不需要访问存储器来取得操作数(指令执行时,操作就在CPU的内部进行),因而执行速度快;寄存器号比内存地址短。除以上两种寻址方式外,下面各种寻

29、址方式的操作数均在存储器中,通过采用不同的寻址方式取得操作数地址,从而取得操作数。(3)直 接 寻 址(Direct Addressing)MOV AX,DS:2000H在直接寻址方式中,指令中直接给出操作数的有效地址,或者说,有效地址EA就在指令中。它(操作数的有效地址,而不是操作数本身)存放在代码段中指令的操作码之后,但操作数一般存放在数据段中。规定双操作数指令不能两个操作数都用直接寻址方式。(4)寄存器间接寻址(Register indirect Addressing)MOV AX,BX采用寄存器间接寻址方式时,指令中给出寄存器号(寄存器为BX,BP,SI和DI之一),被指定的寄存器中存

30、放着操作数的有效地址,操作数在存储器中(以寄存器的内容为操作数的有效地址)。BX对应段寄存器为DS;BP SS;SI DS;DI DS。(5)寄存器相对寻址(Register relative addressing)MOV AX,SI+3000H操作数的有效地址是一个基址或变址寄存器的内容与指令中指定的8位 或16位位 移 量(Displacement)之和。这种寻址方式可用于表格的处理,通过位移量来设置表格的首地址,利用修改基址寄存器或变址寄存器的内容来获得表项的值。(6)基址变址寻址(Based indexed addressing)MOV AX,BX+DI操作数的有效地址是一个基址寄存器

31、和一个变址寄存器内容之和,两个寄存器均由指令指定。这种寻址方式同样适用于表格(或数组)的处理,表的首地址可存放在基址寄存器中,而用变址寄存器来访问表格中的各项。由于两个寄存器都可以修改,使用起来更灵活。(7)相对基址加变址寻址(R e l a t iv e b a s e d ind e xe d a d d r e s s)M O V A X,B X+S I+0 2 5 0 H 也 称“带位移量的基址加变址寻址方式”,操作数的有效地址是一个基址寄存器和一个变址寄存器内容与8位 或1 6位位移量之和。这种寻址方式可用于访问二维数组。设数组元素在内存中按行顺序存放(首先放第一行所有元素,再放第二

32、行所有元素,)。通过改变基址寄存器(如B X)和变址寄存器(如S D的值可以访问数组中不同行和列上的元素。转移地址的寻址方式(1)段内直接转移(直接近转移)J M P L转移地址(通常就是近标号)直接包含在汇编形式的转移指令中,转移指令的机器代码中存放的是该标号与当前I P值的差(标号-I P),此差称为位移量,该位移量与转移指令一起存于代码段:位移量被放在转移指令的操作码之后,也 是“高字节放在高地址单元,低字节放在低地址单元”。在取转移指令时,此位移量即作为转移指令的一部分被取入CP U中。执行转移指令时,将这个位移量加到I P上即可得到转移地址(标号的值),即I P+(标号T P)=标号

33、=转移地址。不必为找这个转移地址再去访问寄存器或存储器。(2)段内间接转移(间接近转移)寄存器操作数(也称寄存器寻址)J M P B X存储器操作数(也称存储器寻址)(i)直接寻址J M P W O RD P TR DS:2 0 其特征是:转移地址(偏移地址部分)在数据存储单元中,数据存储单元的地址在指令中直接给出。(i i)寄存器间接寻址J M P B X 其特征是:转移地址(偏移地址部分)在数据存储单元中,数据存储单元的偏移地址在 B X、B P、SI、DI 之一中。(i i i)寄存器相对寻址J M P B X+2 0 其特征是:转移地址(偏移地址部分)在数据存储单元中,数据存单元的偏移

34、地址是寄存器(B X、B P、SI、DI之一)的内容与位移量的和。(i v)基址变址寻址J M P B X+SI 其特征是:转移地址(偏移地址部分)在数据存储单元中,数据存储单元的偏移地址是基址寄存器(B X、B P之一)的内容和变址寄存器(SI、DI之一)的内容之和。(v)基址变址相对寻址J M P B X+SI+2 0 1其特征是:转移地址(偏移地址部分)在数据存储单元中,数据存储单元的偏移地址是基址寄存器(B X、B P之一)的内容、变址寄存器(SI、DI之一)的内容及位移量的和。(3)段间直接转移(直接远转移)J M P FA R P TR L转移地址(通常就是远标号)直接包含在汇编形

35、式的转移类指令中,也直接存放在转移类指令的机器代码中,它是转移类指令不可分割的一部分,位于转移类指令的操作码之后。高字存放转移地址的段基值部分,低字存放转移地址的偏移地址部分。在取转移类指令时,此段基值和偏移地址作为转移类指令的一部分被取入CP U中,执行转移类指令时,不必为找转移地址再去访问寄存器或存储器。(4)段间间接转移(间接远转移)J M P DW O RD P TR B X+SI+2 O 段间间接转移时的转移地址既包含偏移地址部分,又包含段基值部分,在数据存储器中占两个字:低字单元存放偏移地址,高字单元存放段基值。2.指令系统熟悉和掌握8086指令系统常用指令的格式与功能(通过编程或

36、阅读程序来体现);条件转移指令(P120);逻辑运算和移位指令;串操作指令(串传送指令M0VSB);XLAT指令;CMP指令;TEST指令。*十进制调整指令(DAA,DAS;AAA,AAS,AAM,AAD)0*指令的机器码格式。第5章汇编语言的基本语法练习1:根据下面的数据定义:O RG 1 0 HDA T1 DB 1 0 DUP(?)DA T2 EQ U 1 2 HDA T3 DW 5 6 H,$+1 0确定数据项$+1 0 的值。$:地址计数器的当前值;0 RG:指定下一个要用的存储单元的偏移地址。DA TA SEG M EN TTA B DW 1,2,3,4,5,6EN TRY EQ U

37、 3DA TA EN DSCO DE SEG M EN TA SSUM E CS:CO DE,DS:DA TAL:M O V A X,DA TAM O V DS,A XM O V B X,O FFSET TA BA DD B X,EN TRYM O V A X,EB X CO DE EN DSEN D L上述程序执行后,AX=:若定义DA T DD 1 2 3 4 5 6 7 8 H,则(DA T+1)字节单元的数据是()A.1 2 H B.3 4 H C.5 6 H D.7 8 H要求能够阅读和编写完整的汇编语言程序(DO S环境下),包括:数据段、堆栈段、代码段的定义;程序中能够判别有键按

38、下时退出当前程序并返回DOS(16H BIOS中断调用的1号功能,DOS功能调用的4cH号功能)第7章微处理器的内部结构及外部功能特性1.Pentium处理器的结构特点总线接口单元BIU(Bus Interface U nit)是微处理器与微机中其他部件进行连接与通信的物理界面。通过这个界面,实现微处理器与其他部件之间的数据信息、地址信息以及控制命令信号的传送。另外,BIU还有地址总线驱动、数据总线驱动、总线周期控制及总线仲裁等多项功能。Pentium处理器的外部数据总线宽度为6 4位,它与存储器之间的数据传输率可达5 2 8 M B/S。由 于P e nt iu m处理器内部的算术逻辑单元A

39、 L U(A rit hmat ic L og ic Unit)和寄存器的宽度仍是3 2位的,所以它仍属于3 2位微处理器。P e nt iu m处理器的地址总线位数为3 2位,即它的直接寻址物理地址空间为232=4GBO指 令C ac he与数据C ac he,可以使C P U在较低速的存储器件条件下获得较高速的存储器访问时间,并提高系统的性能价格比。P e nt iu m处理器中的C ac he设计与8 0 3 8 6和8 0 4 8 6有很大的不同,它采用哈佛结构。把C ac he分 为“指 令C ac he 和“数据C ac he”分别设置,从而避免仅仅设置统一 C ac he时发生存

40、储器访问冲突的现象。P e nt iu m包括两个8 K B的C ac he,一个 为8 K B的数据C ac he,一个为8 K B的指令C ac he o指 令C ac he只存储指令,而数据C ac he只存储指令所需的数据,这两个C ac he可以并行工作。在只有统一的高速缓存的微处理器(如8 0 4 8 6)中,一个数据密集的程序很快就会占满高速缓存,几乎没有空间用于指令缓存,这就降低了微处理器的执行速度。在P e nt iu m中就不会发生这种情况,因为它有单独的指令C ac he o转移目标缓冲器B TB (B ranc h Targ e t B u f f e r)动态预测程序

41、的转移操作。在程序执行时,若某条指令导致转移,便记忆下这条转移指令的地址及转移目标地址,并用这个信息来预测这条指令在此发生转移时的路径,预先从这里记录的“转移目标地址”处预取指令,以保证流水线的指令预取不会空置。指令预取器和预取缓冲器,指令预取器按给定的指令地址,从指令C ac he中顺序取出指令放入预取缓冲器中,直到在指令译码阶段遇到一条转移指令并预测它在指令执行阶段将发生转移时为止。指令译码器将预取来的指令译码,以确认该指令的操作。执行单元E U,以两个A LU为中心,完 成U、V流水线中两条指令的算术及逻辑运算。浮点处理单元F PU专门用来处理浮点数或进行浮点运算,也称浮点运算器。控制单

42、元C U的基本功能是控制整个微处理器按照一定的时序过程一步一步完成指令的操作。2.指令流水线的工作特点“超标量流水线”结构是Pe n t i u m处理器设计技术的核心。流水线(p i p e l i n e)方式是把一个重复的过程分解为若干子过程,每个子过程可以与其他子过程并行进行的工作方式。采用流水线技术设计的微处理器,把每条指令分为若干个顺序的操作(如取指、译码、执行等),每个操作分别由不同的处理部件(如取指部件、译码部件、执行部件等)来完成。这样构成的微处理器,可以同时处理多条指令。采用流水线技术,可以加快计算机执行程序的速度并提高处理部件的使用效率。Pe n t i u m处理器的流

43、水线由分别称为“U流水”和“V流水”的两条指令流水线构成(双流水线结构),其中每条流水线都拥有自己的地址生成逻辑、A LU及数据C a c h e接口。Pe n t i u m的每一条流水线也是分为五个阶段(5级流水):“指令预取”、“指令译码”、“地址生成”、“指令执行”和“回写”。Pe n t i u m处理器实现的是两条流水线的并行操作,而每条流水线由五个流水级构成。对于每个处理部件来说,每条指令的同类操作(如取指令)就像流水一样连续被加工处理。3.微处理器典型引脚的名称、功能、方向按功能的不同,可 将 这1 3 2个引脚信号分成4组:存储器/I 0接口、中断接口、D M A接口、协处理

44、器接口。名称功能方向有效电平C LK2系统时钟输入A3IA2地址总线输出BE3BEO字节允许输出0D3I-D数据总线输入/输出B S1 61 6位总线宽度输入0W/R写/读指示输出1/0D/C数据/控制指示输出1/0M/I O存储器/I 0指示输出1/0A D S地址状态输出0R E A D Y就绪输入0N A下一地址请求输入0LO C K总线封锁输出0I N TR中断请求输入1N M I非屏蔽中断请求输入1R E SE T系统复位输入1HO LD总线保持请求输入1HLD A总线保持响应输出1PE R E Q协处理器请求输入1B USY协处理器忙输入0E R R O R协处理器错输入0M/I

45、O 信号其功能是“存储器/I 0 指示”,用以告诉外部电路当前微处理器是在访问存储器还是I/O 接口;该信号的传送方向是输出,即它是由微处理器产生的输出信号;它的有效电平为1/0,其含义为,在这个信号线上的逻辑1 电平表明C P U 当前是在访问存储器,而逻辑0电平表明是在访问I/O 接口。I N T R 信号是可屏蔽中断请求输入信号,其有效电平是逻辑1。外部设备利用这个信号通知微处理器,它们需要得到服务。I N T R 输入是可屏蔽的,即它的操作可以通过微处理器内部的标志寄存器中的“中断标志位(I F)予以允许或禁止。N M I 信号非屏蔽中断N M I 输入,是不可屏蔽的中断输入。只要在N

46、 M I 引脚上出现0到 1的跳变,不管中断标志I F 的状态如何,一个中断服务请求总会被微处理器所接受。在执行完当前指令后,程序一定会转移到非屏蔽中断服务程序的入口处。地址和数据总线信号8 0 3 8 6 D X 的地址总线信号A 3 1-A 2 和数据总线信号D 3 1 D 0 被分别设定在不同的引脚上。两位地址码A 1 和A 0 被 8 0 3 8 6 D X 内部译码,产生字节允许信号B E 3,B E 2、B E 1 和 B E O,以控制在总线上传送字节、字或双字。地址总线是输出信号线。它们用于传送从C P U 到存储器或I/O 接口的地址信息。在实模式下,2 0 位地址给出了 8

47、 0 3 8 6 D X 寻址1 M(2 2 O)字节物理地址空间的能力;而在保护模式下,3 2 位地址可以寻址4 G(2 3 2)字节的物理地址空间。数据总线由3 2 条数据线D 3 1 D O 构成。由图7.6 及表7T可以看到,数据总线是双向的,即数据既可以由存储器或I/O 接口输入给C P U,也可以由C P U 输出给存储器或I/O 接口。在数据总线上传送数据的类型是对存储器读/写的数据或指令代码、对外部设备输入/输出的数据以及来自中断控制器的中断类型码等。字节允许字节允许(低电平有效)数据总线信号B E。D7-DB E tDl5DxB E2DZ3 D 1 6B E:;D31D24R

48、 E A D Y 信号R E A D Y 信号用于插入等待状态(T w)到当前总线周期中,以便通过增加时钟周期数使之得到扩展。通过将R E A D Y 信号变为逻辑0,存储器或I/O 接口可以告诉8 0 3 8 6D X 它们已经准备好,处理器可以完成数据传送操作。H O L D 信号当一个外部电路(如 D M A 控制器)希望掌握总线控制权时,它就通过将H O L D 输入信号变为逻辑1 来通知当前的总线主8 0 3 8 6 D X H L D A 信号8 0 3 8 6 D X 如果同意放弃总线控制权(未在执行带L O C K 前缀的指令),就在执行完当前总线周期后,使相关的总线输出信号全

49、部变为高阻态(第三态),并通过将HLD A 输出信号变到逻辑1电平来通知外部电路它已交出了总线控制权。8 0 3 8 6 D X 维持这种状态直至“总线保持请求”信号撤消(变为逻辑0),随之8 0 3 8 6D X 将“总线保持响应”信号也变为逻辑0,并重新收回总线控制权。*总线时序第8章I/O接口与DMA技术1 .两 种I/O端 口编址方式的优缺点统一编址,也称存储器映像的I/O (M em o r y M ap p ed I/O)方式这种编址方式的优点是,可以用访向存储器的指令来访问I/O端口,而访问存储器的指令功能比较强,不仅有一般的传送指令,还有算术、逻辑运算指令,以及各种移位、比较指

50、令等,并且可以实现直接对I/O端口内的数据进行处理。例如,若一个存储器映像的I/O端口地址为3 0 0 0 H,则可以直接用指令“A D D A L,D S:3 0 0 0 H”对端口的内容进行算术运算。缺点是:由于I/O端口占用了一部分存储器地址空间,因而使用户的存储地址空间相对减小;另外,由于利用访问存储器的指令来进行I/O操作,指令的长度通常比单独I/O指令要长,因而指令的执行时间也较长。分开编址,也 称I/O映像的I/O (I/O M ap p ed I/O)方式这种编址方式的优点是:第一,I/O端口不占用存储器地址,故不会减少用户的存储器地址空间;第二,单 独I/O指令的地址码较短,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com