微机原理与接口技术期末总复习要点.doc_第1页
微机原理与接口技术期末总复习要点.doc_第2页
微机原理与接口技术期末总复习要点.doc_第3页
微机原理与接口技术期末总复习要点.doc_第4页
微机原理与接口技术期末总复习要点.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1。微型计算机系统组成:CPU.存储器,输入/输出接口, 输入输出设备,总线,微型计算 机软件2. 8086,,1根数据总线,20根地址总线,20位地址可寻址 1MB。3. 3种线,微机系统利用3组总线,即数据总线DB、地址总 线AB和控制总线CB 总线概念:微型计算机系统采用总线结构,将5大部件连 接起来。各部件之间传送信息的公共通道,称为(BUS)4.8086与8088区别: 1.8086的指令队列是6字节长,而8088的指令 为4字长;2.8086是真正的16位机,同BIU相连的8086总 线中数据总线是16位总线,而8088是准 16位机,同BIU相 连的8088总线中数据总线为8位总线。5. 8086,8088的功能结构:其内部由两个独立的功能部件构成,分别为总线接口部件BIU,和指令执行部件EU,BIU主要功能是负责完成CPU与存储器或I/O设备之间的数据传送,EU主要功能是执行指令6.8086/8088寄存器结构: 一、数据寄存器 数据寄存器包括4个16位的寄存器AX、BX、CX和DX,主要用来存放16位的数据或地址。同时每个数据寄存器又可分成两个8位寄存器,即AH、AL、BH、BL、CH、CL、DH和DL,用来存放8位数据。 数据寄存器用于存放指令操作数。在一些指令中,某些寄存器具有特定的用途:如AX作累加器;BX作基址寄存器;CX在串操作指令中用作计数器;DX在字乘法、除法指令中存放乘积高位或被除数高位或余数,在某些I/O操作期间用来保存I/O端口地址等。二、指针寄存器和变址寄存器 指针寄存器和变址寄存器是4个16位寄存器。堆栈指针SP(stack point)和基址指针BP(basic point)称为指针寄存器,用来指示当前堆栈段中的数据所在的偏移地址。源变址寄存器SI(source index)和目的变址寄存器DI(destination index)称为变址寄存器,用来表示当前数据段中操作数的索引地址(偏移地址的一部分)。指令指针(此段重点,细读)IP(instruction pointer)指令指针是一个16位寄存器,用来存放将要执行的下一条指令在当前代码段中的偏移地址。在程序运行过程中,BIU可修改IP中的内容,IP总是指向下一条待取的指令。IP和CS一起指定下一条指令的物理地址,物理地址=CS16+IP控制寄存器组(此段重点,细读)8086/8088 CPU中设置了一个16位标志寄存器FLAG,用来存放运算结果的特征和控制标志,具体格式见书图所示。16位标志寄存器FLAG中只用其中9位作标志位,其余位为无效位。9个标志位可分成两类:一类叫状态标志位,用来表示算术逻辑运算结果的特征,包括CF、PF、AF、ZF、SF和OF;另一类叫控制标志位,用来控制CPU的操作,由程序设置或清除,它们是IF、DF和TF。段寄存器组在8086/8088系统中采用分段技术把1MB的存储空间分成若干个逻辑段,每段最长为64KB,这些逻辑段可以在整个存储空间中定位,用段寄存器给定各个逻辑段的首地址的高16位,这个地址被称作段基址。1.代码段寄存器CS用来存放当前程序所在的代码段的段基址, 代码段中通常存放可执行的指令代码。2.数据段寄存器DS用来存放程序当前使用的数据段的段基址。3.附加段寄存器ES用来存放程序当前使用的附加段的段基址,数据段和附加段通常存放参加运算的操作数或运算结果。4.堆栈段SS则用来存放当前使用的堆栈段的段基址,一些临时性的数据被保存在堆栈中7.(隐含默认) 1)当取指令时,8086会自动选择CS值作为段基址,再加上由IP提供的偏移量形成物理地址。2)当涉及堆栈操作时,8086会自动选择SS 值作为段基址,再加上由SP提供的偏移量形成物理地址。3)当涉及一个操作数(存储器操作数)时,8086会自动选择DS值为段基值( 若以BP为基地址,则SS为段基值),再加上16位偏移量形成物理地址,这16位偏移量可以来自:指令中提供的直接地址16位的位移量 ;某一个16位地址寄存器的值;指令中的位移量加上16位地址寄存器的值8.8086 CPU构成的微机系统,有最小模式和最大模式两种系统配置。 1.最小模式 当MN/MX接电源电压时,系统工作于最小模式,即单处理器系统方式。所有控制信号均由CPU直接提供。 2.最大模式 当MN/MX接地,系统就工作于最大模式。 最大模式与最小模式系统的主要区别是系统中增设了一个总线控制器8288和一个总线仲裁器8289,这样可构成以8086/8088 CPU为中心 的,还包含其他微处理器9.8086/8088的基本总线周期由4个时钟周期T组成,称为T1,T2,T3,和T4状态10.8086/8088的通用指令格式 要求计算机执行的各种操作以命令形式写下来,就称为指令。通常一条指令对应着一些基本操作,例如加、减、传送和移位等。机器语 言指令以二进制代码组成。一条指令是由操作码与操作数字段构成,其一般格式为 操作码字段+操作数 字段其中,操作码字段指明计算机所要执行的操作(即功能);操作数字段指出在指令执行过程中所需要的操作数。 例如:ADD AX, BX 对有操作数的指令,在执行指令所规定的操作之前首先要寻找操作数。指令中的操作数字段实质上是指出参加操作运算的操作数存放在何 处。一般来说,操作数存放在指令代码中,称为立即数;操作数存放在CPU寄存器中,称为寄存器操作数;操作数存放在内存单元中,称 为存储器操作数; 操作数也可存放在I/O端口内。寻找这些操作数的方式称为寻址方式,即指令中用于说明操作数或操作数所在地址的方 法11.在正常情况下,由寻址方式中有效地址规定的基地址寄存器来确定段寄存器,即只有在寻址方式中出现了BP寄存器作为基地址,段寄存 器一定采用堆栈段SS段寄存器,其余情况都采用数据段DS段寄存器。12.直接寻址方式(direct addressing) 特点:指 令中直接给出操作数在段内的偏移量,段基址隐含给出或用段前缀指明。 该寻址方式适用于处理单个变量。一般操作数存放在数据 段,故操作数的物理地址为物理地址=(DS) 16D+ EA =(段基址的寄存器) 16 + 偏移地址 【例3.4】已 知(DS)=4000H,42000H=3355H。 MOV AX,2000H执行后:(AX)=3355H。物理地址=40000H +2000H=42000H,EA=2000H。说明:1) 有效地址(EA)在指令中直接给出。指令中默认段寄存器说明,段基址在DS段寄存器中;否 则在指令中需对段寄存器加以说明。例如: MOV AX,ES:2500H2) 可用符号地址代替数值地址,例如: MOV AX,VALUE此时,VALUE 为存放操作数单元的符号地址,即变量名,也可写成 MOV AX,VALUE;两者等价 (2) 寄存器间接寻址方式(register indirect addressing)特点:操作数有效地址在基址寄存器BX、BP、SI、DI中,而操作数则在 存储器中。它适用于表格处理,执行完一条指令后,只需修改寄存器内容就可取出表格中的下一项元素。说明:1) 指令中的有效地 址EA存放在BX、SI、DI寄存器中,则操作数在数据段中,即操作数的 物理地址为 物理地址=16D(DS)+(BX)/(SI)/(DI) 2) 若有效地址存放在BP寄存器,则操作数在堆栈段中,即操作数物理地址为 物理地址=(SS)16D+( BP)3) 可使用段跨越前缀 来取得其他段中的数据,例如: MOV AX,ES:BX 注意: MOV AX,BX; ( AX) (BX)与上面的 MOV AX,BX含义不同。例3.5】已知(DS)=1000H,(BX)=0A00H, (10A00H)=33H,(10A01H )=44H。 MOV AX ,BX 物理地址=10000H+0A00H=10A00H。 执行后:(AX)=4433H。(3)寄存器相对寻址方式 (register relative addressing)特点:操作数的有效地址是一个基址寄存器或变址寄存器的内容和指令中指定的8位或16位位移 量(即偏移量)之和。 适用于表格处理,修改基址或变址寄存器的内容来取得表格中的元素。一般形式为 物理地址=16D(DS)+ +8位位移 量或16位位移量 (注:以BX、SI、DI作为基址) 物理地址=(SS)16D+(BP)+8位位移量或16位位移量( 注:以BP作为基址)【例3.6】已知(DS)=2000H,(SI)=50H,其中DISP为16位位移量的符号地址,其值DISP=1000H,(21050H)=88H,(21051H)=66H。 MOV AX,DISPSI 或 NOV AX,DISP+SI 物理地址=20000+1000H+50H=21050H。 执行后:(AX)=6688H。 该寻址方式可使用段跨越前缀,例如: MOV DL,ES:STRINGSI (4) 基址变址寻址方式(based indexed addressing)特点:操作数的有效地址是一个基址寄存器与一个变址寄存器内容之和。 物理地址=(DS)16D+(BX)+物理地址=(SS)16D+(BP)+ 例3.7】已知(DS)=3000H,(BX)=1100H,(SI)=0050H, (1150H)=78H,(31151H)=56H。MOV AX,BXSI或MOV AX,BX+SI物理地址=30000H+1100H+0050H=31150H。执行 后:(AX)=5678H。(5)相对基址变址寻址方式(relative based indexed addressing) 特点:操作数有效地址是一个基 址寄存器与一个变址寄存器的内容之和再加上8位或16位位移量。同样,当基址寄存器为BX时,使用DS为段寄存器;而当基址寄存器为BP 时,则使用SS为段寄存器。因此,物理地址为物理地址=(DS)16D+(BX)+BI/DI+8位/16位位移量 物理地址=(SS)16D+(BP)+BI/DI+8位/16位位移量【例3.8】已知(DS)=5000H,(BX)=3000H,(SI)=2000H,BUFF=0350H,(55350H)=88H, (55351H)=66H。MOV AX,BUFFSIBX或MOV AX,BUFFBXSI或MOV AX,BUFF+SI+BX这条指令的 3种写法是一样的,汇编程序都能识别。物理地址=50000H+3000+2000+0350=55350H。执行后:(AX)=6688H。该寻址方式为堆 栈和多重表格处理提供了方便,无段跨越前缀。一般BP可指向栈顶,从栈顶到数组的首地址可用偏移量表示,变址寄存器可以用来访问 数组中的某个元素12.伪指令语句 是非执行语句,不生成机器目标代码,不产生程序操作,仅为汇编程序提供有关信息并控制其执行,在汇编过程中负责对指令语句的翻 译、数据定义、存储空间分配、程序段界定、源程序汇编结束等服务性的管理13. 数据段定义伪指令 格式:DATA名字 功能:定义一个数据段,默认段名为DATA,定位类型为WORD,连接类型为PUBLIC,类别名为DATA。14.采用存储器分级体系结构,通常将存储器分为高速缓冲存储器(快存)、主存和外存3级15.存储器的地址译码被分为片选控制译码和片内地址译码两部分。其中,片选控制译码电路对高位地址进行译码后产生存储芯片的片选信 号;片内地址译码电路对低位地址译码实现片内存储单元的寻址。接口电路中主要完成片选控制译码以及低位地址总线的连接16 接口的作用 1.数据格式转换 2.数据缓冲功能 3.信号转换功能 4.译码选址 5.提供联络信号 6.具备时序控制 7.可编程功能 8.错误检测功能17 端口:所谓端口,是指接口电路中能被CPU直接访问的寄存器的地址 端口地址编址方式:对上述端口有两种编址方式:一种是端口地址和存储器地址统一编址,即存储器映射方式;另一种是I/O 端口 地址和存储器地址分开独立编址,即I/O映射方式18 主存储器接口:EPROM与CPU的接口 SRAM与CPU的接口 DRAM与CPU的接口19 CPU与I/O设备之间传输数据的控制方式一般有3种,即程序控制方式、直接存储器存取方式和专用I/O处理机方式20 响应中断条件不同。硬中断中的可屏蔽中断,因为是可屏蔽的,所以只有在开中断时,才能响应,故需执行开中断指令 STI,才能进入中断服务程序。而软中断和NMI都是不可屏蔽的,因此不需执行开中断指令STI。21 中断基本概念 1.中断源: 发出中断请求的外部设备或引发中断的原因(事件)称为中断源。中断源有:1)外设中断,如外设请求以中断方式与 交换数据。2)硬件故障中断,如电源掉电引起中断。3)指令中断,如执行INT 21H指令引起的中断。4)程序性中断, 如由于程序员的疏忽或算法上的差错,使程序在运行中出现错误而引起的中断 22 .1,中断向量 实模式下,中断服务程序的入口地址(中断服务程序首地址)就是中断向量。由于中断服务程序是预先设计好并存 放 在程序存储区,因此,中断服务程序的入口地址,由两部分组成:服务程序的段基址CS(2字节)和服务程序的偏移地址IP(2字节 )。2,中断向量表 把系统中所有的中断向量集中起来放到存储器的某一区域内,这个中断向量的存储区就叫中断向量表和中断服 务程序 入口地址表。实模式下,规定把存储器的00003FFH共1024个地址单元作为中断向量存储区,每个中断向量的4个字节在中 断向量表 的存放规律是向量的偏移量(IP)放在两个低字节单元中,向量的基址(CS)放在两个高字节单元中, 3,中断类型号 中断类型号,简称中断号,是分配给中断系统中每个中断源的代号 4,2.中断向量指针 中断向量指针是指向存放中断服务入口地址第一字节的地址,在实方式下,因中断向量表首地址为0, 所以中断向量指针=中断类型号(N)4。(考点:中断向量与中断向量表与中断类型号三者关系)23. Intel 8259A是与8080/8085系列以及80x86系列兼容的(可编程的中断控制器。) 此处有计算题:由8255级联,求可连外设个数24.8253有3个独立的16位减1计数器,每个计数器有6种工作方式,能进行二进制或二十进制计数或定时操作25.控制字如何设定(看书上185页)(考试会给控制字格式)26.8253的6钟工作方式的作用(书上185页)27.8253会编程(书上191页)28.8237A在DMA传送时有4种工作方式。(1)单字节传送方式 (2)块传送方式 3)请求传送方式 (4)级联方式29. 【关于方式0的例题】【例】 某系统采用8255A不断检测8个开关K7 K0的通/断状态,实时在发光二极管LED7 LED0上显示其结果。开关闭合时,相应的LED亮;开关断开时,相应的LED灭。如图6.5所示。请编写程序段实现之。解题分析:8255A的端口地址范围:208H20BH。方式字:A口输入;B口输出。无需联络信号,仅需进行基本的输入/输出操作,故A、B口均工作在方式0。方式字为:10010000B = 90H。题意实现:开关闭合时,A口相应位输入低电平,要使其LED点亮,则B口相应位也要输出低电平。MOV DX,20BH;控制端口 MOV AL,90H;方式字 OUT DX,AL;初始化 TES: MOVDX,208H;A口地址 INAL,DX;读A口状态MOVDX,209H;B口地址OUTDX,AL;将A口状态送入B口显示JMPTES;循环检测【例】 如图电路,若要求8个发光二极管L0 L7 依次点亮,请问:8255A的A端口应工作在什么方式下?给出初始化程序段。编制程序实现题目要求解题分析:A端口应工作在方式0,输出。初始化程序段:MOV DX,183H ;控制端口MOV AL,80H ;方式字(80H 8FH)OUT DX,AL题目实现。 MOV DX,180HSTART : MOV AL, 0FEH L1: OUT DX, AL SHL AL, 1 ;逻辑左移 JNC START JMP L1例要求:用8255A的A口控制发光二极管点亮。(设端口地址为40H43H)分析:按要求应使A组工作于方式0,A口为输出,其他口任意。并使A口各位输出高电平使发光二极管点亮。程序如下: MOV AL , 10000000B(80H) OUT 43H , AL MOV AL , 0FFH OUT 40H , AL例 要求:当开关闭合时使指示灯全亮,开关断开时使指示灯全灭。MOV AL , 10001000B(88H) OUT 43H , ALAGAIN : IN AL , 42H TEST AL , 80H JZ NEXT MOV AL , 0FFH OUT 40H , AL JMP AGAIN NEXT : MOV AL , 0H OUT 40H , AL JMP AGAIN例:如下图,利用8255A控制8个指示灯。当开关K闭合时,使各个指示灯以间隔1秒的速度轮流点亮;开关K断开时,所有指示灯均灭。写出相应的控制程序(延时1秒可以调用DELAY1S子程序,设8255端口地址为60H63H)分析:1、端口A、B可工作于方式0,A口输入、B口输出2、使用循环结构完成程序如下: mov bl , 0feh mov al , 10010000B out 63h , alagain: in al , 60h test al , 04h jnz next mov al , bl out 61h , al call delay1s rol bl , 1 jmp again next: mov al , 0ffh out 61h , al例:如下图,利用8255A控制2个指示灯。当开关K1闭合时,指示灯L1点亮,开关K1断开时,指示灯L1灭;当开关K2闭合时,指示灯L2点亮,开关K2断开时,指示灯L2灭。写出相应的控制程序(设8255A端口地址为60H63H)分析: 按要求得知A口为方式0输入,B为方式0输出。当Ki闭合时,PAi=0;当Ki断开时,PAi=1。当PBi输出0时,Li亮,否则,Li灭。 8255的工作方式字为:10010000B=90H编程如下: MOV DX,0FFDBH MOV AL,90H OUT DX,AL MOV DX,0FFD8HTEST: IN AL,DX AND AL,06H MOV DX,0FFD9H OUT DX,AL JMP TEST在如图所示电路中:(1)分析写出8255A各端口地址;(2)对8255A编程实现当开关断开时指示灯全灭,开关闭合时指示灯全亮。(1)A口:188H,B口:189H; C口:18AH,控制口:18BH(2)控制字为:10010000B(或90H) MOV AL,90 MOV DX,18BH OUT DX,AL MOV DX,188H IN AL,DX XOR AL,AL MOV DX,189H OUT DX,AL30:会识别端口地址31.发收时钟脉冲与波特率之间的关系:Txc=Baudfactor(会计算)假如在异步串行通信中,传送一个字符,包括12位(其中有1个起始位,8个数据位,1个偶校验位,2个停止位),其传输速率是1200b/s,那么,每秒所能传送的字符数是1200/(1812)100个。32. 由于键盘通常排列成矩阵格式,因此可以用硬件或软件的方法对行,列分别进行扫描,去查找按动着的键。常用的方法有行反转法(通过行列颠倒两次来识别闭合键),行扫描法(通过程序对键盘进行逐行扫描)33. DA与AD原理DA转换器用于将数字量转换成模拟量,它的输入量是数字量D,输出为模拟量VO。要求输出量与输入量成正比,即 V O=DVR将输入的每一位数字量转换为与其权相应的模拟量,各位对应的模拟量相加则得到DA转换器的输出,模拟输出与数字量输入成正比。一般DA转换器都是根据这一原理设计的。A/D转换的方法很多,下面介绍常用的A/D转换原理。 1.计数式 这种A/D转换原理最简单直观,它由DA转换器、计数器和比较器组成,如图12.13所示。工作时,计数器由零开始计数,将其计数值送往DA转换器进行转换,将生成的模拟信号与输入模拟信号在比较器内进行比较,若前者小于后者,则计数值加1,重复DA转换及比较过程。因为计数值是递增的,所以DA输出的模拟信号是一个逐步增加的量,当这个信号值与输出模拟量比较相等时(在允许的误差范围内),比较器输出一个停止计数信号给计数器,计数器立即停止计数。此时DA转换器输出的模拟量就为模拟输入值,计数器的值就是转换成的相应的数字量值。 这种A/D转换器结构简单、原理清楚,但它的转换速度与精度之间存在着严重矛盾。即若要转换速度高,则转换器输出与输入的误差就大,反之亦然。所以在实际中很少使用它34.会5个引脚连接方式DACO832双缓冲工作方式接口框图 用 DACO832产生各种波形的硬件连接图35.DAC0832有以下3种数据输入方式。 1.双缓冲方式 2.单缓冲方式 3.直通方式36. 直通方式下如何产生锯齿波,方波,三角波 1.锯齿波 MOVDX,OFFFEH;8255A控制口地址 MOVAL,82HOUTDX,AL;设置8255A 口 A为方式0 输出 MOVDX,OFFF8H;8255A口A地址 MOVAL, 00H;输出数据初值 J: OUTDX,AL ;锯齿波输出 INCAL JMPJ 这段程序将输出到DAC0832的数据从0开始逐渐增加,增至最大后,再恢复到0,重复此过程,得到的波形为正向锯齿波。如数据从全1逐渐减小到0,则输出负向锯齿波 2. 三角波 利用正、负向锯齿波组合,可产生三角波。 MOVDX,OFFFEH;8255A控制口地址 MOVAL,82HOUTDX,ALS:MOVDX,0FFF8H;8255A端口A地址 MOVAL,00H;正向初值 Z:OUTDX,AL INCAL JNZZ MOVAL,0FFH;负向初值 F: OUTDX,AL DECAL JNZF JMPS 3.方波MOVDX,0FFFEH;8255A控制口地址 MOVAL,82HOUTDX,ALMOVDX,0FFF8H;8255A端口A地址AGAIN:MOVAL,00HOUTDX,AL;输出方波“0” CALLDELAY;方波宽度 MOVAL,0FFH OUTDX,AL;输出方波“1” CALLDELAY;方波宽度 JMPAGAIN 其中,DELAY为一延时子程序,根据所需的方波宽度设置延时时间。36. 会利用给定芯片设计一定容量的存储器会连接框图(见书130页3,。接口举例和132页3.接口举例)37. 8086/8088指令系统(见书65页至81页)38. 与数据有关的寻址方式立即寻址方式【例3.1】MOV AL,20;(A) 20MOV AX,1234H ;(AX) 1234HMOV 250H,AX ;(错误的,立即数不能作目的操作数)20和1234H为立即数,立即数可以是二进制、十进制、十六进制。【例3.2】MOV AL, BUFFER在汇编语言中,可以用符号BUFFER代替常数,但是BUFFER必须用伪指令EQU来赋值2. 寄存器寻址方式【例3.3】 已知(BX)=1234H。 MOV AX,BX ;(AX)(BX)执行后(AX)=12一般操作数存放在数据段,故操作数的物理地址为物理地址=(DS) 16D+ EA =(段基址的寄存器) 16 + 偏移地址34H,(BX)不变3. 存储器操作数寻址【例3.4】已知(DS)=4000H,42000H=3355H。 MOV AX,2000H执行后:(AX)=3355H。物理地址=

温馨提示

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

评论

0/150

提交评论