第 1 页共 13 页 微机原理与接口技术 A 卷 一 填空题 ( 共计 20 分 每个空 2 分 ) 1 已知 [X] 补 =01100011B, 求 X=( ) ( 结果用十进制表示 ) [Y] 补 =11111001B, 求 Y=( ) ( 结果用十进制表示 ) 2 8088CPU 的地址总线为多少条 ( ); 直接寻址的内存空间为多少 ( ) 3 已知 DS=2000H, 内存 (20200H)=FFH,(20201H)=22H 指令 INC WORD PTR [0200H] 执行的结果是 :(20200H )= (20201H)= 4 8086 外部中断有 ( ) 和 ( ), 当 CPU 内的中断标志 IF= 0 状态时, 外部中断线同时为 1 状态时,CPU 响应哪个中断请求信号 ( ) 5 CPU 与外设数据传送的控制方式有无条件传送方式 ( ) ( ) 和 DMA 直接存储器传送方式 二 简答题 ( 共计 25 分 每小题 5 分 ) 1 什么是 I/O 接口?I/O 接口的主要功能有哪些?( 答出 3 点即可 ) 2 请叙述 INTR 中断过程 ( 答出 5 点 ) 3 有一 2764EPROM 芯片有 13 条地址总线, 请计算芯片的地址范围 ( 起始地址为 12000H) 请写出末地址 4 定时器 8253 计数器 0 输入时钟 1.19MHz,; 输出频率 500Hz, 并设定为二进制计数, 问 计数初值为多少? 计数器 1 产生连续的对称方波, 输入时钟为 2MHz 的时钟频率, 计 数初值为 4000, 并设定为 BCD 计数, 问输出的连续对称的周期是多少毫秒? 5 中断向量地址表的作用是什么? 已知中断类型码分别为 0EH 和 0FH, 它们的中断服务 程序的入口地址在中断向量地址表的地址是什么? ( 注意 : 写成 H: H 格式 ) 三 分析程序写出结果 ( 共计 15 分 ) 1 (3 分 ) TABLE DB 30H, 31H, 32H,33H, 34H ENTRY DB 3 MOV BX, OFFSET TABLE ADD BX,ENTRY MOV AL,[BX] ; 问 程序执行后 AL= 2 (6 分 ) 已知 DS=3000H, SS=4000H, BX=1200H, BP=1000H (31200H)=01H, (31201H)=02H, (41200H)=03H, (41201H)=04H 程序段如下 : MOV AX, 1200H ; 该指令的寻址方式 : ADD AX, [1200H] ; ADD AX, [BX] ; 请写出程序段执行后的结果 AX= 3 (6 分 ) 下列程序段求 FLD 开始的八个数据的平均值, 结果在 RES 中 请将程序填写完整 ( 不考虑溢出 ) DATA SEGMENT FLD DW 10,-20,30,-60,-71,80,79,56 RES DB?
第 2 页共 13 页 CODE SEGMENT ASSUME CS:CODE,DS:DATA MOV AX,DATA MOV DS,AX MOV CX,8 MOV AX,0 R1: ADD SI,2 DEC CX JNZ R1 MOV CL,8 IDIV CL MOV RES,AL ;RES 的偏移地址 = HLT CODE ENDS 四 汇编语言程序设计 ( 共计 40 分 第 1 2 3 题各 8 分, 第 4 题 16 分 ) 1 假设数据段定义如下 : DATA SEGMENT AA DB 0123456789 BB DB 10 DUP(?) DATA ENDS 请编写代码段将 AA 数据区中的字符串, 变为数据 0123456789 从左到右存储到 BB 数据区中 2 从 BUFFER 开始的单元中存放着 20 个有符号字节数, 要求找出其中的负数, 存入 MINE 开始的单元中, 并将负数个数存入 CNT 单元 3 请描述你设计的综合实验内容和思路 4 8088 微机系统的 I/O 接口电路如下图 : 请完成 : (1) 分析图, 写出 8255 8253 各端口的地址 ( 已知 A7A3=11111 =11111) (2) 编写 8255 的初始化程序 其中 8255 的 A 口为输出,B 口和 C 口为输入, 均工 作在方式 0 写出程序段即可 (3)8253 的 OUT1 输出 200HZ 的方波 ( 方式 3), 计数初值为多少? 如果按十进制计 数, 请编写 8253 的初始化程序 写出程序段即可
第 3 页共 13 页 微机原理与接口技术 B 卷 一 填空题 ( 共计 20 分,1 2 3 4 5 每个空 2 分,6 7 题每个空 1 分 ) 1 已知 [X] 补 =10110101B, 求 X=( ) ( 结果用十进制表示 ) [Y] 补 =01100111B, 求 Y=( ) ( 结果用十进制表示 ) 2 写出 8088 CPU 四个数据寄存器 ( ) 四个段寄存器( ) 3 请写出指令 INC WORD PTR [0200H] 的寻址方式 ( ) 4 8088 CPU 中若逻辑地址为 1E00:3800H, 则对应的物理地址为 ( ) 5 两片中断控制器 8259A, 若采用级连方式, 最多可以管理 ( ) 级中断 6 设堆栈指针 SP=2000H,AX=5060H,BX=1020H, 若执行下列指令段后 PUSH AX PUSH BX POP AX 则 SP=( ),AX=( ),BX=( ) 7 微机系统 I/O 接口的两种编址方式是 ( ) ( ), 8088 CPU 采用的是 ( ) 二 简答题 ( 共计 25 分 每小题 5 分 ) 6 什么是 I/O 接口?I/O 接口的主要功能有哪些? 7 8088 CPU 满足什么条件能够响应可屏蔽中断? 8 给 8088 CPU 配置 64KB 的 RAM 区, 采用 6264(8K*8), 需要多少片 6264? 多少根用 于片内寻址? 多少根用于片选寻址? 9 定时器 8253 计数器 1 输入时钟 1.19MHz, 计数器 1 产生 1000Hz 的连续方波信号, 并 设定为 BCD 计数, 问计数初值是多少? 输出的连续对称方波的周期是多少毫秒? 10 简述 8086 CPU 中 EU 和 BIU 的主要功能 在执行程序过程中它们是如何相互配合 工作的? 三 分析程序写出结果 ( 共计 15 分 ) 2 (3 分 ) TABLE DB 30H, 31H, 32H,33H, 34H ENTRY DB 3 MOV BX, OFFSET TABLE ADD BX,ENTRY MOV AL,[BX] ; 问 : 程序执行后 AL= 2 (6 分 ) 已知 DS=3000H, SS=4000H, BX=1200H, BP=1000H (31200H)=01H, (31201H)=02H, (41200H)=03H, (41201H)=04H 程序段如下 : MOV AX, 1200H ; 该指令的寻址方式 : ADD AX, [1200H] ; ADD AX, [BX] ; 请写出程序段执行后的结果 AX= 3 (6 分 ) 阅读下列程序, 写出程序运行结果
第 4 页共 13 页 DATA SEGMENT DATA1 DB ABCDEF CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV BX,OFFSET DATA1 MOV CX,6 NEXT:MOV AH,2 MOV AL,[BX] XCHG AL,DL INC BX INT 21H LOOP NEXT MOV AH,4CH INT 21H CODE ENDS END START ; 运行结果 : 四 汇编语言程序设计 ( 共计 40 分, 每题 10 分 ) 1 两个有符号双字长数分别放在 MEM1 和 MEM2 开始的单元, 求两数之和, 并把和值 放在 SUM 开始单元 请编写汇编语言源程序 2 利用查表法求 X=Y 3,Y 的立方表从 SQTAB 单元开始存放 (Y 均为 09 之间的数 ), 结果 X 存入 JG 单元中 请编写汇编语言源程序 3 填空补充完整下列程序 本程序的功能 : 用查询方式完成从外设输入 100 个字节数据到内存 已知条件 : 数据端口地址为 01H, 状态端口地址为 02H,D6 位为状态位, 若其状态 为 1 则表示 CPU 可输入数据进行读操作 ; 内存起始地址为 SHUJU DATA SEGMENT SHUJU DB 100 DUP(?) CODE SEGMENT ASSUME CS:CODE,DS:DATA MOV AX,DATA MOV DS,AX MOV BX,OFFSET SHUJU MOV CX,100 DOLL: IN AL,( ) AND AL,( ) ( ) IN AL,( )
第 5 页共 13 页 MOV [BX],AL INC BX LOOP ( ) HLT CODE ENDS END 4 8255A 的 A 口和 B 口工作在方式 0,A 口输入接 8 个开关,B 口接 8 个发光二极管, 请将开关状态由发光二极管来显示 ( 开关开, 对应发光二极管亮 ; 否则, 对应发光二极管 ) 端口地址 60H63H 要求 :1) 画出硬件连接电路 ; 2) 画出将开关状态显示在发光二极管上的程序框图 ; 3) 写出初始化程序
第 6 页共 13 页 微机原理与接口技术 C 卷 一 填空题 ( 共计 20 分 每个空 2 分 ) 1 微型计算机硬件系统的组成是 ( ) ( ) ( ) ( ) 2 8088CPU 的地址总线为多少条 ( ), 数据线为多少条 ( ), 直接寻 址的内存空间为多少 ( ) 3 已知 DS=2000H, 内存 (20200H)=11H,(20201H)=22H, 指令 MOV AX, [0200H] 的寻址方式是 ( ); 该指令的执行结果是 :AX= ( ) 4 已知逻辑地址为:1000H:2000H, 对应的物理地址为 :( ) 二 简答题 ( 共计 40 分 每小题 5 分 ) 11 么是 I/O 接口?I/O 接口的主要功能有哪些? 12 请描述你所做接口实验中的一个实验内容及用流程图描述编程思路 13 中断向量地址表的作用是什么? 已知 8259 中断控制器的 IRQ7 的中断类型码为 0FH, 它们的中断服务程序的入口地址在中断向量地址表的地址是什么? ( 注意 : 写 成逻辑地址格式 ) 14 8088 外部中断有 INTR 和 NMI, 描述二者的主要区别 15 如图 1 所示, 请回答以下问题 : 通常半导体存储器芯片的存储容量如何表示? 图中 存储器芯片的容量是多少? 地址范围是多少? 采用了何种译码方式?, 该译码方式的 主要特点 16 请写出微型计算机中, 主机与外设之间数据输入输出的控制方式 17 8259 中断控制器的主要功能是什么? 请以外部中断为例简述中断处理的一般过 程 18 8088/8086 CPU 段寄存器的作用是什么? 并写出各段寄存器名
第 7 页共 13 页 8088 系统 BUS D 0 D 0 D 7 A 0 D 7 A 0 A 12 MEMW MEMR A 19 + 5V & A 12 WE CS 2 OE A 18 CS 1 A 17 A 16 A 15 1 A 14 1 A 13 1 图 1 8088CPU 与某存储器芯片连接简图 三 分析程序写出结果 ( 共计 10 分, 每小题 5 分 ) 1 DSEG SEGMENT DATA1 DW 0A566H DATA2 DW 26D1H SUM DW 2 DUP(?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, DS:DSEG START: MOV AX, DSEG MOV DS, AX LEA SI, SUM MOV AX, DATA1 ADD AX, DATA2 MOV [SI], AX MOV AH,4CH INT 21H CSEG ENDS END START 请写出程序执行后 SUM 的偏移地址 =? SUM 单元的内容 =?
第 8 页共 13 页 2 DATA SEGMENT DATA1 DB 12345678 DATA2 DB 6 DUP(?) CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV BX,OFFSET DATA1 MOV DI,OFFSET DATA2 MOV CX,8 NEXT: MOV AL,[BX] AND AL,0FH MOV [DI],AL INC BX INC DI LOOP NEXT MOV AH,4CH INT 21H CODE ENDS END START 写出程序运行结果 : 该程序完成的功能 : 四 汇编语言程序设计 ( 共计 30 分 ) 1 假设数据段定义如下 :( 共 10 分 ) DATA SEGMENT MEM1 DB 0123456789 MEM2 DB 10 DUP(?) 请编写代码段将 MEM1 数据区中的字符串, 从左到右传送到 MEM2 数据区中 2 从 BUFFER 开始的单元中存放着 10 个有符号字节数, 要求找到其中最小的一个数放到 MAX 单元中 ( 写出汇编语言段结构的源程序 ) ( 共 10 分 ) 3 8088 微机系统的 I/O 接口电路如下图 : 请完成 : ( 共 10 分 ) (1) 分析下图, 写出 8255 各端口的地址 ( 设地址线 A15A10=111111)
第 9 页共 13 页 (2) 写出 8255 初始化的程序 要求 8255 的 A 口为输出,B 口和 C 口为输入, 均工 作在方式 0 D 0 D 0 PA 0 系统总线信号 D 7 RESET IOR IOW A 1 A 0 A 9 A 8 A 7 A 6 AEN A 5 A 4 A 3 A 2 & 1 G G2B G2A C B A Y 0 D 7 RESET RD WR A 1 A 0 CS 8255 PA 7 PC 0 PC 7 PB 0 PB 7 8255 方式控制字
第 10 页共 13 页 微机原理与接口技术 D 卷 一 读程序写结果及简答题 ( 共 20 分 ) 1. 阅读下列程序请回答 :(6 分 ) (1) 该程序采取了什么结构形式? (2) 程序的执行结果在哪个存储单元? 值是多少? DATA SEGMENT TABLE: DB 12H,01H,02H,11H,26H SUM: DW? CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA SI,TABLE MOV CX,5 XOR AX,AX NEXT: ADD AL,[SI] ADC AH,0 INC SI LOOP NEXT MOV SUM,AX HLT CODE ENDS END START 2. 说出下列程序段汇编后, 各标号的值是多少?(4 分 ) ORG 1000H STRN DB AB STRN= BTAB DB 10H, 20H, 70H,50H BTAB= WORR DW 100 WORK= BLOK EQU 1050H BLOK= 3. 以外部中断为例简述 CPU 中断处理的一般过程 (5 分 ) 4. 设 SS=4000H,SP=1000H,AX=7F6CH,BX=F603H,DX=8531H, 执行下列程序段后, AX=,BX=,CX=,DX=,SP= (5 分 ) PUSH AX PUSH BX PUSH DX POP AX POP CX
第 11 页共 13 页 MOV DX,24FFH POP DX 二 单项选择题 ( 每选 1 分, 共 9 分 ) 1. 在微机中负数常采用哪种机器数表示?( ) A: 原码 B:BCD 码 C: 反码 D: 补码 2. 对于有 20 条地址线的 CPU, 其最大可直接寻址空间是 ( ) A:1MB B:32KB C:256KB D:64KB 3. 在字长为 16 位的微机中其有符号数的表示范围 ( ) A:0 65536 B:8000H7FFFH C:-128 +127 D:-256 +256 4. ADC CX,[BX][SI] 指令源操作数的寻址方式是 :(1)( ) MOV [SI],AX 指令的目的操作数寻址方式是 :(2)( ) (1)A: 寄存器寻址 B: 寄存器间接寻址 C: 基址 - 变址寻址 (2)A: 立即寻址 B: 寄存器间接寻址 C: 直接寻址 5. 并行接口芯片 8255 的端口 A 可以工作的方式是 :( ) A: 方式 0, 方式 1, 方式 2 B: 方式 0, 方式 1 C: 方式 2 6.I/O 端口是指 ( ) A:CPU 与外设之后间的接口电路 ; B: 外设接口电路中寄存数据 命令和状态信息的不同寄存器 ; 7. 中断向量表是 ( ) A: 存放中断类型号的特定存储区 B: 存放中断向量的特定存储区 8.8086/8088 中数据定义伪指令有 ( ) A:DB DQ DT B:DB DW DD DQ C:DB DW DD DQ DT D: DD DQ DT 三 填空 ( 每空 1 分, 共 14 分 ) 1. 求 86.625D= ( )B=( )H=( )BCD 2. 已知机器数为 :[Y] 补 =11110101B, 求其真值 : Y=( )D 3.8086/8088CPU 外部中断请求信号分为 ( ) 和 ( ); 单片中断 控制器 8259 可管理 ( ) 个中断源 4. 指令 ADD AL,[BX+0100H] 源操作数的寻址方式为 ( ) 5.8088 的 ( ) 信号接低电平, 使 CPU 工作在最大方式 6. 若 CS=0100H,IP=2000H, 则该指令在代码段的物理地址为 ( )H ; 若 DS=3000H, 执行 MOV AX,[2000H] 指令, 则该指令的源操作数在 ( ) 段的物理地 址为 ( )H 7.8086 的一个总线周期包含 ( ) 个 T 周期, 若时钟频率为 5MHZ, 则一个总线周期 时间是 ( ) 四 存储器 ( 共 12 分 第 1 2 小题 3 分, 第 3 小题 6 分 ) 下图是一个以 8088 CPU 为核心的应用系统原理连接图, 分析后回答下列问题 : ⒈ 分别说明 8255 8253 8295 是什么接口芯片? ⒉ 8088CPU 分配给 8255 8253 8295 接口芯片的端口地址各是多少? ⒊ 根据原理连接图, 请你设计 8255 8253 8295 各自的工作方式, 并简述三者之间的
工作过程 第 12 页共 13 页 8088 A7 A2 A1 A0 D7 D0 INTR 地址译码器 D7-D0 D0 INT IR7 60H63H 63H 40H43H 43H 20H-21H 21H A0 CS 8255 CS A1 PA0 A0 PA7 +5V D7-D0 D0 显示器 D7-D0 D0 A1 GATE2 +5V A0 CLK2 CS OUT2 KK+ 8259 8253 80 五 汇编语言源程序设计 ( 共 45 分 ) 1. 填空补充完整下列程序 ( 10 分 ) 本程序的功能 : 用查询方式完成从外设输入 100 个字节数据到内存 已知条件 : 数据端口地址为 01H, 状态端口地址为 02H,D6 位为状态位, 若其状态 为 1 则表示 CPU 可输入数据进行读操作 ; 内存起始地址为 SHUJU DATA SEGMENT SHUJU DB 100 DUP(?) CODE SEGMENT ASSUME CS:CODE,DS:DATA MOV AX,DATA MOV DS,AX MOV BX,OFFSET SHUJU MOV CX,100 DOLL: IN AL,( ) AND AL,( ) ( ) IN AL,( ) MOV [BX],AL INC BX LOOP ( ) HLT CODE ENDS END
第 13 页共 13 页 2. 利用查表法求 X=Y 2, 设 Y 存储在 DATA1 单元中 ( 均为 015 之间的数 ), 结果 X 存入 RESULT 单元中, 平方表从 SQTAB 单元开始存放 (12 分 ) 3. 从 DATA1 单元开始存储着 100 个有符号数, 请编程序统计出正数 负数的个数, 分别存入 PLUS MINE 存储单元中 (13 分 ) 4. 从 DATA1 单元开始存储着 3 个有符号数, 请编程序将最大和最小的数分别存入 MAX 和 MINE 单元中 (10 分 )