微机习题+答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、程序填空
1、下列程序段要求在100 个带符号数中找出其中最大的一个数。设该数据区首址的偏移地址=2000H,最后要求将最大值存入偏移地址=2100H的单元中,试填空完成该程序。MOV BX,2000H
MOV AX,[BX]
MOV CX,100
LOP1:INC BX
CMP AL,[BX]
JNG LOP2
MOV AL,[BX]
LOP2:LOOP LOP1
MOV [2100H] ,AL
5、求某数据区内负数的个数程序如下:(在空白处填入适当的语句)。
(1)STACK SEGMENT STACK DW 64 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DI,3000H
MOV CL,[DI]
XOR CH,CH
MOV BL, CH
INC DI
A1: MOV AL, [DI]
TEST AL, 80H
JE A2
INC BL
A2: INC DI
LOOP A1
INT 03H
CODE ENDS
END START
(2)STACK SEGMENT STACK
DB 20 DUP(?)
STACK ENDS
DA TA SEGMENT
NUM DB ?
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DA TA START: MOV SI,2000H
MOV CX,50
MOV BL,00H
A1: MOV AL,[SI]
CMP AL,’A’;
CMP AL,41H
JNZ A2
INC BL
A2: INC SI
LOOP A1
MOV NUM,BL
INT 03H
CODE ENDS
END START
4、有如下程序段,
DA TA SEGMENT
X1 DB 0FAH
X2 DB 0FCH DA TA ENDS
CODE SEGMENT
……
MOV AL,X1
ADD AL,X2
……
CODE ENDS
END
问:ADD指令执行完后标志寄存器中的哪些位受到影响?标在题图中。
OF DF IF TF SF ZF AF PF CF
0 1 0 1 1
题四(1)图答案
5、求某数据区内负数的个数程序如下:(在空白处填入适当的语句)。
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DI,3000H
MOV CL,[DI]
XOR CH,CH
MOV BL, CH
INC DI
A1: MOV AL, [DI]
TEST AL, 80H
JE A2
INC BL
A2: INC DI
LOOP A1
INT 03H
CODE ENDS
END START
7、请把下列程序填写完整,并回答问题:
TITLE EXAMPLE.ASM
DA TA SEGMENT
A DW 0
B DW 0
C DW 230,20,54
DATA ENDS
CODE SEGMENT ASSUME CS:CODE,DS:DATA PROG PROC FAR START: PUSH DS
MOV AX.0
PUSH AX
MOV AX,DA TA
MOV DS,AX
MOV BX,OFFSET C
MOV AX,[BX]
MOV B,AX
MOV AX,2[BX]
ADD AX,B
MOV A,AX
EXIT: RET
PROG ENDP
CODE ENDS
END START
问题:
1.程序执行完后,A单元的内容是多少?答:A单元的内容为250。
2.写出上机运行本程序的步骤
答:C>MASM EXAMPLE C>LINK EXAMPLE
C>EXAMPLE
10、地址内容
2000:(2)填空:
BUF2= 3
BUF4= 4
BUF5= 4
SEG BUF3= 2000H
OFFSET BUF3= 0004H
31H
33H
34H
12H
03H
0AH
03H
0AH 0000
0001
0002
0003
0004
0005
0006
0007
11、阅读程序
(1)程序完成的功能:寻找字符串中各字符含1的个数
(2)程序运行结束后,DL中的内容:02H
(3)程序运行结束后,CX中的内容:0 (4)指令CMP AL,0在程序中的作用:缩短寻找的过程
(5)程序运行结束后,DA+1单元中的内容:02H (6)程序运行结束后,DA+2单元中的内容:03H
11、阅读下面程序并填空,程序中采集了ADC0809的IN4~IN7 模拟通道。
MOV DX,5003H ;8255初始化
MOV AL,00011000B
OUT DX,AL
MOV CX,4
MOV BL,CL
MOV DI,OFFSET DA TBUF
CLD
NEXT:MOV DX,5002H ;输出ADC通道号
MOV AL,BL
OUT DX,AL
MOV DX,5003H
MOV AL,0000 0111B
OUT DX,AL ;该程序段的作用是
NOP ;
NOP ;通道锁存并启动A/D转换。
MOV AL,0000 0110B
OUT DX,AL
MOV DX, 5002H
W AIT: IN AL, DX ;查询A/D转换是否结束
TEST AL, 80H
JZ W AIT
MOV DX, 5000H
IN AL, DX ;读A/D转换结果至AL
STOSB
INC BL
LOOP NEXT