汇编语言期末复习题大全(免费)
第1章:基础知识
1、在汇编语言程序的开发过程中使用宏功能的顺序是
( C )。 DX
A、宏定义,宏调用 B、宏定义,宏展开
C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用
2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,
那么该语句中不可省略的项是( B )。 DX
A、名字项 B、操作项 C、操作数项 D、注释项
3、可屏蔽中断就是它的请求是否被CPU响应要受 ( IF )的控制。
4、使用LINK连接命令,执行后可生成文件的扩展名为( EXE )。
5、十六进制数88H,可表示成下面几种形式,请找出错误的表示(④ )。 ① 无符号十进制数136 ② 带符号十进制数-120
③ 压缩型BCD码十进制数88 ④ 8位二进制数-8的补码表示
6、指令指针寄存器是(IP )。 DX
7、汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法(B)
A.名字的第一个字符可以是大写英文字母及小写英文字母
B.名字的第一个字符可以是字母、数字及、@、_
C.名字的有效长度≤31个字符
D.在名字中不允许出现$
8、CS寄存器属于( 段寄存器 )。
第2章:8086/8088的寻址方式和指令系统
1、下列指令属于基址加变址寻址方式的是( MOV DX,DS:[BP][SI] )。
2、当程序顺序执行时,每取一条指令语句,IP指针增加的值是
( D )。
A.1 B.2 C.3 D.由指令长度决定的
3、下列属于合法的指令是( D ) DX
A.MOV DS,ES B.MOV [SI],[DI] C.MOV AX,BL
D.MOV [DI],BL
4、若AX=349DH,CX=000FH。则执行指令AND AX,CX后,AX的值是
( 000DH )。 DX
5、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地
址是( 85B92H ) DX
6、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是
( B ) DX
A、AX,BX,CX,DX B、BX,BP,SI,DI
C、SP,IP,BP,DX D、CS,DS,ES,SS
7、对寄存器AX的内容乘以4的正确指令序列是( SHL AX,
1 SHL,AX,1 )。 DX
8、执行INC指令除对SF、ZF有影响外,还要影响的标志位是
( OF,AF,PF )。 DX
9、设DH=10H,执行NEG DH指令后,正确的结果是
( DH=0F0H CF=1 )。 DX
10、下列传送指令中有语法错误的是( A )。 DX
A、MOV CS,AX B、MOV DS,AX C、MOV SS,AX D、MOV ES,AX
11、下面指令执行后,改变AL寄存器内容的指令是
( D )。
A、TEST AL,02H B、OR AL,AL C、CMP AL,BL
D、AND AL,BL
12、执行除法指令后,影响的标志位是( AF,CF,OF,PF,SF,
ZF都不确定 )。 DX
13、执行下面指令序列后,结果是( AX=0FF82H )。 DX
MOV AL,82H
CBW
14、与MOV BX,OFFSET VAR指令完全等效的指令是
( D )。
A、MOV BX,VAR B、LDS BX,VAR C、LES BX,VAR D、
LEA BX,VAR
15、在段定义时,如果定位类型用户未选择,就表示是隐含类型,其
隐含类型是( PARA )。 DX
16、MOV SP,3210H
PUSH AX 执行上述指令序列后,SP寄存器的值是
( 320EH )。 DX
17、BUF DW 10H DUP(3 DUP(2,10H),3,5)
上述语句汇编后,为变量BUF分配的存储单元字节数是
( 100H )。 DX
18、MOV AH,7896H
ADD AL,AH
上述指令执行后,标志位CF和OF的值是( CF=1,OF=0 )。 DX
19、完成将带符号数AX的内容除以2的正确指令是( SHR AX,1 )。 DX
20、在汇编语言程序中,对END语句的叙述正确的是( C )。 DX
A.END语句是一可执行语句 B.END语句表示程序执行到
此结束
C.END语句表示源程序到此结束 D.END语句在汇编后要产生
机器码
21、已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作
在(数据段中偏移量为3236H的字节)中。 DX
22、下面指令序列执行后完成的运算,正确的算术表达式应是
(y=x2-1)。 DX
MOV AL,BYTE PTR X
SHL AL,1
DEC AL
MOV BYTE PTR Y,AL
23、已知(AX)=1234H,执行下述三条指令后,(AX)= (0000H)。 DX
MOV BX,AX
NEG BX
ADD AX,BX
A.1234H B.0EDCCH C.6DCCH D.
24、将DX的内容除以2,正确的指令是(C)。 DX
A.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,1
25、有如下指令序列: DX
ORG 40H
DA1 DW 0AB12H,8574H
„„
MOV AX,DA1
MOV BX,OFFSET DA1
上述指令执行后,寄存器AX和BX的值分别为( AB12H,40H )。
26、下列数值表达式和地址表达式中,错误的是( D )。 DX
A.MOV AL,8*14+4 B.MOV SI,OFFSET BUF+13
C.MOV CX,NUM2-NUM1 D.MOV CX,NUM2+NUM1
27、数据段定义如下: DX
X1 DB 10H,50,1
X2 DW 10H,20,3
X3 DD ?
COUNT EQU X3-X1
变量COUNT的值是( 9 )。
28、为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序
列是( C )。 DX
A、INC CX JZ MINUS B、SUB CX,OFFFFH JZ
MINUS
C、AND CX,OFFFFH JZ MINUS D、XOR CX,OFFFFH JZ MINUS
29、AL和VAR字节单元中分别存放一个带符号数,执行CMP AL,VAR
时,如AL>VAR,那么溢出位和符号位 的关系是( OF=SF )。 DX
30、下面是关于汇编语言程序中使用RET的描述,不正确的是
( C )。 DX
A.每一个子程序中允许有多条RET指令。 B.每一个子程序结束
之前一定要有一条RET指令。
C.每一个子程序中只允许有一条RET指令。 D.以过程形式表示
的代码段,一定有RET指令存在。
31、在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件
是( CX=0或ZF=0 )。 DX
32、用MOV指令将十进制64以组合型BCD码格式送入AX,正确使用
的指令是( MOV AX,0604H )。 DX
38、当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶
标志位PF=1,下面的叙述正确的是( ④)。 DX
① 表示结果中含1的个数为偶数 ② 表示结果中含1的个数为奇数
③ 表示该数为偶数 ④ 表示结果中低八位含1的个数为偶数
39、AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是
( C ) DX
A.指令XOR AX,AX执行后,AX内容不变,但设置了标志位
B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0
C.指令AND AX,OFH执行后,分离出AL低四位
D.NOT AX,执行后,将AX清0
40、完成对CL寄存器的内容乘以4的正确操作是( C ) DX
A.ROL CL,1 B.MUL 4
ROL CL,1
C.SHL CL,1 D.MOV CL,2
SHL CL,1 SHL CL,CL
41、下面各传送指令中,正确的是( C ) DX
A.MOV [DI],[SI] B.MOV[DX+DI],AL C.MOV WORD PTR
[BX],0100H D.MOV AL,BX
42、要实现使BETA的值为56,应采用语句为( BETA EQU 56 ) DX
43、REPZ CMPSW指令,重复执行的终止条件是( CX=0或ZF=0 ) DX
44、下面程序段执行后,AL中的内容是( 21H ) DX
MOV AX,8833H
ADD AL,AH
DAA
45、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令
是(① )。 DX
① MOV AL,00H ② AND AL,00H ③ XOR AL,AL ④ SUB AL,AL
46、下列指令执行后总是使CF=0,OF=0的是( AND)。 DX
47、完成同指令XCHG AX,BX相同功能的指令或指令序列是(④ )。 DX
① MOV AX,BX ② MOV BX,AX
③ PUSH AX
POP BX
④ MOV CX,AX
MOV AX,BX
MOV BX,CX
48、设AH=0,AL=06H,BL=09H,执行指令
ADD AL,BL AAA
之后,其结果应是(AH=01,AL=05 )。 DX
49、设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别
执行后OF,CF的值为(OF=1,CF=1 )。 DX
50、在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件
是(CX=0或ZF=0 )。 DX
51、下面指令中,合理而有意义的指令是(④ )。 DX
① REP LODSB ② REP SCASB ③ REP CMPSB ④ REP MOVSB
52、在下列串操作指令中,同时使用源串和目的串地址指针的指令是
( D ) DX
A.STOSW B.LODSW C.SCASW D.CMPSW
53、AL=0AH,下列指令执行后能使AL=05H的是( C ) DX
A.NOT AL B.AND AL,0FH C.XOR AL,0FH D.OR AL,
0FH
54、DA1 DW‘AB’,‘CD’,‘EF’,‘GH’
┇
MOV AX,DA1+3
指令执行后AX中的内容是( ‘FC’ )。 DX
55、在汇编语言程序中,对END语句的叙述正确的是( ③)。
① END语句是一可执行语句 ② END语句表示程序执行到此
结束 ③ END语句表示源程序到此结束 ④ END语句在汇编后要产生机器码
56、下面的数据传送指令中,错误的操作是(④ )。 DX
① MOV SS:[BX+DI],1000H ② MOV DX,1000H ③ MOV WORD
PTR[BX],1000H ④ MOV DS,2000H
57、下面指令执行后,变量DAB中的内容是(0F5H )。 DX
DAW DW2A05H
DAB DB 0FAH
:
MOV AL,BYTE PRT DAW
SUB DAB,AL
59、设数据段中已有:
DA1 DB 12H,34H
DA2 DW 56H,78H
下面有语法错误的语句是(② )。 DX
① ADR1 DW DA1 ② MOV DA1+1,AX ③ MOV BYTE PTR DA2+1,AL
④ MOV WORD PTR DA1+1,AX
60、 DATA SEGMENT
TA1 DW 0102H,0304H,0506H
TA2 DB 02H,03H,04H
:
MOV BX,DS:[0006H]
AND BX,0FFH
AND BH,[BX]
上述指令序列运行后,BX的内容是( 0402H)。 DX
69、
ARY DW 10 DUP(?)
┇
MOV AL,TYPE ARY
MOV BL,LENGTH ARY
MOV CL,SIZE ARY
上述MOV指令序列执行后的结果是什么?
AL=2
BL=10
CL=20
70、设某数据段: JD
DATA SEGMENT
ORG 20H
NUM1=8
NUM2=NUM1+10H
DA1 DB 'COMPUTER'
DB 0AH,0DH
COUNT EQU $-DA1
DA2 DW'CO','MP','UT','ER'
DATA ENDS
试回答:(1)DA1的偏移地址是: 20H (2)COUNT的值是 0AH
(3)DA2+5字节单元的内容是 ‘U’的ASCII码_
71、已知
AX=0FF60H,CF=1
MOV DX,96
XOR DH,0FFH
SBB AX,DX
执行上述指令序列后,AX=_________0__________,CF=______0__________。 CXFX
74、假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条
指令单独执行后,DX中的值。 JD
(1)SHR DX,1 (2)RCR DL,1 (3)RCL DX,CL 答:(1)
005CH (2) 00DCH (3) 05CCH
77、在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在
子程序结束时要恢复这四个寄存器信息。例如: JD
PUSH AX\
PUSH BX \ 保护现场
PUSH CX /
PUSH DX/
:
}恢复现场
试写出恢复现场时的指令序列。
答:
POP DX
POP CX
POP BX
POP AX
85、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)上述程序段的功能是什么? CXFX
根据从键盘输入的字符‘1’~‘9’,确定在显示器上显示
STRING中第几个字符。(2)如从键盘输入字符‘4',程序段有什么结果?
显示器显示字符‘D’
86、已知:
BX=4567H
NEG BX
INC BX
NEG BX
DEC BX
程序段执行后,BX=____4565H___,CF=___1_____。 CXFX
87、已知数据段中定义
DAT1 DB 12H,34H,56H,78H
MOV CX,0
MOV AX,WORD PTR DAT1
MOV CL,DAT1+3 当程序段执行完后AX=___3412H____,CX=__0078H_____。 CXFX
88、DA1 DB 83H,72H,61H,94H,5AH
┇
MOV CX,WORD PTR DA1
AND CX,0FH
MOV AL,DA1+3
SHL AL,CL 上述指令序列执行后,AL=__0A0H____,CL=__03H____。 CXFX
89、现有如下程序段: CXFX
DATA SEGMENT DA3 EQU 1234H
ORG 0020H DA4 EQU $-DA2
DA1 DW 12H,23H DA5 DB 31H,32H
DA2 DB 11H,21H DATA ENDS
请回答:(1)该程序段已占有的存储字节数是多少?(2)符号名
DA4的值是多少?符号名DA5的值是多少?
答:(1) 该程序段已占有的存储字节数是8个字节。(2) 符号名DA4
的值为2,符号名DA5的值是0026H。
90、执行下列程序段后,回答问题。 CXFX
ORG 1221H MOV BX,OFFSET NUM
NUM DW 12H MOV CL,BYTE PTR NUM+1
„ MOV CH,TYPE NUM
MOV AX,NUM HLT
请问:(AX)=______,(BX)=______,(CX)=______。
答:(AX)=0012H (BX)=1221H (CX)=0200H
91、执行下列指令后AX、BX寄存器的内容? CXFX
MOV SI,10H
MOV AX,1234H
MOV [SI+12H],AX
LEA BX,[SI]
MOV [SI+14H],BX
答:AX为1234H,BX为22H
LES BX,DWORD PTR [SI+12H]
95、在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,
商和余数分别存入QU1和REM单元,请在空行处各填上一条指令完善该程序。 CXTK
┇
MOV AX,NUMW
____ MOV BX,500_________
XOR DX,DX
DIV BX
MOV QUI,AX
____ MOV REM,DX _________
96、已知数据段中定义
DAT1 DB 12H,34H,56H,78H
MOV CX,0
MOV AX,WORD PTR DAT1
MOV CL,DAT1+3
当程序段执行完后AX=___3412H _____,CX=___0078H _____。 CXFX
97、DA1 DB 83H,72H,61H,94H,5AH
┇
MOV CX,WORD PTR DA1
AND CX,0FH
MOV AL,DA1+3
SHL AL,CL
上述指令序列执行后,AL=___0A0H ____,CL=___03H ____。 CXFX
98、DA3 EQU WORD PTR DA4
DA4 DB 0ABH,89H
┇
SHR DA3,1
MOV DX,DA3
SHL DA4,1
MOV CX,DA3
上述程序段运行后,CX=____44AAH _____,DX=_____44D5H _______。 CXFX
第3章:8086汇编语言程序格式
1、指令JMP FAR PTR DONE属于(段间转移直接寻址)。 DX
2、下列叙述正确的是(C)。 DX
A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较
用CMPS指令
B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比
较用CMP指令
C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移
用JGE/JNL指令
D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移
用JAE/JNB指令
3、一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给
出这个数据区最末一个字单元的物理地址是(12C59H)。 DX
4、某存储单元的物理地址是12345H,可以作为它的段地址有( D ) DX
A.2345H B.12345H
C.12340H D.1234H
5、在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位
值送入AH中,对这进位值的操作应是(进位值在CF中,校正后根据CF内容再加在AH中) DX
6、执行后使BX=0的同时也使CF=0,OF=0的指令是( XOR BX,BX ) DX
7、在执行下列指令时,需要使用段寄存器DS的指令是( D ) DX
A.STOSW B.ADD AL,CL
C.NEG BX D.INC DA[BX]
8、无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,
应执行的指令是( OR BH,01H ) DX
9、比较两个带符号的数A、B,当A=B时程序转移,测试的条件为
( ZF=1 ) DX
10、使用DOS系统功能调用时,使用的软中断指令是( B ) DX
A.INT 21 B.INT 10H
C.INT 16H D.INT 21H
11、十六进制数0FFF8H表示的十进制正数为____+65528____,表示的
十进制负数为____-32760____。TK
12、CPU的标志寄存器中标志位,可以分为两大类,其中一类称为___状态_____标志位,另一类称为____控制____标志位。 TK
13、当标志位___CF___=1时表示无符号数运算产生溢出,而当标志位__ OF____=1是表示带符号数运算产生溢出。 TK
14、在程序执行过程中,IP寄存器中始终保存的是 (下一条指令的
首地址)。 DX
15、PSW寄存器中共有___6___位条件状态位,有___3___位控制状态
位。()。 DX
16、串指令中的目的操作数地址是由___ ES:[DI]___提供。
17、8086CPU在基址加变址的寻址方式中,变址寄存器可以为(SI或
DI)。 DX
18、什么叫寻址方式?常用的寻址方式有哪些? JD
答:寻址方式是指寻找指令中操作数所在地址的方法。
常用的寻址方式有:立即寻址、直接寻址、寄存器寻址、寄存器间接
寻址、变址寻址、基址加变址、隐含寻址等。
第4章:顺序程序设计
1、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能
形成条件的指令有( D )。
A、CMP B、SUB C、AND D、MOV
第5章:分支程序设计
1、检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是( JC LOP1 ) DX
2、下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,
横线处的指令应为( )。 DX
TEST BH,01H
__JNE_______K1
3、测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,
可实现的方法是( ②)。 DX
① TEST BL,4FH
JZ NEXT
② XOR BL,4FH
JZ NEXT
③ AND BL,4FH
JZ NEXT
④ OR BL,4FH
JZ NEXT
4、当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是
( JNLE)。 DX
5、
MOV BL,64H
MOV CL,03H
XOR AX,AX
AGAIN:ADD AL,BL
ADC AH,0
DEC CL
JNZ AGAIN
问:(1)该程序段完成的功能是:将AX内容乘3送BX中 CXFX
(2)AX=___012CH_____。
6、
MOV DL,AL
NOT DL
TEST DL,04H
JE NEXT
┇
NEXT:„
若上述程序段执行时产生分支,说明AL中的数第几位一定为1?
程序段执行后CF是多少? CXFX
第2位;CF=0
7、设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正
数送到PLW单元中存放,请将程序中所缺指令语句补上。 CXTK
TEST AX,8000H
__JE K1或JZ K1_________
MOV PLW,BX
JMP DONE
K1:__MOV PLW,A___________
DONE:
8、下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH
置0,否则AH置全1。试把空白处填上适当指令。 CXTK
___ XOR AH,AL____
AND AH,08H ____ JE ZERO_____
MOV AH,OFFH
JMP NEXT
ZERO:MOV AH,0
NEXT:„„
9、以BUF为首址的字节单元中,存放了COUNT个无符号数,下面程序
段是找出其中最大数并送入MAX单元中。 CXTK
BUF DB 5,6,7,58H,62,45H,127,„„
COUNT EQU $-BUF
MAX DB?
┇
MON BX,OFFSET BUF
MOV CX,COUNT-1
MOV AL,[BX]
LOP1:INC BX
____ CMP AL,[BX]_______ __
JAE NEXT
MOV AL,[BX]
NEXT:DEC CX _____ JNZ LOP1___________
MOV MAX,AL
12、
AND AL,AL
JZ BRCH1
RCR AL,1
JZ BRCH2
RCL AL,1
INC AL
JZ BRCH3
:
上述程序运行后,试回答: CXFX
(1)当(AL)=__0________时,程序转向BRCH1
(2)当(AL)=__1________时,程序转向BRCH2
(3)当(AL)=__-1________时,程序转向BRCH3
15、现有一子程序: CXFX
SUB1 PROC PLUS:TEST BL,80H
TEST AL,80H JE EXITO
JE PLUS XCHANGE:XCHG AL,BL
TEST BL,80H EXITO:RET
JNE EXITO SUB1 ENDP
JMP XCHANGE
试回答:
(1)子程序的功能是什么?
(2)若调用子程序前AL=9AH,BL=77H,则返回主程序时,
AL=______,BL=______。
答:(1)子程序的功能是判别AL和BL中的数是否为异号数,当为异号
时交换,否则不变。
(2) AL=77H, BL=9AH
17、阅读如下程序段,回答所提出的问题,假定X1,X2,XN为无符号数。 CXFX
ORG 100H
BLOK DW X1,X2,„,XN
COUNT EQU($-BLOLOK)/2
RESULT DW COUNT,?
LEA BX,BLOK-2
MOV CX,RESULT
XOR AX,AX
GOON:ADD BX,2
CMP AX,[BX]
JAE NEXT
MOV AX,[BX]
NEXT:LOOP GOON
MOV RESULT+2,AX
程序段执行完,回答下述问题
RESULT+2字存储单元的内容=______
BX=______
程序循环次数=______
答: RESULT+2字存储单元的内容是MAX(X1, X2, „ XN)
BX= 100H + 2×(COUNT-1)
程序循环次数= COUNT
18、下面程序的功能是什么? CXFX
MOV AX,X
CMP AX,Y
JGE LAB
XCHG AX,Y
LAB:MOV X,AX 答:选择X,Y中的较大值存入X中
19、某程序欲用单个字符显示的2号功能调用去显示STRING中的字符
串‘COMPUTER’(不显示字符‘$’!).试在空白处填上适当的一条指令。 CXTK
STRING DB‘COMPUTER’,‘$’
┇
MOV BX,0FFSET STRING
LOP:MOV DL,[BX]
MOV AH,02H
INT 21H
_____ INC BX_______________
_____CMP [BX],24H________
JNE LOP
20下面程序段是判断寄存器AH和AL中第3位是相同,如相同,AH置
0,否则AH置全1。试把空白处填上适当指令.CXTK
____ XOR AH,AL_______________
AND AH,08H _____ JE ZERO______________
MOV AH,OFFH
JMP NEXT
ZERO:MOV AH,0
NEXT:„„
21、在表TABLE处存放着N个无符号字节数,求表中前10个字节数的
总和并保存在AX寄存器中。如果总和值超过AX寄存器的容量,则置AX寄存器内容不变。请在程序中的空格处填入适当指令使其完整。 CXTK
LEA BX,TABLE (2)
MOV CX,10 JC END0
MOV SUM,AX DON:INC BX
MEXT: (1)
(3)
ADC AH,0 ENDO:HLT
JNC DON 答: (1) ADD AL, [BX] (2) MOV AX, SUM (3) LOOP
NEXT
22、试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字
母显示出来。 BC
答: BEGIN:MOV AH,1
INT 21H
CMP AL,’a’
JB STOP
CMP AL,’z’
JA STOP
SUB AL,20H
MOV DL,AL
MOV AH,2
INT 21H
JMP BEGIN
STOP:RET
26、下列程序片段用来分别统计ARRAY数组中奇数和偶数的个数。请
在空白处填写合适的指令。 CXTK
DATA SEGMENT
ARRAY DW 23ABH,1570H,567,1765H,46,5210H
COUNT EQU ($-ARRAY)/2
DA1 DB ?
DA2 DB ?
DATA ENDS
„„
LEA SI,ARRAY
MOV CX,COUNT
LOP1:MOV AX,[SI]
TEST AX,0001H
JZ LOP2
INC BL
JMP LOP3
LOP2:INC BH
LOP3: ADD SI,2
DEC CX
JNZ LOP1
MOV DA1,BL
MOV DA2,BH
第6章:循环程序设计
1、循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是(CX≠0且ZF=0) DX
2、循环指令LOOPNZ终止循环的条件是( CX=0,或ZF=1 )。 DX
4、下列描述中,执行循环的次数最多的情况是( A )。 DX
A.MOV CX,0 B.MOV CX,1
LOP:LOOP LOP LOP:LOOP LOP
C.MOV CX,0FFFFH D.MOV CX,256
LOP:LOOP LOP LOP:LOOP LOP
5、
DATA SEGMENT
S9 DB0,1,2,3,4,5,6,7,8,9
DATA ENDS
┇
LEA SI,S9
LEA,DI,S9+1
MOV CX,5
LOP: MOV AL,[SI]
XCHG AL,[DI]
MOV [SI],AL
ADD SI,2
ADD DI,2
LOOP LOP
上述程序段运行后,S9开始的10个字节存储单元内容是什么?
CXFX
S9 DB 1,0,3,2,5,4,7,6,9,8
6、实现将DX:AX中存放的32位数扩大四倍,正确的程序段是(③ )。 DX
① SHL AX,2
ROL DX,2
② RCL AX,2
SHL DX,2
③ MOV CX,2
LOP:SHL AX,1
RCL DX,1
LOOP LOP
④ SHL AX,1
SHL AX,1
RCL DX,1
RCL DX,1
7、在下列指令中, D 指令的执行会影响条件码中的CF位。 DX
A.JMP NEXT B.JC NEXT C.INC BX D.SHL AX,1
8、下列指令执行时出错的是(A)。 DX
A.ADD BUF1,BUF2 B.JMP DWORD PTR DAT [BX] C.MOV AX,
[BX+DI] NUM D.TEST AL,08H
9、在下列指令的表示中,不正确的是(C)。 DX
A.MOV AL,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D.MUL CL
10、在进行二重循环程序设计时,下列描述正确的是(A)。 DX
A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内
B.外循环初值应置外循环之内;内循环初值应置内循环之内
C.内、外循环初值都应置外循环之外
D.内、外循环初值都应置内循环之外,外循环之内
11、条件转移指令JNE的测试条件为(ZF=0)。 DX
12、执行如下程序:
MOV AX,0
MOV BX,1
MOV CX,100
A:ADD AX,BX
INC BX
LOOP A
HLT
执行后(BX)= (101)。 DX
13、上题的程序执行后(AX)= (5050)。 DX
14、对于下列程序段:
AGAIN:MOV AL,[SI]
MOV ES:[DI],AL
INC SI
INC DI
LOOP AGAIN
也可用__ REP MOVSB __指令完成同样的功能。 DX
15、
DA1 DB‘ABCDEFGHI’
DA2 DB 9 DUP(0)
┇
LEA SI,DA1
LEA DI,DA2
MOV CX,9
CLD
LOP: LODSB
SUB AL,10H
STOSB
LOOP LOP
. . .
试问:①写出程序执行后DA2各字节中的数据。 CXFX
②保持程序功能情况下,程序中 可否改写为
123456789;不能更改
16、程序段如下: CXFX
BLK1 DB 46,84,34,-5,20,122,73
:
MOV CX,7
LEA S1,BLK1
NEXT: MOV AL,[SI]
INC SI
TEST AL,81H
LOOPZ NEXT
MOV BL,[SI]
:
请回答程序段运行后:(AL)=___5或0FBH__
(BL)=___14H或20______
17、下面程序的功能是什么? CXFX
STRING DB 100 DUP(?)
MOV AX,SEG STRING
MOV DS,AX
LEA SI,STRING
MOV CX,100
LAB: MOV AL,[SI]
CMP AL,’a’
JB LAB1
CMP AL,’z’
JA LAB1
SUB AL,32
MOV [SI],A
LAB1: INC SI
LOOP LAB
将STRING里的小写字母’a’-‘z’转成相应的大写字母’A’-‘Z’
18、现有下列数据段: CXTK
DATA SEGMENT
STR1 DB‘ABCDEFGHIJKL'
COUNT EQU -STR1
BUF DB COUNT DUP(0)
DATA ENDS
下面程序段是实现把STR1中所有字符逆向传送到BUF缓冲区(即STR1中第一个字符送到BUF的最后一个单元,STR1中最后一字符送到BUF的第一个单元)。试把程序中所空缺的指令填上。
MOV SI,OFFSET BUF-1
MOV DI,OFFSET BUF
MOV CX,COUNT
___CLD_或 STD_____
LOOP:MOVSB
______ SUB SI,2__或____ ADD DI,2__
LOOP LOP
19、下述程序段完成计算2~20之间的偶数的和,并存于AX中。试把空白处填上适当的指令。 CXTK
XOR AX,AX
MOV BX,0
MOV CX,10或MOV CX,0AH
CONT: ADD AX,BX
ADD BX,2
LOOP CONT
20、BEG为起始地址的存储区域中存放有100个字节数据,现将其首、尾颠倒过来,重新排放这100个字节数据。请在程序中的空格处填入适当的指令使其完整。 CXTK
MOV CX,32H
LEA SI,BEG
MOV DI,SI
(1)
DON:MOV AL,[SI]
(2)
MOV [SI],AL
(3)
DEC DI
LOOP DON
HLT
答: (1) ADD DI, 99
(2) XCHG AL, [DI]
(3) INC SI
22、下述程序段完成计算2~20之间的偶数的和,并存于AX中。试把空白处填上适当的指令。 CXTK
XOR AX,AX
MOV BX,0
MOV CX,10或MOV CX,0AH
CONT: ADD AX,BX
ADD BX,2
LOOP CONT
相关文章
- 同济大学 选修课 大全
- 单元课题探究:对蜡烛及其燃烧进行的探究活动
- 星火专八预测答案及听力原文4
- 若水情的图书馆小学二年级数学文章集
- 拼音识字教学游戏大全
- 五年级班务工作计划,工作方案大全
- 中学物理教案.学案.试卷.课件.素材全集
- 高中班级公约大全
- 大一新生必备品大全
- 20**年九年级英语期末复习改写句子
我是你同济的学长哈哈,下面是我上过或者同学修过的一些选修课,仅供参考哈 按照课程的拼音排的序! A B 比较政治制度 赵萍丽,有时点名,课上随便玩,最后一节课一定要去,推荐. C 城市轨道交通系统概论 一学期点了4次名 基本5次点一次 期末 ...
单元课题探究:对蜡烛及其燃烧进行的探究活动 匿名投稿 给我留言 首页 教案中心 试题中心 课件中心 学科论文 范文大全 学生频道 中考频道 您现在的位置: 初中在线 >> 试题中心 >> 化学试题 >> ...
专八考试必备下载汇总(听力,人文,改错,词汇,阅读,真题)更新中 2011年英语专业八级考试必备资料下载(每日更新中) 以下为备战2011年英语专八考试新增的资料,每日更新中 2011年星火英语专八预测作文共12篇PDF 版下载(大家网首发 ...
小学二年级数学两位数乘法的巧算 小学二年级数学两位数乘法的巧算.对乘法要求以乘数是两位数的为主,一般不超过三位数.下面归纳总结出一些两位数乘法的巧算方法,以便提高学生的计算能力,增加灵活性.2. 两尾数相乘,作后两位数.6×4=24 作后两 ...
拼音识字教学游戏大全-幼儿园大班游戏教案拼音识字教学游戏大全第一种:游戏名称:开火车适用范围: 用于复习巩固拼音字母.音节.生字.词语等. 这个游戏适用范围比较广,所做准备也比较简单,这种游戏很适合课堂操作,能使全体学生兴奋起来.但比较适合 ...
五年级班务计划 一 班级基本情况分析: 本班共有学生28名,其中男生11人,女生17人.大部分学生胆子较大,个性淳朴.从语文学习情况来看,学生的语文基础知识薄弱,学生的学习习惯较差,语文自主学习能力较差,思维不够灵活.主要表现在:学习态度不 ...
山东省华侨中学2014-2015学年高一物理寒假作业(全套18份,含答案,全站免费)02-08 (苏科版)初中九年级物理全册导学案全集[52份打包,全站免费]01-31 (苏科版)初中九年级物理上册导学案全集[40份打包,全站免费]01-3 ...
班级公约( 班级公约(1) 为更好地对班级进行宏观管理,班委制定以下班级公约,敬请各位同学自 觉配合遵守. 一 行为规范 1 要求穿着校服,不允许佩带首饰,包括耳环,挂件,戒指,护身符,手链 等. 2 自觉遵守课堂纪律,认真听讲,做好必要笔 ...
大一新生必备品大全--<大学用品 >一.生活用品 1.脸盆 2.喝水的杯子 3.牙刷和牙膏(牙膏建议带家庭装的那种) 4.毛巾(我带三条,一条洗脸,一条洗脚,还有一条洗头用) 5.肥皂(洗衣服的)以及皂盒(建议用带盖子的) 6. ...
2015九年级英语上册总复习 题库大全 1. I had a wonderful time at the party. (改为感叹句) I had at the party! 2. This idea sounds so amazing. ...