汇编语言题库Word格式.docx
《汇编语言题库Word格式.docx》由会员分享,可在线阅读,更多相关《汇编语言题库Word格式.docx(30页珍藏版)》请在冰点文库上搜索。
指令①为直接寻址,指令②为直接寻址
11.下列指令中正确的是()。
AMOVBX,ALBMOVBL,AX
CMOVBL,ALDMOVBL,BP
12.下列指令中不合法的指令是()。
AINAX,03F8HBMOVBX,AX
CREPCMPSBDSHRBX,CL
13.下列指令中正确的是()。
AMOVSS,2400HBMOVSS,[2400H]
CMOVSS,DSDMOVSS,SP
14.下列指令中正确的是()。
AXCHGAH,ALBXCHGAL,20H
CXCHGDS,AXDXCHGSP,[20H]
15.下列指令中正确的是()。
AIN100H,ALBINAX,21H
COUT21H,AXDOUT260H,AL
16.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSHAX后,存放数据21H的物理地址是()。
A20102HB20101HC200FEHD200FFH
17.在下列指令中,有语法错误的是()。
AMOV[SI],[DI]BINAL,DX
CJMPWORDPTR[BX]DPUSHWORDPTR20[BX+SI-2]
18.两个有符号的整数A和B比较后,为了判定A是否大于B,应使用下列()条指令。
AJGBJACJNBDJNBE
19.下列程序段执行完后,BX寄存器中的内容是()。
MOVCL,3
MOVBX,0B7H
ROLBX,1
RORBX,CL
A002DHB00EDHCC02DHD000DH
20.执行下列程序:
MOVAX,0
MOVBX,1
MOVCX,100
A:
ADDAX,BX
INCBX
LOOPA
HLT
执行后的结果为:
(AX)=(),(BX)=().
A5050,99B2500,100C5050,101D2550,102
32.已知JNC指令的机器代码是73FCH(FC是根据条件转移确定的偏移量),CF=0,IP=1000H,试问执行该指令后,IP=()。
A0FFFHB10FEHC0FFEHD10FCH
33.满足转移指令JNE的测试条件是()。
AZF=1BCF=0CZF=0DCF=1
34.将累加器AX的内容清零的正确指令是()。
AANDAX,0BXORAX,BX
CSUBAX,BXDCMPAX,BX
35.逻辑位移指令SHR用于(),而算术位移指令SAR用于带符号数除2。
A带符号数减2B带符号数除2
C无符号数乘2D无符号数除2
36.对于下列程序段:
AGAIN:
MOVAL,[SI]
MOVES:
[DI],AL
INCSI
INCDI
LOOPAGAIN
也可用指令()完成同样的功能。
AREPMOVSBBREPLODSB
CREPSTOSBDREPESCASB
37.JMPWORDPTR[DI]是()。
A段内间接转移B段间间接转移
C段内直接转移D段间直接转移
39.执行下列指令后:
MOVAX,1234H
MOVCL,4
ROLAX,CL
DECAX
MOVCX,4
MULCX
寄存器AL的值是()。
A60HB00HC04HD08DH
40.下列程序执行后,(AL)=()。
MOVBX,5678H
ADDAL,BL
DAA
MOVCL,AL
MOVAL,AH
ADCAL,BH
A69HB78HC56HD34H
42.下面程序段中,当满足条件转到NEXT标号执行时,AL中的值正确的是()。
CMPAL,OFBH
JNLNEXT
……
NEXT:
AAL=80HBAL=8FHCAL=0F0HDAL=0FFH
43.对于下列程序段:
[DI],AL
可用指令()完成相同的功能。
AREPMOVSBBREPLODSBCREPSTOSBDREPESCASB
44.设AL和BL中都是带符号数,当AL≤BL时转至NEXT处,在CMPAL,BL指令后应选用正确的条件转移指令是()。
AJBEBJNGCJNADJNLE
45.使得JB指令执行转移操作的条件是()。
ACF=1BCF=1且ZF=0CZF=0DCF=0或ZF=1
46.在“先判断后工作”的循环程序结构中,循环执行的次数最少是()。
A1B0C2D不定
47.下列指令中,指令()先执行CX-1赋给CX操作,然后再根据CX的值决定是否转移、循环或进行重复操作。
AJNCBREPCJCXZDLOOP
48.指令LOOPZ的循环执行条件是()。
ACX≠0并且ZF=0BCX=0或ZF=0
CCX≠0并且ZF=1DCX=0或ZF=1
49.向量中断是()。
A外设提出中断
B由硬件形成中断服务程序入口地址
C由硬件形成向量中断地址,再由向量地址找到中断服务程序入口地址
D以上都不正确
50.寄存器间接寻址方式中,操作数在()中。
A通用寄存器B堆栈C主存单元D段寄存器
53.汇编语言语句格式中的名字项,下列哪一个不正确?
()
A.FFFFFHB.@VariableC.0FFFFHD.Third_street
54.下列语句中错误的有()
A.MOVBL,0A7HB.MOVCX,COUNT
C.MOV[BX],5D.INAL,PORT-VAL
55.()不是数值变量的类型属性。
A.字符型B.字型C.字节型D.双字型
56.用ASSUME伪指令指定某个段分配给那个寄存器后,还需要通过MOV指令来给段寄存器赋值,其中()不能这样做,而是在程序初始化时自动完成的。
A.数据段寄存器DSB.堆栈段寄存器SS
C.代码段寄存器CSD.附加段寄存器ES
58.下列哪一个伪指令对符号名可以重复定义()
A.=B.EQUC.DBD.PURGE
59.下面指令序列执行后的正确结果是()。
MOVBX,0FFFCH
MOVCL,2
SARBX,CL
A.3FFFHB.0FFFFHC.0FFFCHD.0FFF5H
60.一般用条件转移指令JZ、JNZ、JC、JNC等来实现程序的()结构。
A.顺序B.分支C.循环D.模块化
61.下列哪一种不是多分支程序设计的形式?
A.开关法B.转移表法C.地址表法D.逻辑分解法
62.下面程序段中,当满足条件转到NEXT标号执行时,AL中的值正确的是()。
CMPAL,0FBH
JNLNEXT
…
NEXT:
......
A.AL=80HB.AL=8FHC.AL=0F0HD.AL=0FFH
63.循环程序的基本结构形式不包括下面哪一部分?
A.循环参数置初值部分B.循环工作部分
C.循环控制部分D.设置段寄存器部分
64.数值计算中的反复迭代计算的过程是循环结构,该类问题使用()控制循环。
A.计数控制法B.条件控制法
C.开关控制法D.逻辑尺控制法
65.在循环设计中循环体的重复执行次数已知的情况下,一般采用哪种计数方法来控制循环?
A.正计数法B.倒计数法
C.两者相同D.两者都不是
66.子程序结构中不包括()。
A.子程序的说明文件B.子程序的现场保护和现场恢复
C.子程序的调用和返回D.入口参数的设置
68.DOS系统功能调用中,将子程序编号送入()寄存器。
A.AHB.ALC.BHD.BL
69.表达式19MOD7的结果为()。
A2B5C-2D-5
70.执行伪指令语句STRDD‘AB’后,下列说法正确的是()。
A存入41H,42HB存入42H,41H
C存入41H,42H,00H,00HD存入42H,41H,00H,00H
71.下列伪指令语句正确的有()。
AERR1:
DW99BEXPRDB2*3+7
CERR2DB25*60DERR3DD‘ABCD’
72.下列说法正确的是()。
SEGMENT与ENDS是段定义语句的伪指令,而ASSUME不是
SEGMENT和ENDS语句成对使用,把汇编语言源程序分为段
代码段中存放指令和伪指令,但不存放宏指令
SEGMENT与ENDS伪指令前的段名可以不同
74.程序设计的结构化的首要问题是()。
A程序的模块化
B程序设计时采用“自上而下,逐步求精”的实施方法
C模块之间的组合问题
D各个结构的出口点和入口点
75.下面指令序列执行后完成的运算,正确的算术表达式应是()。
MOVAL,BYTEPTRX
SHLAL,1
DECAL
MOVBYTEPTPY,AL
AY=2X+1BX=2Y+1CY=2X-1DX=2Y-1
77.实现“>
=”转移的伪指令是()。
AJAE/JNBBJBE/JNACJGE/JNLDJG/JNLE
78.在程序设计的实际应用中往往存在要重复执行的某些操作的一类问题,这类问题由()来解决。
A顺序结构程序B分支结构程序
C循环结构程序D以上都不是
79.下列说法中,错误的有()。
A内循环必须完整地包含在外循环中,内外循环不能相互交叉
B内循环在外循环中位置可根据需要任意设置
C从内循环中可以直接跳到外循环,从外循环也可以直接跳到内循环
D每次由外循环再次进入内循环中,初始条件必须重新设置
80.()是循环程序设计的一个核心问题。
A循环的控制B循环结构的选择
C循环体的设计D循环参数的置初值
81.循环体不包括下列哪项?
A重复操作的程序段B循环参数的修改
C循环控制参数的修改D循环参数置初值部分
82.如果在一个循环结构中包含若干个循环体,每个循环体对应一个条件,当满足某一条件后就执行对应循环体。
进行这种循环结构的程序设计,常用()。
A计数控制法B条件控制法
C开关控制法D逻辑尺控制法
83.下列说法错误的是()。
A子程序结构简化了程序设计过程,使程序设计时间大量节省
B子程序结构缩短了程序的长度,节省了程序的存储空间
C子程序结构不利于对程序的修改、调试
D子程序结构方便了程序的模块化、结构化和自顶向下的程序设计
84.()不是子程序的参数传递方法。
A立即数传递B寄存器传递
C堆栈传递D存储器传递
二、填空
3.设(AL)=45H,若是无符号数,它代表,若是带符号数,它代表,若是BCD数,它代表,若是ASCⅡ码,它代表
4.已知某机器数为10000000B,若为原码,它表示的十进制数是;
若为反码,它表示的十进制数是;
若为补码,它表示的十进制数是。
6.若累加器AX中的内容为4142H,执行指令CMPAX,4041H后,(AX)=。
执行SUBAX,4041H后,(AX)=。
7.若AL中的内容为7DH,下列指令单独执行后AL为:
(1)指令ANDAL,0FH后,AL=;
(2)指令ANDAL,0F0H后,AL=;
(3)执行指令ORAL,0FH后,AL=;
(4)执行指令ORAL,0F0H后,AL=;
(5)执行指令XORAL,0FH后,AL=;
(6)执行指令XORAL,0F0H后,AL=。
8.若AL=24H,CL=8,CF=1,执行ROLAL,CL指令AL=,CF=。
9.设堆栈指针SP的初值为2000H,AX=3000H,BX=5000H,试问:
(1)执行指令PUSHAX后SP=。
(2)再执行PUSHBX及POPAX后,SP=,AX=。
(3)最后执行POPBX后,SP=,BX=
10.已知程序段如下:
指令执行后,完成填空。
MOVAX,1234H;
(AX)=H,CF=,SF=,ZF=
MOVCL,4
ROLAX,CL;
DECAX;
MOVCX,4
MULCX;
(AX)=H,(DX)=H,CF=,SF=,ZF=
INT20H
11.已知:
(AX)=01CDH,(BX)=0AFH,(CX)=0BE02H,CF=1,写出单步执行每条指令时CF,ZF及相关寄存器的内容。
TESTAX,BX;
AX=01CDH,BX=0AFH
;
CF=,ZF=,(AX)=H,(BX0=H
ROLBX,CL;
(BX)=2BCH,(CL)=02H
CF=,ZF=,BX=H,CL=H
12.执行下列指令序列后完成的功能是将(DX,AX)的值。
MOVCX,04
NEXT:
SHRDX,1
RCRAX,1
LOOPNEXT
13.对于字除法指令,目的操作数存放在中,指令执行后,商放在,余数在中。
14.用CBW指令生成双倍长度的被除数存放在中,用CWD指令生成双倍长度的被除数存放在中。
15.在除法指令IDIVBX中,被除数隐含为。
16.在乘法指令MULWORDPTE[BX]中,被乘数隐含为,乘积在中。
17.执行XLAT指令前,要将表的首地址放在中,表内偏移地址放在。
18.若AL=34H,CL=4,CF=0,执行SALAL,CL指令后,AL=,CF=。
20.若DF=1,执行指令LODSB后,SI的内容会自动。
21.若CF=1,执行指令CMC后,CF=。
22.利用指令JO实现转移的条件为。
23.利用指令JZ后,程序顺序执行下一条指令的条件是。
24.执行指令JAE后,欲使程序跳转,条件为。
25.执行指令JNGE后,欲使程序跳转条件为。
26.写出以下指令中内存操作数的地址。
⑴MOVAL,[BX+5];
有效地址:
,物理地址。
⑵MOV[BP],AX;
⑶INCBYTEPTR[SI+3];
⑷MOVDL,ES:
[BX+DI];
⑸MOVBX,[BX+SI+2];
27.假设(BX)=0E3H,变量VALUE中存放的内容为76H,确定下列各条指令单独执行后的结果。
⑴XORBX,VALUE;
(BX)=H
⑵ANDBX,VALUE;
⑶ORBX,VALUE;
⑷XORBX,0FFH;
⑸ANDBX,0;
⑹TESTBX,01H;
28.试分析下列程序段:
ADDAX,BX
JNOL1
JNCL2
SUBAX,BX
JNCL3
JNOL4
JMPSHORTL5
如果AX和BX的内容给定如下,问该程序执行完后转向哪里?
AXBX
⑴147B80DC转向。
⑵B56854B7转向。
⑶42C8608D转向。
⑷D0239FD0转向。
⑸94B7B568转向。
29.有程序段如下,该程序段的功能是。
CLD
MOVCX,10
LEASI,FIRST
LEADI,SECOND
REPMOVSB
30.条件转移指令的目标地址应在本条件转移指令的下一条指令地址的字节范围内。
31.指令LOOPZ/LOOPE是结果为或相等发生转移的指令。
32.一个有16个字的数据区,它的起始地址为70A0:
DDF6,那么该数据区的最后一个字单元的物理地址为H。
33.假设(DS)=B000H,(BX)=080AH,(0B080AH)=05AEH,(0B080CH)=4000H,执行指令“LESDI,[BX]”后,(DI)=,(ES)=。
34.指令SAR可用来实现对数除2。
35.当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是。
36.令(AL)=98H,(BL)=12H,则执行指令MULBL后,(AX)=。
37.假设(SS)=2250H,(SP)=0140H,如果在堆栈中存入5个数据,则栈顶的物理地址为。
38.对于字节乘法指令,其目的操作数存放在中,而其源操作数可以用除立即数以外的任一种寻址方式。
其乘积为位,应存放在中。
39.执行以下程序段后,AX=。
MOVCX,5
MOVAX,50
SUBAX,CX
40.执行指令SUBAX,BX后,CF=1,说明最高有效位。
41.程序结构化的首要问题是,它是通过的手段来实现的。
42.程序由一些基本结构组成,这些基本结构包括、和。
43.8086/8088存储器结构要求存储空间分段使用。
因此,要分别定义、、和。
44.下面程序段完成将字变量OPR1转换成反码和补码分别存入自变量COMP和NEGA单元,将语句补充完整。
OPR1DW-XXXXXD
COMPDW?
NEGADW?
MOVAX,OPR1
(1)
MOVCOMP,AX
(2)
MOVNEGA,AX
45.用于控制重复执行的次数,一般是检测。
当循环结束条件不满足时,返回去继续循环体;
当循环结束条件满足时,退出循环执行循环结构外的。
46.在重复执行次数已知的情况下,采用来控制循环,它又可分为和。
47.对循环次数未知的循环结构,是最常用的一种控制方法。
该方法有两种形式,分别为和。
48.一个完整的子程序结构,必须包括、、。
49.汇编语言所操作处理的对象主要是,主程序调用子程序时,已经占用了一定的寄存器,子程序执行时又要使用寄存器,返回主程序后,又要保证主程序按原有状态继续正常执行,所以要对寄存器的内容加以保护即,子程序执行完毕后再恢复被保护寄存器的内容,即。
50.子程序是通过来定义的。
子程序的定义不仅要说明所定义子程序的,而且还应指出子程序的。
51.主程序传递输入参数和子程序传递输出参数的过程称为,实现该过程的方法有三种,它们分别为、和。
54.分析下面程序段,回答指定问题:
XORAL,AL
CALLSUBROUT
MOVBL,AL
RCRAL,1
SUBROUTPROCNEAR
NOTAL
JSNEXT
STC
RET
SUBROUTENDP
问:
程序运行后,AL=,BL=?
55.分析下面程序段,回答指定问题。
BUFDB0CH
MOVAL,BUF
CALLFARPTRHECA
HECAPROCFAR
CMPAL,10
JCK1
ADDAL,7
K1:
ADDAL,30H
MOVDL,AL
MOVAH,2
INT21H
HECAENDP
程序执行后,DL=,屏幕上显示输出的字符是。
56.程序执行的问题,在某些实时控制、跟踪等程序中显得特别突出。
57.循环结构有两种形式:
和。
59.利用流程图进行程序设计是一种最基本的方法,流程图