《微机原理》模拟试题三
一、填空题
1、将十进制数27985转换成十六进制数、八进制数、二进制数及BCD码数分别为:________H,________Q,_____B, BCD。
2、字长为8位的二进制数10010100B,若它表示无符号数,或原码数,或补码数,则该数的真值应分别为______D,______D或______D。
3、已知BX=7830H,CF=1,执行指令:ADC BX,87CFH之后,BX=____________,标志位的状态分别为CF=_______,ZF=_______,OF=________,SF=__________。 4、8086中,BIU部件完成______功能,EU部件完成 _____功能。 5、8086信号有效的含义表示________________。
6、8086正常的存储器读/写总线周期由________个T状态组成,ALE信号在__________状态内有效,其作用是______________。
7、设8086系统中采用单片8259A,其8259A的ICW2=32H,则对应IR5的中断类型号为___________H,它的中断入口地址在中断向量表中的地址为______________H。 二、简答及判断题
1、某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?试举例说明
2、8086CPU的FLAG寄存器中,状态标志和控制标志有何不同?程序中是怎样利用这两类标志的?
3、设采用16550进行串行异步传输,每帧信息对应1个起始位,7个数据位,1个奇/偶校验位,1个停止位,波特率为4800,则每分钟能传输的最大字符数为多少个? 三、读图和作图题
1、8086系统中接口连接关系如下图所示。要求回答以下问题: (1) 试分别确定8255,8253,8259及8251的端口地址;
(2) 设8255的PA口为输出,PB口为输入,试写出对PA口和PB口执行输入/输出操作的指令。
8255的端口地址为:___________________________________; 8253的端口地址为:___________________________________; 8259的端口地址为:___________________________________; 8251的端口地址为:___________________________________; 对PA口操作的I/O指令为_______________________________; 对PB口操作的I/O指令为______________________________。 2、作图题。
系统采用4个接口芯片:8253,8251,8259及8255。要求8253的通道0用作实时时钟,每当定时时间到之后向8259的IR2送入中断申请信号。8253通道1用作方波发生器作为8251的收发时钟脉冲。8253通道0,通道1的门控信号由8255 PC口的PC3和PC2控制。
(1) 画出4个芯片之间控制线的连接图; (2) 8253的两个通道应分别工作在什么方式?
四、程序阅读题 1、源程序如下:
MOV AH, 0 MOV AL, 9 MOV BL, 8 ADD AL, BL
AAA AAD DIV AL
结果AL_________,AH=___________,BL=_____________。 2、源程序如下:
MOV AX, SEG TABLE ;TABLE为表头
MOV ES, AX
MOV DI, OFFSET TABLE MOV AL, ‘0’ MOV CX, 100 CLD
REPNE SCASB
问:1) 该段程序完成什么功能?
2) 该段程序执行完毕之后,ZF和CX有几种可能的数值?各代表什么
含义?
3、源程序如下:
CMP AX, BX JNC L1 JZ L2 JNS L3 JNO L4 JMP L5
设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。 4、源程序如下:
MOV DX, 143H MOV AL, 77H OUT DX, AL MOV AX, 0 DEC DX DEC DX OUT DX, AL MOV AL, AH OUT DX, AL
设8253的端口地址为140H~143H,问: (1)程序是对8253的哪个通道进行初始化? (2)该通道的计数常数为多少?
(3)若该通道时钟脉冲CLK的周期为1µs,则输出脉冲OUT的周期为多少µs?
五、编程题
1、8255的编程。设8255的端口地址为200H~203H。
(1)要求PA口方式1,输入;PB口方式0输出;PC7~PC6为输入;PC1~PC0为输出。试写出8255的初始化程序。
(2)程序要求当PC7=0时置位PC1,而当PC6=1时复位PC0,试编制相应的程序。2、自BUFFER开始的缓冲区有6个字节型的无符号数:10,0,20,15,38,236,试编制8086汇编语言程序,要求找出它们的最大值、最小值及平均值,分别送到MAX、MIN和AVI三个字节型的内存单元。要求按完整的汇编语言格式编写源程序。
模式试题三参考答案
一、填空题
1、117.D99H 427.6631Q [1**********]1.[1**********]1B 0010 01111001.1000 0101 BCD
2、148D -20D -108D
3、BX=0000H CF=1 ZF=1 OF=0 SF=0 4、总线接口功能 指令的译码及执行功能 5、高8位数据线D15~D8有效
6、4 T1 给外部的地址锁存器提供一个地址锁存信号 7、35H 000D4H~000D7H 二、简答及判断题 1、∵
指向该物理地址的CS,IP值不唯一。
例如:CS:IP=0000:FEF0H也指向该物理地址。
2、状态标志表示算术运算或逻辑运算执行之后,运算结果的状态,这种状态将作为一种条件,影响后面的操作。控制标志是人为设置的,指令系统中有专门的指令用于控制标志的设置或清除,每个控制标志都对某一特定的功能起控制作用。
3、每帧占171 28800(个) 三、读图和作图题 1、 (1) A7 A6 A5 A4 A3 A2 A1 A0
1 0 0 0 任意 0
1
1
0 0 1 任意 0 0 1 0 任意 0 1 0 1 1 任意 0 8255的端口地址为 80H, 82H, 84H, 86H 8253的端口地址为 90H, 92H, 94H, 96H
8259的端口地址为 A0H, A2H, 8251的端口地址为 B0H, B2H, (2) OUT 80H, AL
IN AL, 82H 2、 (1) 控制线连接图如图所示。
四、程序阅读题
1、AL=01H AH=00 H BL=08H
2、(1) 从目的串中查找是否包含字符 ‘0’,若找到则停止,否则继续重复搜索。 (2) ZF=1, 说明已找到字符 ZF=0, 说明未找到字符
CX0,说明中途已找到字符退出
CX=0,且ZF=0说明串中无字符 ‘0’
3、 ∵ 74C3H
95C3H DF00H
且有:CF=1, ZF=0, SF=1, OF=1 程序将转到L5标号处执行。
4、 (1) 程序对8253的通道1进行初始化。
(2)计数常数为10000D,BCD计数。
(3)工作在方式3,方波速率发生器 周期=100001µs=10000µS=10ms
五、编程题
1、(1) MOV DX, 203H MOV AL, 10111000B OUT DX, AL
(2) MOV DX, 202H IN AL, DX MOV AH, AL TEST AL, 80H
JNZ NEXT1
MOV DX, 203H
MOV AL, 00000011B ;对PC1置位
OUT DX, AL (2分) NEXT1: MOV AL, AH TEST AL, 40H JZ NEXT2
MOV AL, 00000000B ; 对PC0复位 MOV DX, 203H OUT DX, AL
NEXT2:……… (3分) 2、 DATA SEGMENT
BUFER DB 10,0,20,15,38,236 MAX DB 0 MIN DB 0
AVI DB 0
DATA ENDS (2分)
STACK SEGMENT PARA STACK‘STACK’ DW 100 DUP (?) STACK ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK (1分)
START PROC FAR
BEGIN: PUSH DS MOV AX,0 PUSH AX
MOV AX,DATA MOV DS,AX
LEA DI,BUFFER
MOV DX,0 ;使DH=0,DL=0 MOV CX,6
MOV AX,0 ; 和清0 MOV BH,0 ; 最大值
MOV BL,0FFH ; 最小值 (2分) LOP1: CMP BH,[DI]
JA NEXT1 ; 若高于转移 MOV BH,[DI]; 大值BH NEXT1: CMP BL,[DI] ;
JB NEXT2 ; 若低于转移
MOV BL,[DI]; 小值BL (2分) NEXT2: MOV DL,[DI]; 取一字节数据 ADD AX,DX ; 累加和 START CODE
INC DI
LOOP LOP1 MOV MAX,BH;送大值
MOV MIN, BL;送小值 MOV DL, 6
DIV DL, ;求平均值 MOV AVI, AL;送平均值
RET ENDP ENDS
END BEGIN (3分) 分) (3
《微机原理》模拟试题三
一、填空题
1、将十进制数27985转换成十六进制数、八进制数、二进制数及BCD码数分别为:________H,________Q,_____B, BCD。
2、字长为8位的二进制数10010100B,若它表示无符号数,或原码数,或补码数,则该数的真值应分别为______D,______D或______D。
3、已知BX=7830H,CF=1,执行指令:ADC BX,87CFH之后,BX=____________,标志位的状态分别为CF=_______,ZF=_______,OF=________,SF=__________。 4、8086中,BIU部件完成______功能,EU部件完成 _____功能。 5、8086信号有效的含义表示________________。
6、8086正常的存储器读/写总线周期由________个T状态组成,ALE信号在__________状态内有效,其作用是______________。
7、设8086系统中采用单片8259A,其8259A的ICW2=32H,则对应IR5的中断类型号为___________H,它的中断入口地址在中断向量表中的地址为______________H。 二、简答及判断题
1、某指令对应当前段寄存器CS=FFFFH,指令指针寄存器IP=FF00H,此时,该指令的物理地址为多少?指向这一物理地址的CS值和IP值是唯一的吗?试举例说明
2、8086CPU的FLAG寄存器中,状态标志和控制标志有何不同?程序中是怎样利用这两类标志的?
3、设采用16550进行串行异步传输,每帧信息对应1个起始位,7个数据位,1个奇/偶校验位,1个停止位,波特率为4800,则每分钟能传输的最大字符数为多少个? 三、读图和作图题
1、8086系统中接口连接关系如下图所示。要求回答以下问题: (1) 试分别确定8255,8253,8259及8251的端口地址;
(2) 设8255的PA口为输出,PB口为输入,试写出对PA口和PB口执行输入/输出操作的指令。
8255的端口地址为:___________________________________; 8253的端口地址为:___________________________________; 8259的端口地址为:___________________________________; 8251的端口地址为:___________________________________; 对PA口操作的I/O指令为_______________________________; 对PB口操作的I/O指令为______________________________。 2、作图题。
系统采用4个接口芯片:8253,8251,8259及8255。要求8253的通道0用作实时时钟,每当定时时间到之后向8259的IR2送入中断申请信号。8253通道1用作方波发生器作为8251的收发时钟脉冲。8253通道0,通道1的门控信号由8255 PC口的PC3和PC2控制。
(1) 画出4个芯片之间控制线的连接图; (2) 8253的两个通道应分别工作在什么方式?
四、程序阅读题 1、源程序如下:
MOV AH, 0 MOV AL, 9 MOV BL, 8 ADD AL, BL
AAA AAD DIV AL
结果AL_________,AH=___________,BL=_____________。 2、源程序如下:
MOV AX, SEG TABLE ;TABLE为表头
MOV ES, AX
MOV DI, OFFSET TABLE MOV AL, ‘0’ MOV CX, 100 CLD
REPNE SCASB
问:1) 该段程序完成什么功能?
2) 该段程序执行完毕之后,ZF和CX有几种可能的数值?各代表什么
含义?
3、源程序如下:
CMP AX, BX JNC L1 JZ L2 JNS L3 JNO L4 JMP L5
设AX=74C3H,BX=95C3H,则程序最后将转到哪个标号处执行?试说明理由。 4、源程序如下:
MOV DX, 143H MOV AL, 77H OUT DX, AL MOV AX, 0 DEC DX DEC DX OUT DX, AL MOV AL, AH OUT DX, AL
设8253的端口地址为140H~143H,问: (1)程序是对8253的哪个通道进行初始化? (2)该通道的计数常数为多少?
(3)若该通道时钟脉冲CLK的周期为1µs,则输出脉冲OUT的周期为多少µs?
五、编程题
1、8255的编程。设8255的端口地址为200H~203H。
(1)要求PA口方式1,输入;PB口方式0输出;PC7~PC6为输入;PC1~PC0为输出。试写出8255的初始化程序。
(2)程序要求当PC7=0时置位PC1,而当PC6=1时复位PC0,试编制相应的程序。2、自BUFFER开始的缓冲区有6个字节型的无符号数:10,0,20,15,38,236,试编制8086汇编语言程序,要求找出它们的最大值、最小值及平均值,分别送到MAX、MIN和AVI三个字节型的内存单元。要求按完整的汇编语言格式编写源程序。
模式试题三参考答案
一、填空题
1、117.D99H 427.6631Q [1**********]1.[1**********]1B 0010 01111001.1000 0101 BCD
2、148D -20D -108D
3、BX=0000H CF=1 ZF=1 OF=0 SF=0 4、总线接口功能 指令的译码及执行功能 5、高8位数据线D15~D8有效
6、4 T1 给外部的地址锁存器提供一个地址锁存信号 7、35H 000D4H~000D7H 二、简答及判断题 1、∵
指向该物理地址的CS,IP值不唯一。
例如:CS:IP=0000:FEF0H也指向该物理地址。
2、状态标志表示算术运算或逻辑运算执行之后,运算结果的状态,这种状态将作为一种条件,影响后面的操作。控制标志是人为设置的,指令系统中有专门的指令用于控制标志的设置或清除,每个控制标志都对某一特定的功能起控制作用。
3、每帧占171 28800(个) 三、读图和作图题 1、 (1) A7 A6 A5 A4 A3 A2 A1 A0
1 0 0 0 任意 0
1
1
0 0 1 任意 0 0 1 0 任意 0 1 0 1 1 任意 0 8255的端口地址为 80H, 82H, 84H, 86H 8253的端口地址为 90H, 92H, 94H, 96H
8259的端口地址为 A0H, A2H, 8251的端口地址为 B0H, B2H, (2) OUT 80H, AL
IN AL, 82H 2、 (1) 控制线连接图如图所示。
四、程序阅读题
1、AL=01H AH=00 H BL=08H
2、(1) 从目的串中查找是否包含字符 ‘0’,若找到则停止,否则继续重复搜索。 (2) ZF=1, 说明已找到字符 ZF=0, 说明未找到字符
CX0,说明中途已找到字符退出
CX=0,且ZF=0说明串中无字符 ‘0’
3、 ∵ 74C3H
95C3H DF00H
且有:CF=1, ZF=0, SF=1, OF=1 程序将转到L5标号处执行。
4、 (1) 程序对8253的通道1进行初始化。
(2)计数常数为10000D,BCD计数。
(3)工作在方式3,方波速率发生器 周期=100001µs=10000µS=10ms
五、编程题
1、(1) MOV DX, 203H MOV AL, 10111000B OUT DX, AL
(2) MOV DX, 202H IN AL, DX MOV AH, AL TEST AL, 80H
JNZ NEXT1
MOV DX, 203H
MOV AL, 00000011B ;对PC1置位
OUT DX, AL (2分) NEXT1: MOV AL, AH TEST AL, 40H JZ NEXT2
MOV AL, 00000000B ; 对PC0复位 MOV DX, 203H OUT DX, AL
NEXT2:……… (3分) 2、 DATA SEGMENT
BUFER DB 10,0,20,15,38,236 MAX DB 0 MIN DB 0
AVI DB 0
DATA ENDS (2分)
STACK SEGMENT PARA STACK‘STACK’ DW 100 DUP (?) STACK ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK (1分)
START PROC FAR
BEGIN: PUSH DS MOV AX,0 PUSH AX
MOV AX,DATA MOV DS,AX
LEA DI,BUFFER
MOV DX,0 ;使DH=0,DL=0 MOV CX,6
MOV AX,0 ; 和清0 MOV BH,0 ; 最大值
MOV BL,0FFH ; 最小值 (2分) LOP1: CMP BH,[DI]
JA NEXT1 ; 若高于转移 MOV BH,[DI]; 大值BH NEXT1: CMP BL,[DI] ;
JB NEXT2 ; 若低于转移
MOV BL,[DI]; 小值BL (2分) NEXT2: MOV DL,[DI]; 取一字节数据 ADD AX,DX ; 累加和 START CODE
INC DI
LOOP LOP1 MOV MAX,BH;送大值
MOV MIN, BL;送小值 MOV DL, 6
DIV DL, ;求平均值 MOV AVI, AL;送平均值
RET ENDP ENDS
END BEGIN (3分) 分) (3