1、1微机原理与接口技术期末复习提纲适用:09 级计算机应用一、基础部分1什么是逻辑地址?什么是物理地址:如何由逻辑地址推算物理地址?(P32)答:物理地址:完成存储器单元或 I/O 端口的实际地址成为物理地址,CPU 型号不同其物理地址也不同。物理地址是指 CPU 和存储器进行数据交换时实际所用的地址,而逻辑地址是程序使用的地址。物理地址由两部分组成:段基址和偏移地址。前者由段寄存器给出,后者是指存储单元所在的位置离段起始地址的偏移距离。当 CPU 寻址某个存储单元时,先将段寄存器的内容左移 4 位,然后加上指令中提供的 16 位偏移地址而形成 20 位物理地址。在取指令时,CPU 自动选址代码
2、段寄存器 cs,左移 4 位后,机上指令提供的 16 位偏移地址,计算出要取指令的的物理地址。堆栈操作时,CPU 自动选择短暂段寄存器 SS,将其内容左移 4 位后,加上指令提供的 16 位偏移地址,计算出栈顶单元的物理地址。每当存取操作时,CPU 会自动选择数据段寄存器,将段基值左移 4 位后加上 16 位偏移地址,得到操作数在内存的物理地址。2. 根据教材图 2.2 说明 8086 微处理器由哪两大部分组成,在编程结构分析中说明各寄存器的作用,位数及名称,根据各寄存器及总线(内) 作用,阐明微处理器执行指令的过程。 (举例说明)附加:8086CPU 的寄存器结构8086CPU 共有可编程器
3、 14 个 16 位寄存器,按用途分为三类:通用寄存器、段寄存器、指针和标志寄存器,如下图所示:答:8086 微处理器由:总线接口单元 BIU(Bus Interface Unit)和执行单元EU(Execution Unit)组成。1、 4 个 16 段寄存器:分别各段的起始地址。CS 、DS、SS、ES2、 16 位指令指针 IP:用来存放下一条要执行的指令,它具有自动加一的功能。23、 通用寄存器,即可以作 16 位数据寄存器使用,也可作 2 个 8 位数据寄存器使用。AL、 BL、CL、DL 、AH、BH 、CH 、DH.4、 16 位的标志寄存器 FLAGS:控制标志位,用来反映 C
4、PU 运算的状态特征和存放某些控制标志。5、 4 个地址指针和变址寄存器:堆栈指针 SP 用于指出在堆栈段中当前栈顶的地址; 基址指针 BP 指出要处理的数据在堆栈中的基地址;变址寄存器 SI 和 DI 用来存放当前数据段中某个单元的偏移量。3. 在 CPU 中的标志寄存器有六位状态标志,即 SF、ZF、PF 、CF、AF 和 OF,请分别说明其意义?控制标志有哪三个?其含义是什么?(DF、IF 和 TF)答:1、SF 符号标志位,它和运算结果的最高位相同。2、ZF 零标志位,若当前的运算结果为 0,则 ZF=1,否则 ZF=0.3、PF 奇偶标志位,反映运算结果中 1 的个数是奇数还是偶数。
5、当指令执行结果低 8 位中的 1 为偶数时, ,PF=1 ,否则 PF=0。4、CF 进位标志位,当一个加法或减法运算,使最高位产生进位或借位时,CF=1 ,否则 CF=0.5、AF 辅助进位标志位, ,当执行一个加法或减法运算的时候,使结果的低 4 位向高四位有进位时,AF=1,否则 AF=0.6、OF 溢出标志位,当补码运算有溢出时,OF=1 ,否则 OF=0.控制标志有:DF、IF 、TF.1、 DF 方向标志位,用于指定字符串处理时的方向,当该位置“1”时,字符串以递减顺序处理,即地址以从高到低递减。反之,则以递增顺序处理。2、 IF 中断允许标志位,控制 8086 是否允许接收外部中
6、断请求。若 IF=1,8086 相应外部中断,反之不响应外部中断3、 TF 跟踪标志位,为调试程序而设定的陷阱控制位。当该位置为 1 时,8086CPU 能处于单步状态,此时 CPU 每执行完一条指令就自动产生一次内部中断。当该位复位后,CPU 恢复正常的工作。4. 8086 总线周期序列图(请参考课件) ,说明 TW 和 T1、T2、T3、T4 状态的概念?(P162)5. 什么是 8086 的最大模式和最小模式?请说明 8086CPU 最小模式下引脚控制信号的作用及其含义?即/S7, ,HOLD,HLDA, , , ,ALE, , ,READYBHEMXN/ IOM/RDT/ENITAES
7、,NMI,INTR 等引脚的物理意义。(P153)6. 应用教材 P163、P164 和 P166 时序图,分析 8086 的复位读写操作过程。( 只说明最小模式下的情况)7. 什么是总线,简述微机总线的分类。(P168)38. 什么是 I/O 接口,CPU 如何访问 I/O 接口?(P212)9. CPU 与外设之间数据传送方式有哪四种?举例说明信号定义及传送过程?(P219)10. 请按教材 P283 图 10.1 分析说明并行接口的输入/输出过程。11. 并行接口芯片的内部结构由哪几大部分组成?说明其功能?(P289)12. 请按图 10.8(P291)和图 10.9(P292)说明 8
8、255A 工作方式控制字和 C 口按位置位/复位控制字是如何设置?( 举例说明)13. 8255A 有哪三种工作方式?请说明方式 0,方式 1 的工作特点?(P292)14. 按教材 P292 方式 0 的应用编程实例,分析 8255A 工作于方式 0 时,初始化程序如何编写?15. 试说明 8255A 引脚控制信号 、 、 、A0、A1 的物理意义,它们是如何设计电平信号CSRDW决定传输动作过程的?16. 试说明 8255A 在方式 1 输入输出时的工作过程。17. 复习汇编语言的各种指令,会解释程序。二、可编程并行 I/O 接口 8255A(一)概念部分.用框图分析说明 I/O 并行接口
9、的概念,种类及功能?.用并行接口连接外设示意图分析并行数据输入和输出过程?.并行接口芯片 8255A 的内部结构由哪几大部分组成,说明每个部件的作用和特点。.请指出 8255A 引脚信号中控制信号端 CS#、A0 和 A1,RD#和 WR#,RESET 的中文名称和控制作用以及 A.B.C 三个端口引脚信号及如何分为 A.B 两组。.根据读/写操作控制表选择确定 A.B.C 的端口的输入(读)和输出( 写)操作过程.(P88).用 8255A 工作方式控制字格式和 PC 口复位/置控制字格式,说明什么是 8255A 的工作方式与 PC口复位/置控制字设置方法和初始化编程的概念?.8255A 有
10、哪三种工作方式?是如何定义的?请指出工作方式中 PC 口联络中:STBA#,IBFA,INTRB,OBFA ,ACKA#的中文名称,相对应的 PC 口的引线位及控制作用?(8).请说明“INTREA”的中文名称及控制作用?为什么 INTRA(INTRB)只有 PC6 位置位才能产生中断请求信号INTRA=1?(二).控制字设置和程序阅读部分. 下面是一段 8255A 初始化程序段,阅读后填空:MOV DX,0A83H; 内部控制寄存器地址送 DX 0000101010000011MOV AL, 80H; 方式控制字 10000000OUT DX, ALMOV AL,08H; PC4 置 0;O
11、UT DX,AL;MOV AL,0FH; PC7 置 1OUT DX,AL;48255A 控制端口地址为 (OA83H),工作于方式( 0 ),A 口为输( 出 ),B 口为输( 出 ),PC0PC3 设置为输 ( 出 ),PC4PC7 设置为输( 入 );设置 C 口的 PC4 位置 0 控制字为 08H,表示 PC4 的代码为( 100 );PC7 置位控制字 0FH,其中 ( 111 ) 为 PC7 的代码, ( 1 )表示置位。.下面是 8255A 的 PC 口置位/复位初始化程序段请在每语句后注解 .MOV AL,OH ; ( PC7 置 0 控制字送给 AL )OUT 3H,AL;
12、 ( 完成 PC7 置 0 操作 )MOV AL,0H; ( pc6 置 1 控制字给 AL )OUT 3H,AL ( 完成 PC6 置零操作 .方式控制字为,请回答:) ,组各工作于哪种方式?1 0101 110) ,口各工作于输入还是输出?)口的工作于何种状态?.请阅读下列程序段后回答问题下图为 8255A 与外设打印机接口连接电路。 8255A 工作在方式 1 输出,假设输出打印 1KB 数据,内存偏移首地址 2000H,设端端口地址为 300H303H 采用查询方式交换数据,相应程序如下。相应程序段为MOV DX,303H ;8255A 命令口MOV AL,0A0H ;8255A 方式
13、OUT DX, AL ; MOV AL,0DH ;设置中断允许位 INTEA(PC6)为“1”OUT DX, ALMOV SI,2000H ;内存首地址;MOV CX,0400H ;发送字节数MOV DX,300H ;向 8255A 的 A 口写第一个数MOV AL, SI ;从内存取数,送数 到 A 口,产生第一个 信号送给对方AOBF5OUT DX,AL ;以便获取对方的 信号,才能产生 INTRA=1ACKINC SI ;内存地址加 1DEC CX ;字节数减 1L: MOV DX,302H ;8255A 的 C 口地址IN AL,DX AND AL,08H ;查是否发中断请求 INTR
14、A=1JZ L ;无则等待,有则向 A 口送数MOV DX,300H ;8255A 的 A 口地址MOV AL,SI ;从内存取数OUT DX,AL ;送数到 A 口INC SI ;内存地址加 1LOOP L ;未完,继续HALT ;已完,停止请回答下列问题:. 8255A 由原 A 口改为 B 口输出,仍然工作方式 1,其方式控制字为何?. 其相应的联络线为 B 端口状态。即 (相应 C 口的 PC1) , (相应 C 口的 PC2) ,BOFBAKINTRB(相应 C 口的 PC0) ,其口的置位复位如何设计?. A、B、C 及控制寄存器的端口改为 04000403H,其相应语句作如何改动
15、?. 内存数据段的首地址为 4000H(偏移地址)。.字符的字节数改为 255 个,相应 16 进制 FFH。指出改动相应语句?编程题) 若设工作于方式,输入;工作于方式,输出;1 0111 000口的高位()输入;口的低位输出,请设计初始化程序段。) 请设置口的和分别置,和分别置三、可编程计数/定时器 8253(一)概念部分1. 在微机应用系统中,定时/ 计数是如何定义,定时分为哪两种, 它们在应用系统中主要起什么作用?2. 根据 8253 内部结构图和计数通道结构图,请说明内部六个模块的名称,作用和特点;每个计数通道中三个寄存器的名称作用和特点,并指出计数通道中三个信号 CLK,OUT 及
16、 GATE 名称作用及工作原理。3. 8253 读写操作的五个信号端 CS,RD,WR,A1,A2 作用及 3 个通道控制端口地址是如何决定的?4. 定时/计数初值的计算公式及在编程中是如何规定的?65. 8253 的控制字格式内容如何,它有哪六种工作方式,它们的工作原理和特点如何?(二).控制字设置和程序阅读部分1.程序阅读:阅读下列某应用系统中 8253 初始化程序段,.填空、在语句后注解说明或回答问题.(1). MOV AL,34H 00 11 010 0OUT 43H,ALMOV AL,N1OUT 41H.AL MOV AL,N2OUT 41H,ALA. 工作在(计算器 0)通道,工作
17、方式为( 2 ),计数初值低 8 位为( n1 ),高 8 位为( n2 ),控制端口地址( 41H-43H ),计数制采用( 2 进制 );B. 在相应语句后注解其用途.(2).某应用系统中,8253 端口地址为 8083H,T 2 工作于方式 0,计数初值为 0433H,采用 BCD 码计数其初始化程序如下:MOV AL,0A0H;OUT 82H,AL;MOV AL, 04H;OUT 83H,AL;MOV AL, 33H;OUT AL,AL请指出程序段中语句的错误,按要求设置正确语句填在错误语句后面;( 3) 若某应用系统中,用 8253 定时,其控制字设计为 92H,请回答工作于哪个计数
18、通道,哪种工作方式,计数制是哪一种,计数初值是低 8 位字节,还是双字节?(4). 请根据下列波形图回答问题:计数初值为多少?在图中指出工作启动从哪里开始?其启动门控信号 GATE 是高电平还是低电平,定时时间内输出 OUT 是高电平还是低电平,定时结束时输出的脉冲信口时宽为几个时钟周期?2.控制字设置及编程题:(1). 某微机应用系统中,8253 工作于计数通道 T0,CLK 时钟频率为 1.5MHZ,输出信号 OUT 频率7为 3KHZ 的方波信号,其端口地址为 40H43H,采用 BCD 码计数,请:1).按 8253 方式控制字格设置控制字 ;2).计算计数初值 N,3).编写初始化程
19、序段;(2).设 8253 的 T0 工作于方式 1,BCD 码计数,初值为 3000H;T1 为方式 2,初值为 2010H,二进制计数;T2 设置为方式 4,计数初值为 4030H,BCD 码计数,通道地址为 40H43H 请编写初始化程序段.(3).若将 8253 设置为分频器即频率发生器,CLK 的频率为 1MHZ,其输出频率为 1HZ;请设计 8253计数通道联接电路,编写初始化程序段。通道地址为 40H43H。四.可编程串行通信接口 8251A(一)概念部分1. 串行通信中,其传输方式有哪两种,异步通信协议的特点及异步通信字符传输帧格式定义如何?2. 请解释名词半双工、全双工、波特
20、率、发送 /接收时钟频率,说明波特率与发送/接收时钟频率的关系公式及波特率因子 n 的选择方法.3. 由 8251A 的内部结构图说明由哪五部分组成,它们的作用及相互之间的作用如何?4. 请说明发送器和接收器中符号 TXD,TXRDY,TXC,RXD,RXRDY,RXC 名称及作用.5. 8251A 方式控制字、命令控制字和状态控制字格式容具体如何定义?其控制字端口和数据端口是如何规定?6. RS-232C 接口标准是如何规定?MAX-232 有什么和 RS-232C 不同?7. 对 8251A 进行初始化编程时,必须遵守哪些约定?(二).控制字设置和程序阅读部分1. 程序阅读题:请根据下列控
21、制字和程序段填空、回答问题或画图.(1) 若 8251A 方式控制字为 7AH,则通信方式为( )方式,传输信号帧格式中停止位为( )位,( )校验, ( )位数据位,波特率因子为( ).(2) 若 8251A 操作命令控制字为 37H,请回答:A允许发送和接收吗? B.允许内部复位? C.数据终端准备好了吗? D. 请求发送吗?(3) 阅读下列 8251A 初始程序段后填空:MOV AL,40H;OUT 51H,AL ; 内部复位命令控制字MOV AL,0FAH; 选择控制字OUT 51H,AL ;MOV AL,37H; 操作命令控制字OUT 51H,AL ;操作命令控制字 40H 表示 8
22、251A 处于( )复位,控制端口地址为( ) ,传输信号帧格式中,传输方式为( )方式,停止位为( )位, ( )校验,字符长度为( )8位,波特率因子 n 为( ) 。(4).阅读下列 8251A 初始化数据程序段后回答问题 :MOV AL,7BH; 写工作方式控制字OUT 51H,AL;MOV AL,14H; 写操作命令控制字OUT 51H,AL;LP: IN AL,DX ; 读状态控制字AND AL,02H 检查 RXRDY 是否为 1JZ LPMOV DL,50H;IN AL,DL1) 数据口地址和控制/状态寄存器端口地址各为何?2) 允许接收和发送吗?3) 指出采用查询方式的语句,
23、并分析查寻方式的原理?4) 说明方式选择控制字 14H 中设置的各项内容的含意?2.控制字设置及编程题. (1) 要求 8251A 定义为异步传送方式,波特率因子 n 为 64,采用偶校验,1.5 位停止位,7 位数据位,设端口地址为 50H51H,内部复位,操作命令字设为 I4H,请编写初始化程序段, 若波特率为19200bps,则每秒钟能传输多少个字符?(2) 某微机系统中,应用 8251A 工作于异步方式,7 位数字,不带校验,2 位停止位,波特率因子为64,允许发送也允许接收,清除状态寄存器的出错标志位,使 RTS 和 DTR 为有效电平。若 8251A 的端口地址为 A0H,A1H,
24、试编写初始化程序。若波特率为 1200Bps,则每秒钟能传输多少个字符?要求:1.须列出设置控制字的设计过程,2.初始化程序段应包含方式控制字和命令控制字两部分。五8259可编程中断控制器(一)概念部分1. 用中断方式结构示意图理解:中断,中断源,断点,中断服务程序,中断向量,入口地址,中断返回,主程序和子程序,中断请求,中断响应以及断点保护等名词。2. 什么是可屏蔽中断和非屏蔽中断?什么是可屏蔽中断源中断优先权?如何确定和识别中断优先权?(程序查询式和利用中断向量表法) 。3. 什么是内部和外部中断?中断向量表中“类型号”是什么含意,如何利用中断类型号求中断向量表中首地址以及中断向量在内存中
25、地址(指求段 CS 和 IP 地址)。4. 8259A 内部结构图中,请指出 IRR,ISR,PR,IMR(OCW 1)以及初始化命令寄存器组及操作命令寄存器组 OW1OCW3 的中文名称、特点及控制作用。95. 8259A 的控制信号 A0 的地址选择线作用和 信号是如何决定端口地址的?CS6. 8259可编程中断控制器的中断响应过程。7. 8259A 可接收外部中断源 8 路,它们是如何按 IR0IR7 实行编号?请指出控制信号端:INT,INTA#,SP#/EN#,CAS 0,CAS 1 和 CAS2 的作用。8. 根据 ICW1ICW2 初始化命令控制字和 OCW1OCW2 操作控制命
26、令字的格式,举例说明设置方法?根据 ICW1ICW4 初始化命令写入顺序流程图分析时必须严格顺序进行写入的工作过程?9. 8259A 的中断操作工作方式有哪七大类型?每种类型包括哪些工作方式?请说明:普通屏蔽方式、电平触发和边沿触发方式、普通嵌套方式、自动结束和特殊结束方式、缓冲方式和非缓冲方式的特点及作用?(二).控制字设置和程序阅读部分程序阅读和控制字分析)若初始化命令字:请指出其触发方式哪一种?是单片还是多片?)下面是 8259的一段初始化程序阅读后填空MOV AL,13H ; 初始化命令字 ICW1 的设置OUT 20H,AL ; MOV AL,08H ; 设置中断类型号OUT 2H,AL ; MOV AL,09H ; 设置初始化命令字 ICW4OUT 2H,AL ;8259工作于( )系统,触发方式为( ) ,为( )片,中断类型号为( ) ,控制端口地址为( ) 简单编程题) 采用电平触发,单片使用,需要,请编写的指命段;) ,在某系列中断系统中,中断类型码为高位为,硬盘中断请求线接在的上,请写出中断类型码,并编出中断类型码的程序段?