《汇编语言程序设计》试卷
模拟试卷一
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.用户为了解决自己的问题,用汇编语言所编写的程序,称为 ( )
A)目标程序 B)源程序 C)可执行程序 D)汇编程序
2.指令指针寄存器是 ( )
A)BP B)IP C)SP D)PSW
3.当堆栈为空时,如SS=0805H,SP=40H,栈底字单元的物理地址是 ( )
A)08090H
B)08089H C)0808EH
D)08450H
4.下面指令中,源操作数的寻址方式为立即寻址的是 ( )
A)MOV AX,OFFSET A
B)MOV AX,A
C)MOV AX,A+1
D)MOV AX,A[BX]
5.下面各传送指令中,正确的是( )
A)MOV [DI],[SI]
B)MOV [DX+DI],AL
C)MOV AL,BX
D)MOV WORD PTR [BX],0100H
6.已知CS=2300H,DS=2400H,执行下列指令序列后,CS和DS值是 ( )
PUSH CS
POP DS
A)CS=0
B)CS=2400H
C)CS=2400H
D)CS=2300H
DS=2300H DS=2300H DS=2400H DS=2300H
7.执行下面指令语句,则AX= ( )
MOV AL,95H
CBW
A)0095H
B)0F95H C)0FF95H
D)9095H
8.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是 ( )
A)
示结果中含1的个数为偶数 B)表示结果中含1的个数为奇数
C)表示该数为偶数 D)表示结果中低八位含1的个数为偶数
9.设AX=1000H
NEG AX
NOT AX
执行上述指令后,正确的结果是( )
A)AX=1001H B)AX=0FFFH C)AX=1000H D)AX=0111H
10.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是 ( )
A)MOV AL,00H B)AND AL,00H C)XOR AL,AL D)SUB AL,AL
11.将CX寄存器低4位清零的正确指令是 ( )
A)AND CX,0F0H
B)AND CX,0FFF0H
C)AND CX,1110H
D)MOV CX,0
12.执行后使BX=0的同时也使CF=0,OF=0的指令是 ( )
A)XOR BX,BX
B)OR BX,BX
C)AND BX,BX
D)CMP BX,BX
13.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是 ( )
A)CX=0且ZF=0 B)CX=0且ZF=1
C)CX=0或ZF=0 D)CX=0或ZF=1
14.条件转移指令JBE产生转移的条件是( )
A)CF=0 OR ZF=0
B)CF=0 OR ZF=1
C)CF=1 OR ZF=0
D)CF=1 OR ZF=1
15.比较BX和SI中的两个存储器地址,若BX≥SI转向HIGH的正确指令是 ( )
A)JAE HIGH
B)JBE HIGH C)JEG HIGH
D)JLE HIGH
16.循环指令Loop规定循环次数必定在寄存器 ( )
A)DX中
B)DL中 C)CX中
D)CL中
17. DEC WORD PTR[BX]指令中的操作数的数据类型是 ( )
A)字
B)双字
C)字节
D)四字
18.下面指令执行后,变量DAB中的内容是 ( )
DAW DW 2A05H
DAB DB 0FAH
:
MOV AL,BYTE PRT DAW
SUB DAB,AL
A)0DAH B)0FAH C)0F5H D)0D0H
19. 使用汇编语言的伪操作命令定义 ( )
VAL DB 2 DUP(1,2,3 DUP(3),2 DUP(1,0))
则在VAL存储区内前十个字节单元的数据是
A)1,2,3,3,2,1,0,1,2,3 B)1,2,3,3,3,3,2,1,0,1
C)2,1,2,3,3,2,1,0,2,1 D)1,2,3,3,3,1,0,1,0,1
20.设NUM=60H,表达式
(NUM LT 60H AND 30)OR(NUM GE 60H AND 40)的值是 ( )
A)0
B)30H C)40
D)0FFFFH
二、填空题(本大题共5小题,每空1分,共20分)
1.INTEL 8088 管理的存储器空间最大容量为______________,I/O端口地址空间最大容量为_____________。
2.在8086/8088汇编语言中,有五条串操作指令,其中搜索字符串指令的助记符是______。
3.8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是________、________、________、________。
4.现有(AX)=2000H,(BX)=1200H,(DS)=3000H,(DI)=0002H,(31200H)=50H,(31201H)=02H,(31202H)=40H,(CF)=0。请写出下列各条指令独立执行完后有关寄存器及存储单元的内容,并指出标志位ZF、CF的值。
①ADD AX,1200H; 问AX=________H ZF=________
②SUB AX,BX; 问AX=________H ZF=________
③MOV AX,[BX]; 问AX=________H CF=________
④NEG WORD PTR[1200H]; 问(31200H)=________H CF=________
5.设(DS)=2200H,(BX)=1000H,(SI)=0100H,偏移量D=0A2B1H,试计算出下列各种寻址方式下的有效地址,填入横线上。
①使用D的直接寻址 ________
②使用BX的寄存器间接寻址 ________
③使用BX和D的寄存器相对寻址 ________
④使用BX、SI和D的相对基址变址寻址 ________
⑤使用BX、SI的基址变址寻址 ________
三、简答题(8分)
设当前(SP)=0100H,(SS)=0300H,(PSW)=0240H,在内存段地址为0900H及偏移地址为00A0H的单元中有一条中断指令INT 11H(该指令占两个字节),试问执行这条INT 11H指令后,SP、CS、IP、PSW的内容是什么?栈顶的三个字是什么(画出堆栈示意图)?
PC机内存中的一段数据如下:
0000:0040 B3 18 8A CC 4D F8 00 F0--41 F8 00 F0 C5 18 8A CC
0000:0050 39 E7 00 F0 A0 19 8A CC--2E E8 00 F0 D2 EF 00 F0
8086 CPU中PSW内容如下:
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
OF
DF
IF
TF
SF
ZF
AF
PF
CF
四、程序分析题(本大题共3小题,共20分)
1.阅读下面的程序段(6分)
NUM DB ?
MOV AH,1
INT 21H
CMP AL,39H
JBE NEXT
SUB AL,7
NEXT:SUB AL,30H
MOV NUM,AL
上述程序段运行后,
(1)若输入’F’,则(NUM)=_____ (用二进制表示)
(2)若输入’8’,则(NUM)=_____ (用二进制表示)
(3)该程序段的功能是_____。
2.
阅读下面的程序段 (6分)
MOV CX,16
MOV BX,0
MOV DX,1
AG:TEST AX,DX
JZ NEXT
INC BX
NEXT:SHL DX,1
LOOP AG
请回答:(1)该程序段的功能是什么?
(2)若程序执行前 (AX)=1234H,程序执行完后 (BX)=
3.阅读下面的程序段 (8分)
BUF1 DB -1,2,-3,4,-5,6,-7,8,-9
BUF2 DB 9 DUP(0)
┇
XOR BL,BL
MOV SI,0
MOV CX,9
LOP:MOV AL,BUF1[SI]
TEST AL,80H
JZ K
INC BL
NEG AL
K:XOR AL,01H
MOV BUF2[SI],AL
INC SI
LOOP LOP
……
(1)写出程序运行后BUF2中的各字节数据
(2)BL=______________
五、程序填空题(本大题共2小题,每小题6分,共12分)
1.下面程序段是判断两个存储单元是否同为正数,如是,则AX置全0,否则AX置非0。试在空白处各填上适当的一条条件转移指令(两空白处要利用不同的标志位选用不同的条件转移指令)。
VAR1 DW ××××
VAR2 DW ××××
┇
MOV AX,VAR1
MOV BX,VAR2
XOR AX,BX
①
TEST BX,8000H
②
MOV AX,0
NEXT:……
2.已知数据段DAT单元存放某一数N(-6≦N≦6)下面的程序段用查表法求数N的平方值,结果送SQR单元,请将程序填写完整。
TABLE DB 0, 1, 4, 9, 16, 25
DAT DB N
SQR DB ?
LEA BX, TABLE
MOV AL, DAT
①
JGE NEXT
②
NEXT:XLAT
HLT
六、编制程序题(本大题共2小题,共20分)
1.在N1和N2两数据区中,分别有10H个带符号数。试编制一源程序,找出对应项中较小的数据,并将这些较小的数据存入N3数据区中。
DATA SEGMENT
N1 DB ××,××,××……
N2 DB ××,××,××……
N3 DB 10H DUP(0)
DATA ENDS
2.编程序计算SUM=∑ai=a1+a2+...+a20,已知a1......a20依次存放在以BUF为首址的数据区,每个数据占两个字节,和数SUM也为两个字节。(要求用循环结构编写,循环控制采用计数控制)。
DATA SEGMENT
BUF DW ××,××,××,……
SUM DW ?
DATA ENDS
模拟试卷二
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.将汇编语言的程序翻译成机器码程序的实用程序是 ( )
A)编译程序
B)汇编程序 C)解释程序
D)目标程序
2.标志寄存器中属于控制标志位的是 ( )
A)DF,OF,SF B)DF,IF,TF C)OF,CF,PF
D)AF,OF,SF
3.8088/8086存储器分段,每个段不超过( )
A)64K个字
B)32K个字节 C)1M个字节
D)64K个字节
4.已知DS=12A0H,ES=22A0H,SS=33A0H,BP=0174H,指令“MOV AX,DS:[BP]”中源操作数的物理地址是 ( )
A)12A074H
B)22B74H C)33B74H
D)12B74H
5.下面的数据传送指令中,错误的操作是 ( )
A)MOV SS:[BX+DI],1000H B)MOV DX,1000H
C)MOV WORD PTR[BX],1000H D)MOV DS,2000H
6.已知SP=2110H,执行POP AX后,SP寄存器的值是 ( )
A)2111H
B)2112H C)210FH
D)210EH
7.执行下面指令语句,则AX= ( )
MOV AL,85H
CBW
A)0085H
B)0F85H C)0FF85H
D)8085H
8. 执行下列指令序列后,正确的结果是( )
MOV AL,81H
ADD AL,AL
ADC AL,AL
A)AL=05H B)AL=204H C)AL=04H D)AL=205H
9.执行NEG指令时,要设置标志位CF。设置CF的正确说法是( )
A)对正数求补时,CF置0
B)对负数求补时,CF置0
C)对全0数据求补时,CF置0
D)对非零数据求补时,CF置0
10.完成对CL寄存器的内容乘以4的正确操作是 ( )
A)ROL CL,1
B)MUL 4 C)SHL CL,1
D)MOV CL,2
ROL CL,1
SHL CL,1
SHL CL,CL
11.已知AX=1200H,能使CF置“1”的指令是 ( )
A)OR AX,AX
B)NEG AX C)NOT AX
D)DEC AL
12.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是
( )
A)ADD BH,01H
B)OR BH,01H
C)XOR BH,01H
D)TEST BH,01H
13.在串操作指令前使用重复前缀指令REPNE,终止串的重复操作条件是 ( )
A)CX=0且ZF=0 B)CX=0且ZF=1
C)CX=0或ZF=0 D)CX=0或ZF=1
14.条件转移指令JNBE产生转移的条件是( )
A)CF=0 AND ZF=0
B)CF=0 AND ZF=1
C)CF=1 AND ZF=0
D)CF=1 AND ZF=1
15.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在
“CMP AL,BL”指令后应跟的分支指令是 ( )
A)JNC LOP1
B)JA LOP1 C)JC LOP1
D)JGE LOP1
16.循环控制指令LoopNZ控制循环继续执行的条件是 ( )
A)CX≠0且ZF=1
B)CX≠0且ZF=0
C)CX≠0或ZF=1
D)CX≠0或ZF=0
17.8086的存储器是分段的,定义一个段的伪指令是 ( )
A)PROC和ENDP
B)NAME和END
C)SEGMENT和ENDS
D)SEGMENT和ASSUME
18. ARRAY DW 6, 9, $+4, 10H, 1,$+4
┇
MOV AX, ARRAY+4
设变量ARRAY的偏移量是0084H,上述指令执行后AX中的内容是 ( )
A)0009 B)008CH C)0090H D)0010H
19.BUF1 DB 3 DUP(0,2 DUP (1,2),3)
COUNT EQU $ -BUF1
符号COUNT等价的值是( )
A)6
B)8 C)16
D)18
20.指令MOV CL,55H XOR 0F0H执行后CL中的值是( )
A)05H
B)50H C)0A5H
D)0F5H
二、填空题(本大题共6小题,每空1分,共20分)
1.n位补码的表数范围为:-______________≤N≤+______________。
2.在1M字节的存储器中,每个存储单元都有一个唯一的________位地址,称为该物理单元的物理地址。
3.宏指令和子程序都可以简化源程序。宏指令在______________时由______________处理宏指令,把宏定义体插入到______________处。 子程序是在______________时由______________处理的。子程序执行速度比宏指令______________。在多次调用时,子程序的目标代码比宏调用的目标代码______________。
4.设(SS)=2000H,指令序列
MOV SP,1234H
PUSH AX
执行后,SP= ______________,AL中的数据在内存地址______________中,AH中的数据在内存地址______________中。
5.若DS=0F800H,DI=180AH,(0F980AH)=0064H ,指令序列
MOV CL,5
SAR [DI],CL
执行后,(0F980A)=______________,CF=______________。
6.若(AX)=0122H,四个标志位CF、SF、ZF、OF的初始状态为0,执行指令
“SUB AX,0FFFH”后,AX= ________,CF= _______,SF= _______,ZF= _______,OF= _______。
三、简答题(本大题共2小题,每小题4分,共8分)
1.假设DS=2000H,BX=0100H,(20100H)=30H,(20101H)=10H
问:(1)执行MOV DX,[BX] DX=_____
执行LEA DX,[BX] DX=_____
(2)简述两条指令区别
2.限用二条逻辑指令将寄存器AL中第0、2位置1,其他位变反。
四、程序分析题(本大题共3小题,共20分)
1.阅读下面程序,当程序执行到标号lab1时,AX、BX、CX、DX四个寄存器的内容是什么?(4分)
CODESG SEGMENT
ASSUME CS:CODESG
BEGIN: MOV AX,1
MOV BX,2
MOV DX,3
MOV CX,4
L20: INC AX
ADD BX,AX
SHR DX,1
LOOPE L20
lab1:MOV AH,4CH
INT 21H
CODESG ENDS
END BEGIN
2.(8分)STRING DB ‘ABCDEFGHIJ''
:
MOV AH,01 ;从键盘输入字符1~9
INT 21H
AND AL,0FH
DEC AL
XOR AH,AH
MOV BX,OFFSET STRING
ADD BX,AX
MOV BL,[BX]
MOV AH,02H ;显示输出
INT 21H
:
试回答:(1)上述程序段的功能是什么?
(2)如从键盘输入字符‘4”,程序段有什么结果?
3.DD2 DB 0,l,2,3,4,5,6,7,8,9
┇
LEA SI,DD2
LEA DI,DD2+1
MOV CX,5
LOP:MOV AL,[SI]
XCHG AL,[DI]
MOV [SI],AL
ADD SI,2
ADD DI,2
DEC CX
JNZ LOP
上述程序段执行后,回答: (8分)
①该程序段完成什么功能?
②DD2开始的l0个字节数应是什么值?
五、程序填空题(本大题共2小题,每小题6分,共12分)
1.下面程序段是判AL和BL中的数据是否同号,若是,则把AL中的数据变负并送到AH中,否则0→AH。横线处填入适当指令(每处仅填一条指令)。
①____________
JNS K
MOV AH,0
JMP END0
K: ②____________
MOV AH,AL
END0:……
2.下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出)
FLD DW 10, -20, 30, -60, -71, 80, 79, 56
①_______
MOV CX, 8
XOR AX, AX
R1: ②_______
ADD SI, 2
LOOP R1
MOV CL, 8
IDIV CL
HLT
六、编制程序题(本大题共3小题,共20分)
1.编一程序段将BUF字节单元中的数折成高低四位,并且将分离出的高四位和低四位分别放于BUF+1和BUF+2字节单元的低四位上。(5分)
2.已知AX、BX中分别保存无符号数,求(AX)-(BX)的绝对值,结果保存在AX中。请编写程序段。 (5分)
3.X为一字单元,编程实现:将X的内容以二进制的形式显示到屏幕上。其中:显示一个字符用INT 21H中断,入口参数为:DL=字符ASCII码,AH=2。(10分)
数据段定义如下:
DATA SEGMENT
X DW (?)
DATA ENDS
模拟试卷三
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.在汇编语言程序中,对END语句的叙述正确的是 ( )
A)END语句是一可执行语句 B)END语句表示程序执行到此结束
C)END语句表示源程序到此结束 D)END语句在汇编后要产生机器码
2.某数组共有4个字,第一个字的物理地址是1F100H,则第4个字的物理地址是 ( )
A)1F105H
B)1F106H C)1F107H
D)1F108H
3.某程序装入内存后,DS=1200H,CS=1400H,则程序中数据段中的数据最多是 ( )
A)2K字节
B)4K字节 C)8K字节
D)16K字节
4.指令“MOV BYTE PTR[BX+SI],0”中目的操作数的寻址方式是 ( )
A)立即寻址
B)寄存器寻址 C)寄存器间接寻址
D)基址变址寻址
5.下面有语法错误的指令是 ( )
A)XCHG AX,[BX]
B)XCHG AX,DS
C)XCHG AX,SI
D)XCHG AX,BP
6.当SS=9876H,SP=4328H,执行POPF指令后,堆栈顶部的物理地址是( )
A)9CA8AH B)9CA90H C)9CA86H D)0DB00H
7. CBW指令的功能是 ( )
A)把源操作数的符号位扩展到目的操作数中 B)把AL中的符号位扩展到AH中
C)把AH中的符号位扩展到AL中 D)把AX中的符号位扩展到DX中
8. MOV AL,79
ADD AL,0B1H
上面指令执行后,设置的标志位CF和OF的值是( )
A)CF=0,OF=1 B)CF=1,OF=1 C)CF=0,OF=1 D)CF=1,OF=0
9. MOV AL,-1
NEG AL
XOR AL,65
上述指令执行后,AL的值是 ( )
A)01H
B)40H C)61H
D)64H
10.将AX中有符号数除以4的正确指令序列是 ( )
A)SHR AX,1
B)SAR AX,1
C)IDIV 4
D)DIV 4
SHR AX,1
SAR AX,1
11.要使BL中的低四位变反,高四位不变,应执行指令 ( )
A)NOT BL
B)OR BL,0FH
C)AND BL,0FH
D)XOR BL,0FH
12.将DX,AX中32位数左移一位的指令序列是 ( )
A)SHL AX,1
B)RCL AX,1
RCL DX,1
SHL DX,1
C)SHL AX,1
D)RCL AX,1
SHL DX,1
RCL DX,1
13.串比较指令REPE CMPSB重复比较执行的条件是 ( )
A)CX≠0 并且 ZF=0
B)CX≠0 并且 ZF=1
C)CX≠0 或者 ZF=0
D)CX≠0 或者 ZF=1
14.当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是 ( )
A)JLE B)JNL C)JNLE D)JL
15.假设AX和BX寄存器中存放的是无符号整数,为了判断AX寄存器中的数据是否大于BX寄存器中的数据,应采用的指令序列为 ( )
A)SUB AX,BX B)SUB AX,BX C)CMP AX,BX D)CMP AX,BX
JC label JNC label JA label JG label
16.某循环程序是对两个数组进行某种运算处理,当数组处理完毕或运算处理的结果不为某一指定值时(每次循环时,对运算结果已进行了测试),就结束循环。如要求一定使用循环控制指令,这时应选用的指令是 ( )
A)LOOP B)LOOPE/LOOPZ C)LOOPNE/LOOPNZ D)JCXZ
17.表示过程定义结束的伪指令是 ( )
A)ENDP
B)ENDS C)END
D)ENDM
18.下面的程序段
NUM DW ?
NAME DW 10 DUP(?)
CNT EQU 10
LEN EQU $-NUM
MOV AX,LEN
执行后,AX中的内容是 ( )
A)11H B)12H C)16H D)17H
19.DA1 DW 2A05H
DA2 DB 0FAH
┇
MOV AL,BYTE PTR DA1
SUB DA2,AL
上述指令执行后,DA2中的内容是( )
A)0DAH
B)0FAH C)0F5H
D)0D0H
20.下面语句中能和指令MOV AX,NOT 0FH等效的是 ( )
A)MOV AX,0FFFFH
B)MOV AX,0FH
C)MOV AX,0FFF0H
D)MOV AX,0F0FFH
二、填空题(本大题共6小题,每空1分,共20分)
1.在汇编语言中有三种指令:其中______________用于定义常数、变量、内存空间的分配和定位,它一般在______________时被解释。______________在CPU设计时被定义,并在______________时控制计算机操作。另一种指令是______________,它用于代表一段程序,它在______________时定义。
2.CPU的标志寄存器中标志位,可以分为两大类,其中一类称为________标志位,另一类称为________标志位。
3.设TABLE为数据段中0032H单元的符号名,其中存放的内容为1234H,问指令
MOV AX,TABLE 执行后,(AX)=______________;
LEA AX,TABLE 执行后,(AX)=______________。
4.已知:(AX)=01CDH,(BX)=0AFH,(CX)=0BE02H,CF=1,写出单步执行每条指令时CF、ZF及相关寄存器的内容。
TEST AX,BX ;(AX)= ______________H,(BX)= ______________H
;CF=______________ ,ZF=______________
ROL BX,CL ;(BX)= ______________H,(CL)= ______________H
5.乘法指令“MUL CL”执行后,16位的乘积存放在______中。
6.DD指令以_______________为单位分配存贮;DW指令以__________为单位分配存贮。 “VAR DB 5 DUP(8,2 DUP(5))”语句汇编应分配______个字节单元。
三、简答题(本大题共2小题,每小题4分,共8分)
1.分别指出下列指令中源操作数的寻址方式
①MOV SI,100
②MOV CX,DATA[SI]
③MOV [SI],AX
④ADD AX,[BX][DI]
2.设有数据定义如下:
ARRAY DW 1000H,2000H,3000H,4000H,5000H
BUF DW ?
要求完成:(1)用一条指令完成将ARRAY的偏移地址送BX;
(2)用一条指令完成将ARRAY的第一字节单元内容送AL;
(3)用一条指令完成将ARRAY数组的长度(字节数)送CX。
四、程序分析题(本大题共3小题,共20分)
1.(4分)分析下面程序段
MOV AL,200
SAR AL,1
MOV BL,AL
MOV CL,2
SAR AL,CL
ADD AL,BL
试问程序段执行后(BL)=______(AL)=______
2.(8分)DA1 DB 87H
DA2 DB ?
┇
MOV AH,0
MOV AL,DA1
MOV CL,4
SHR AL,CL
MOV DL,10
MUL DL
MOV BL,DA1
AND BL,0FH
ADD AL,BL
MOV DA2,AL
试回答: (1)程序段执行后,(DA2)=______;
(2)在程序段功能不变的情况下,是否可以用指令SAR替代指令SHR?
3.(8分)阅读下面的程序
DATA SEGMENT
ARRAY DW -1,6,9,0,-8,18,-7,11
AMAX DW -128
AMIN DW 127
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
MOV AX,DATA
MOV DS,AX
MOV CX,(OFFSET AMAX - OFFSET ARRAY)/2
LEA SI,ARRAY
AG: MOV AX,[SI]
CMP AX,AMAX
JLE BG
MOV AMAX,AX
BG: CMP AX,AMIN
JGE CG
MOV AMIN,AX
CG: ADD SI,2
LOOP AG
MOV AH,4CH
INT 21H
CODE ENDS
END
请回答:(1)该程序段的功能是什么?
(2)该程序执行完后,变量AMAX和AMIN中的内容分别是什么?
五、程序填空题(本大题共2小题,每小题6分,共12分)
1.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。
TEST AX,8000H
① ___________
MOV PLW,BX
JMP DONE
K1:② _____________
DONE:
2.下面程序段完成用串指令在DA1开始的26个字节单元中依次存放A—Z的ASCII码,在DA2开始的26个字节单元中依次存放Z—A的ASCII码,请在横线处各填一条指令。
DA1 DB 26 DUP(?)
DA2 DB 26 DUP(?)
┇
LEA DI,DA1
MOV AL,‘A’
MOV CX,26
CLD
LOP1:STOSB
①______________
LOOP LOP1
MOV CX,26
LOP2:②______________
STOSB
LOOP LOP2
六、编制程序题(本大题共2小题,共20分)
1.X、Y、Z三个字节存储单元中各有一个无符号数,其中有两个数据相等,找出不相等的哪个数,并存入W单元中,试编写完成上述功能的程序。(10分)
DATA SEGMENT
X DB -
Y DB -
Z DB -
W DB ?
DATA ENDS
2.设数据段定义如下,请编写完整的程序段,把以DAT1为首址的数据区中的100个字节数据依次传送到以DAT2为首址的数据区中。(10分)
Data segment
DAT1 DB 100 DUP(0)
DAT2 DB 100 DUP(?)
Data ends