一、填空(每空1分,在答题纸上注明画线部分的标号,而不是题目的标号) 1.在8086/8088中,一个最基本的总线周期由 【1】 个时钟周期(T状态)组成,在T1状态,CPU往总线发出 【2】 信息。 2.8088/8086的复位信号至少要维持 【3】 个时钟周期。 3.8086CPU经加电复位后,执行第一条指令的物理地址是 【4】 。 4.在8086最小模式下,执行\" OUT DX, AL \"指令时,M/IO,WR ,RD,DT/R的信号电平依次为 【5】 , 【6】 , 【7】 , 【8】 。 5.假设某个总线周期内对READY信号检测的次数是4次,则该总线周期需插入 【9】 个Tw等待状态。 6.设M/IO,WR ,RD,在某时刻分别为1、1和0,此时CPU进行的操作是 【10】 ,其中,ALE信号是在第 【11】 个T状态出现,数据信号在第 【12】 个T状态出现。 7.在微型计算机中使用 【13】 来区分不同的外部设备。 8.一台微机的CPU,其晶振的主振频率为4MHz,二分频后作为CPU的时钟频率。如果该CPU的一个总线周期含有四个时钟周期,那么此总线周期是 【14】 10.执行下列程序: MOV MOV MOV A1: ADD INC LOOP HLT AX, 0 BX, 2 CX, 10 AX, BX BX A1 s。 9.设(SP)=0200H,(SS)=1000H,执行PUSH BP指令后,栈顶的物理地址是 【15】 。 INC BX 执行后的结果为 (BX)= 【16】 ,(AX)= 【17】 DATA SEGMENT A B C DW 0 DW 0 DW 230, 20, 54 11.下列程序运行后,A单元的内容为 【18】 ,B单元的内容为 【19】 ,(BX)= 【20】 。 DATA CODE ENDS SEGMENT CS: CODE, DS: DATA DS AX, AX AX AX, DATA DS, AX BX, OFFSET C ASSUME: START PROC FAR PUSH XOR PUSH MOV MOV MOV MOV MOV MOV ADD MOV RET ENDS END AX, [BX] B, AX AX, 2[BX];;;;;20 AX, B A, AX START ENDP CODE START 12.执行下列三条指令后,AX寄存器的内容是 【21】0101 。 MOV ADD AAA 若将第3条语句由AAA改为DAA,则AX寄存器的内容是 【22】 0011 。 13.使用汇编语言定义的伪操作命令是: VAL DB 40 DUP(3, 4, 2 DUP(1, 2 DUP(3)), 4) 3,4,1,3,3, 1,3,3,4, 3,4,1,3,3, 1,3,3,4 3,4,1,3,3, 1,3,3,4 3,4,1,3,3, 1,3,3,4 3,4,1,3,3, 1,3,3,4 则在VAL存储区内前5个字节单元的数据是 【23】 ,后5个字节单元的数据是 【24】 。 14.对于下列程序段: AGAIN: MOV AL, [SI] MOV ES:[DI], AL INC SI INC DI LOOP AGAIN 也可用串指令 【25】 完成同样的功能。rep movsb 15.试写出3条将AX寄存器清零的不同的指令: 【26】 , 【27】 , 【28】 。 16. 设CF=0,(AL)=0F2H,CX=3,执行RCL AL, CL指令后,CF的内容为 【29】 ,AL的内容为 【30】 。 17.以下程序的执行结果后(AX)= 【31】 ,(BX)= 【32】 ,(CX)= 【33】 。 A B C DB ‘1234’ DW 4 DUP(2,3 DUP(0)); ,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0 DW ‘AB’,’C’,’D’ AL, TYPE B BL, LENGTH B AX, 4 AL, 7 ;000b---11 MOV MOV MOV AH, SIZE A MOV MOV MOV BH, SIZE C CL, TYPE CH, SIZE A B 18.假设(DS)=1000H,(SS)=2000H, (BP)=0100H,(DI)=0200H,(10200H)=11H,(10201H)=12H,(10300H)=33H,(10301H)=53H,(20200H)=34H,(20201H)=38H,(20300H)=77H,(20301H)=76H,执行指令LEA DX, [BP][DI]后,(DX)= 【34】 ,执行指令MOV DX, [BP][DI]后,(DX)= 【35】 。 19.8086/8088最多能处理 【36】 种中断。 20.8259A最多允许 【37】 级级联,三片8259A可管理的中断源最多为 【38】 个。 21.8259A有两种结束中断的方式,分别为 【39】 和 【40】 。 22.PC机采用向量中断方式处理8级外中断,中断号依次为08H~0FH,在RAM 0:28H单元开始依次存放20H, FFH, 50H, C0H四个字节,该向量对应的中断号和中断程序入口是 【41】 。 23.一般一片8259A占用两个I/O端口地址,对8259A初始化写入ICW2和ICW3时,应写入8259A的A0= 【42】 的口地址。 24.要查看CPU是否正在执行8259A的中断服务程序,应查看8259A的 【43】 寄存器。 25.8086/8088的中断优先权的顺序为内部中断、 【44】 、 【45】 、单步中断。 26.中断请求寄存器IRR的功能是 【46】 。 27.在微机系统中,设8259A已被编程ICW2=08H,当一个外设由8259A的IR4输入端提出中断请求时,它的中断类型码是 【47】 。 28.现行PC机的CPU的引脚中,接有硬中断的引脚数有 【48】 。 29.在一个微机系统中,若8259A只开放IR1和IR4引脚的中断源,而将其余中断源屏蔽,则中断屏蔽寄存器IMR应设置为 【49】 。 30.若256KB的SRAM具有8条数据线,则它具有 【50】 条地址线。 31.若用1片74LS138、1片6116RAM(2K×8)及2片2732EPROM(4K×8)组成存储器电路,则存储器的总容量是 【51】 ,其中,CPU运行的程序代码应存放在 【52】 存储器中。 32.若由2K×1位的RAM芯片组成一个容量为8K字(16位)的存储器时,需要该芯片数为 【53】 。 33.存储器地址译码有两种方式,分别为 【54】 和 【55】 。 二、简答题 (15分) 1,2题必做,3,4题任选一题 1.8086CPU的EU和BIU的中文名称是什么?试叙述其主要功能。 2.结合8086CPU时序分别简述A158086CPU的硬件中断NMI和8253A320HINTR的响应过程。 M/IOCSCLK1MHzA03.什么是单译码和双译码,各有08086A2A1OUT04KHz方波什么特点? A1A04.只读存储器ROM有哪些种类,D7D7CLK1各有什么特点? …………三、(15分)某IBM-PC/XTINTRD0D0OUT1GATE0GATE1……IR08259AINTVCC图1 第三题电路图应用系统接有一片8253,利用通道0输出频率为4KHz的方波,利用通道1完成对外部事件计数,计满500次向CPU发出中断申请,硬件电路如图1所示。 要求: 1.写出8253控制寄存器的地址 2.设置8253通道0的控制字(二进制形式)和计数值 3.设置8253通道1的控制字(二进制形式)和计数值 4.编写8253初始化程序 四、(15分)已知打印机(图2)工作顺序(过程)如下所示: 1) 数据与STB信号一起送入打印机,STB相当于启动信号,启动打印机DB打印机接受数据; STB2) 打印机处理数据,这时BUSY为高,表示“忙”,ACK为高,表BUSY示打印机输入缓冲器还未接收好数据; ACK3) ACK为低,打印机输入缓冲器接收好数据,但由于打印机内部机械动作较慢,此时数据还未打印好,故BUSY为1,表示“忙”。 图2 打印机接口说明4) 打印机打印好数据,BUSY为低,且ACK为低,应答主机。 已知有一系统如图3所示,CPU经8255与打印机连接,图中8255地址为50H~53H,要求连续打印从BUF缓冲区开始的100个字符。程序的数据段、堆栈段定义如下: DATA SEGMENT 打印机PA7~PA0DB BUF DB 100 DUP('A') PC0STBDATA ENDS CPUPC6BUSYSTACK SEGMENT STACK DB 100 DUP('S') 8255STACK ENDS 图3 第四题电路图试回答: 1) 8255的端口A是以什么方式工作的?端口C呢? 2) 如果对8255进行初始化,分别写出其控制寄存器的地址和控制字。 3) 编写程序完成上述打印任务,程序应包括对8255的初始化及完整的打印过程,同时语句后要有必要的注释说明。 一、填空(每空1分,在答题纸上注明画线部分的标号,而不是题目的标号) 1.【1】4 【2】地址 2.【3】4 3.【4】ffff0H 4.【5】0 ,【6】0 ,【7】1,【8】1 5.【9】3 6.【10】存储器读, 【11】 1 【12】 3 7.【13】 地址 8.【14】 2 9.【15】101FEH 10.【16】 22 ,【17】 110 11.【18】 250 【19】 230 【20】 0004H 12.【21】0101H 【22】 0011H 13.【23】 3,4,1,3,3 , 【24】3,1,3,3,4 14.【25】 REP MOVSB
15. 【26】 , 【27】 , 【28】
MOV AX, 0 AND AX, 0 XOR AX , AX SUB AX, AX 16. 【29】 1 ,【30】 93H 17.【31】0102H ,【32】0204H,【33】 0801H
18.(DX)= 【34】 0300H , (DX)= 【35】 7677H 19.【36】 256 20.【37】 2 【38】 22 21.【39】 【40】 答案:自动结束 非自动结束 22.【41】 0AH C050:FF20H 23.【42】 1 24.【43】 ISR 在服务寄存器 25.【44】 NMI 【45】 INTR 26.【46】 指示有中断源向CPU申请中断 27.【47】 0CH 28.【48】 2 29.【49】12H 11101101 30.【50】18 31.【51】10KB 【52】 EPROM(2732) 32.【53】64片 33.【54】【55】 单译码 双译码 二、简答题(15分)(3,4题选作一题)
1.8086CPU的EU和BIU的中文名称是什么?试叙述其主要功能。 答案:
1)EU: 执行部件,负责指令的执行;
2)BIU:总线接口部件,负责与存储器和I/O设备传送数据。
2.结合8086CPU时序分别简述8086CPU的硬件中断NMI和INTR的响应过程。 答案:
1)NMI为CPU内部中断,当NMI引脚上有上升沿(正脉冲)信号时,CPU内部自动形成中断类型码2,进入相应的中断响应。即没有专门的中断响应周期。
2)当INTR引脚上有高电平信号且被CPU采样到后,CPU首先检查是否IF=1,若IF=1,CPU则在当前指令执行完后进入中断响应,CPU从INTA管脚连续发两个负脉冲,第一个中断响应周期通知外设CPU接受中断申请,外设在第二个中断响应周期时将所申请中断的中断源的中断类型码送上CPU的低8位数据总线供CPU读取。
3.什么是单译码和双译码,各有什么特点?
4.只读存储器ROM有哪些种类,各有什么特点? 三、(15分)
1)8253控制寄存器地址 0010 0110 26H 或 106H(因为题目没有给清楚) //2分 2)通道0控制字:0 0 1 1 0 1 1 1 37H 写入先低后高,方式3,BCD码 //2分 计数值:1M/4K=1000/4=250 //2分
或 00 01 011 0 16H,只写低位,方式3,二进制形式
3)通道1控制字:0 1 1 0 0 0 0 1 61H 只写入高位,方式BCD码 //2分 计数值 500 //2分
4) 初始化程序://5分(只要通道地址是偶数就给分)
MOV AL, 37H
OUT 26H, AL ; 写入通道0控制字 MOV AL, 61H
OUT 26H, AL ;写入通道1控制字 MOV AL, 50H
OUT 20H, AL ; 写入通道0低字节 MOV AL, 02H
OUT 20H, AL; 写入通道0高字节 MOV AL, 05H
OUT 22H, AL ; 写入通道1高字节 四、(15分)
1) 方式0输出 C口高四位是方式0输入,低四位是方式0输出 //4分 2)控制寄存器地址:53H 控制字:1 00 0 1 x x 0 88H //4分 3) 程序:
MOV AL, 88H ; 控制字
OUT 53H, AL ; 送控制寄存器
MOV AL, 01H; 设置PC0为1(不启动打印机) OUT 53H, AL ; 送控制寄存器
LEA SI, BUF ; 指针指向BUF缓冲区
MOV CX, 100 ; 设置循环次数 。以上为初始化程序 //4分 L: IN AL, 52H ; 读C口
AND AL, 40H ; 判断PC6口
JNZ L ; 忙,等待
MOV AL, [SI] ; 不忙,发送数据至A口
OUT 50H, AL
MOV AL, 00H ; PC0置0,启动打印机 OUT 53H, AL ;
CALL delay ;延时,等待打印机处理数据 MOV AL, 01H ; PC0置1 OUT 83H, AL
INC SI ;指针指向下一个字符 DEC CX ; 循环减少一次 JNZ L ; 继续判断发送 HLT ;结束 //3分