《汇编程序复习题.doc》由会员分享,可在线阅读,更多相关《汇编程序复习题.doc(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1CPU要访问的某一存储单元的实际地址称()A段地址B偏移地址C物理地址D逻辑地址2某存储单元的物理地址是12345H,可以作为它的段地址有()A2345H B12345HC12340HD1234H3执行后使BX=0的同时也使CF=0,OF=0的指令是()AXOR BX,BXBOR BX,BXCAND BX,BXDCMP BX,BX4循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是()ACX0且ZF=1BCX0且ZF=0CCX0或ZF=1DCX0或ZF=05在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是()ADAA校正指令的功能已
2、自动加在AH中B进位值在AF中,校正后根据AF内容再加在AH中C进位值在CF中,校正后根据CF内容再加在AH中D进位值在AL最高位上,校正后根据AL最高位内容再加在AH中6AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是()A指令XOR AX,AX执行后,AX内容不变,但设置了标志位B指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C指令AND AX,OFH执行后,分离出AL低四位DNOT AX,执行后,将AX清07在执行下列指令时,需要使用段寄存器DS的指令是()ASTOSW BADD AL,CLCNEG BXDINC DABX8无论BH中原有的数是奇数或偶
3、数,若要使BH中的数一定为奇数,应执行的指令是()AADD BH,01HBOR BH,01HCXOR BH,01HDTEST BH,01H9完成对CL寄存器的内容乘以4的正确操作是()AROL CL,1 BMUL 4 ROL CL,1 CSHL CL,1 DMOV CL,2SHL CL,1 SHL CL,CL10下面各传送指令中,正确的是()AMOV DI,SIBMOVDX+DI,ALCMOV WORD PTR BX,0100HDMOV AL,BX11汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法( D )A名字的第一个字符可以是大写英文字母及小写英文字母B名字的第一个字符可以是字
4、母、数字及、_ C名字的有效长度31个字符D在名字中不允许出现$12要实现使BETA的值为56,应采用语句为( C )ABETA DB 56 BBETA DB 56HCBETA EQU 56 DBETA EQU 56H13REPZ CMPSW指令,重复执行的终止条件是( C )ACX=0或ZF=0 BCX=0且ZF=0CCX=0或ZF=1 DCX=0且ZF=114下面程序段执行后,AL中的内容是()MOV AX,8833HADD AL,AHDAAA21 B21HC0C1H D0DDH15比较两个带符号的数A、B,当A=B时程序转移,测试的条件为(A)AZF=1 BZF=0CSF=1 DSF=0
5、-CMP A,BA=BZF=1-16检查二个无符号数的关系,若要实现ALBL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是(B)AJNC LOP1 BJA LOP1CJC LOP1 DJGE LOP117在下列串操作指令中,同时使用源串和目的串地址指针的指令是(D)ASTOSW BLODSWCSCASW DCMPSW18设AL=0AH,下列指令执行后能使AL=05H的是(C)ANOT AL BAND AL,0FHCXOR AL,0FH DOR AL,0FHOF +AL =05H19DA1 DWAB,CD,EF,GH() MOV AX,DA1+3 指令执行后AX中的内容是
6、AEF BCDCBC DFC20使用DOS系统功能调用时,使用的软中断指令是()AINT 21 BINT 10HCINT 16H DINT 21H21.当执行ADD AX,BX指令后,若AX的内容为4E52H时,设置的奇偶标志位PF=0,下面的叙述正确的是( )A.表示结果中含1的个数是奇数 B.表示结果中含1的个数是偶数C.表示该数是奇数 D.表示结果中低8位中含1的个数是奇数22.设物理地址(21000H)=20H,(21001H)=30H,(21002H)=40H。如从地址21001H中取出一个字的内容是( D )A.2030H B.3040HC.3020H D.4030H23.转移指令
7、JMP NEAR PTR PROCA的转移范围是( A )A.8000H7FFFH B.7FFFH0FFFHC.80H7FH D.0FH7FH24.设CF=1,实现AL内容乘2的指令是( )A.RCL AL,1 B.SAR AL,1C.SHL AL,1 D.ROR AL,125.算术右移指令SAR和逻辑右移指令SHR,两条指令执行结果完全相同的条件是( )A.目的操作数最高位为0 B.目的操作数最高位为1C.目的操作数为任意情况 D.无论什么情况都不可能完全相同26.没有语法错误的输入指令是( )A.IN AL,30H B.IN 30H,ALC.IN DX,AL D.IN AL,BX27.与L
8、EA BX,BUF指令完全等效的指令是( )A.MOV BX, BUF B.LDS BX,BUFC.MOV BX,OFFSET BUF D.MOV BX,WOKD PTR BUF28.设有变量VAR和标号LAB,不正确的指令是( )A.LEA AX,VAR B.LEA AX,LABC.JMP NEAR PTR VAR D.JMP SHORT LAB29.设SP的初值为1000H,执行指令PUSH AX后SP的值是( )A.OFFFH B.1001HC.0FFEH D.1002H30.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是( )A.XOR AX,AX B.AND AX,AXC
9、.OR AX,AX D.TEST AX,031.在指令的操作数字段中,允许出现表达式,若BUF1与BUF2均为变量名,下面指令中正确的是( )A.MOV DX,BUF1*BUF2 B.MOV DX,BUF1/BUF2C.MOV DX,(BUF1*BUF2)-BUF1 D.MOV DX,BUF2-BUF132.汇编语言源程序,可以是( )A.可以直接由机器执行 B.必须由编译程序生成目标程序才能执行C.必须由解释程序生成目标程序才能执行D.必须由汇编程序汇编成目标程序才能执行33. ORG 200H BUF DB 12H,34H MOV AX, WORD PTR BUF上述指令语句执行后AX中的
10、内容是( )A.3412H B.1234HC.0200H D.0012H34.伪指令DA1 DB 04H DUP(3 DUP(2), 2 DUP(3)在数据区中能构成0203H操作数共有( ) A.07个 B.04个C.03个 D.02个35.设NUM1 EQU 100 NUM2= 64H下面指令执行后,使BL中为全1的指令是( )A.MOV BL,NUM1 EQ NUM2 B.MOV BL,NUM1 LT NUM2C.MOV BL,NUM1 NE NUM2 D.MOV BL,NUM1 GT NUM236.设非压缩BCD码(AL)=09H,(BL)=04H在执行SUB AL,BL指令后应选的校
11、正指令是( ) A.DAA B.AASC.DAS D.AAA37.设AX=9ABCH,DX=8765H PUSH AX PUSH DX POP AX POP DX上述4条指令执行后,AX,DX中内容分别是( )A.AX=9ABCH DX=8765H B.AX=9ABCH DX=9ABCHC.AX=8765H DX=8765H D.AX=8765H DX=9ABCH38.DA1 EQU WORD PTR DA2 DA2 DB OABH,OCDH SHL DA1,1 SHR DA2,1上述两条指令执行后,DA2中两字节单元内容分别是( ) A.0ABH,0CDH B.2BH,9BHC.4DH,57
12、H D.56H,9BH39.无条件转移指令JMP实现段间间接转移,转移的目标地址在( )A.某个字存储单元中 B.某个双字存储单元中C.某个16位通用寄存器中 D.两个16位通用寄存器中40.检查BUF单元的内容是否为正偶数,下面程序段正确的是( )A.MOV AL,BUF B.MOV AL,BUF JS K1 AND AL,11H SHR AL,1 JNE K1 JC K1 ;是正偶数 ;是正偶数 K1: K1: C.MOV AL,BUF D.MOV AL,BUF JNP K1 TEST AL,81H TEST AL,80H JNE K1 JNE K1 ;是正偶数 ;是正偶数 K1: K1:
13、41为在一连续的存储单元中,依次存放数据41H,42H,43H,44H,45H,46H,可选用的数据定义语句是() ADB 41,42,43,44,45,46 BDW 4142H,4344H,4546H CDW AB,CD,EF DDW BA,DC,FE 42DA2 DBAB,CD MOV AX,WORD PTR DA2+1 上述语句执行后AX中的值是() AAD BBC CDADCB 43下列数据定义语句中可实现留空20H个字节存储单元的是() ADB 20 DUP(?) BDW 20H DUP(?) CDB 10H DUP(4 DUP(?) DDD 08H DUP(?) 44如某存储器分段
14、时,表示偏移地址是17位二进制代码,那么一个段最多的存储单元数是() A32K字节 B32K字 C64K字节 D64K字 45下列寄存器中用来指示堆栈中任意数据区的偏移地址的是() ABXBBP CSI DDI 46下列指令中有语法错误的是() APUSH AX BPUSH 20H+SI+BX CPOP CS DPUSH CS 47执行PUSH BP指令时,目的操作数的物理地址表达式是() A16*SS+BP B16*DS+BP C16*CS+IP D16*SS+SP 48把BL中的数据输出到端口8CH中正确指令是() A OUT 8CH,BL BIN 8CH,BL C MOV AL,BL D
15、MOV AL,BL OUT 8CH,AL IN 8CH,AL 49结果为零的条件转移指令,其测试条件是() AZF=1 BZF=0 CSF=l DSF=0 50下面程序段完成测试DA-BYTE字节单元中数是否为负数,若是则将全l送DH中,否则全0送DH中,那么程序段中方框里应填的语句是 MOV CH,0 TEST DA-BYTE,80H MOV CH,0FFH ZERO:MOV DH,CH() AJNZ ZEROBJS ZERO CJZ ZERO DJC ZERO 51汇编源程序时,出现语法错误的语句是(A) AMOV BX+SI,BX BMOV CL,BP+DI CMOV CS,AX DMO
16、V DS,AX 52设SP初值为3050H,执行指令PUSH BX后,SP的值是() A304FH B304EH C3048H D3049H 53串操作指令中,每次操作后使SIDI为减量应设置() ADF=0 BTF=1 CDF=1 DTF=0 54设AL=57H,BL=24H,执行指令SUB AL,BL后,寄存器内容为() AAL=57H,BL=24H BAL=33H,BL=24H CAL=57H,BL=33HDAL=33H,BL=0 55. 当执行 ADD AX ,BX 指令后,若AX的内容为 4E52H 时,设置的奇偶标志位 PF=0 ,下面的叙述正确的是 ( )A. 表示结果中含 1
17、的个数是奇数 B. 表示结果中含 1 的个数是偶数C. 表示该数是奇数 D. 表示结果中低 8 位中含 1 的个数是奇数56. 设物理地址 (21000H)=20H, (21001H)=30H, (21002H)=40H 。如从地址 21001H 中取出一个字的内容是 ( D )A.2030H B.3040HC.3020H D.4030H57. 转移指令 JMP NEAR PTR PROCA 的转移范围是 ( )A.8000H 7FFFH B.7FFFH 0FFFHC.80H 7FH D.0FH 7FH58. 没有语法错误的输入指令是 ( )A.IN AL , 30H B.IN 30H, AL
18、C.IN DX , AL D.IN AL , BX 59. 设 SP 的初值为 1000H ,执行指令 PUSH AX 后 SP 的值是 ( )A.OFFFH B.1001HC.0FFEH D.1002H60. 设 SP 的初值为 1000H ,执行指令 POP AX 后 SP 的值是 ( )A.OFFFH B.1001HC.0FFEH D.1002H61. 汇编语言源程序,可以是 ( )A. 可以直接由机器执行 B. 必须由编译程序生成目标程序才能执行C. 必须由解释程序生成目标程序才能执行D. 必须由汇编程序汇编成目标程序才能执行62. 伪指令 DA1 DB 04H DUP(3 DUP(2
19、), 2 DUP(3) 在数据区中能构成 0203H 操作数共有( C ) A.07 个 B.04 个C.03 个 D.02 个63. 设 AX=9ABCH , DX=8765H PUSH AX PUSH DX POP AX POP DX上述 4 条指令执行后, AX , DX 中内容分别是 ( )A.AX=9ABCH DX=8765H B.AX=9ABCH DX=9ABCHC.AX=8765H DX=8765H D.AX=8765H DX=9ABCH64. 无条件转移指令 JMP 实现段间间接转移,转移的目标地址在 ( )A. 某个字存储单元中 B. 某个双字存储单元中C. 某个 16 位通
20、用寄存器中 D. 两个 16 位通用寄存器中65. 已知某操作数的物理地址是 2117AH ,则它的段地址和偏移地址可能是 ( ) 。 A.2025 0F2A B.2108 00EA C.2000 017A D.2100 117A 66. 某程序装入内存后,DS=1200H,CS=1400H,则程序中数据段中的数据最多是 ( ) 字节。 A.2K B.4K C.8K D.16K 67. 以寄存器 DI 间接寻址的存储器字节单元内容加 1 的指令是 ( ) 。 A.INC DI B.INC DI C.INC BYTE PTR DI D.ADD DI , 168. 有数据定义语句 BUF DW 0
21、ABH,1,10 DUP(3 DUP(1 , 0) , 2) 汇编后,为变量 BUF 分配的存储单元字节数是 ( B ) 。 A.48H B.90H C.120 D.6069. 下列指令执行后,不改变 AL 寄存器内容的指令是 ( ) 。 A.AND AL , 1 B.CMP AL , DL C.XOR AL , AL B ) 。 A.AND CX , 0F0H B.AND CX , 0FFF0H C.AND CX , 1110H D.MOV CX , 070. 当堆栈为空时,如 SS=0805H , SP=40H ,栈底字单元的物理地址是() A.08090H B.08089HC.0808E
22、H D.08450H71. 执行 POP BP 指令时,源操作数的物理地址表达式是() A.16*SS+SP B.16*SS+BP73. 执行 SUB AX , BPDI 指令,取源操作数时,使用的物理地址表达式是()A.16*SS+BP+DI B.16*ES+BP+DIC.16*DS+BP+DI D.16*CS+BP+DI74要输入端口 1234H 中的 8 位数据,其指令应是( ) A.MOV DX, 1234H B.MOV DX , 1234H OUT DX, AL 1N AL , DX C.1N AX , 1234H D.OUT DX , 1234H75 MOV AL , 79 ADD
23、 AL , 0B1H 上面指令执行后,设置的标志位 CF 和 OF 的值是( ) A.CF=0 , OF=0 B.CF=1 , OF=1 C.CF=0 , OF=1 D.CF=1 , OF=076下列指令执行后对源和目的操作数均无影响的是( ) A.MOV BX+2 , AX B.SUB AX , 2467H C.SBB SI , BX D.CMP AX , BX77设( SS ) =338AH ,( SP ) =450H ,执行 PUSH BX ,和 PUSHF 两条指令后,堆栈顶部的物理地址是( A ) A.33CECH B.33CF2H C.33CF4H D.33CE8H 78设( SP
24、 ) =0028H ,执行段内返回指令 RET后, SP 的内容是( ) A.0036H B.0022H C.0030H D.002AH 79. 下列寄存器组中在存储器操作数寻址时可用于提供偏移地址的是() A.AX , BX , CX , DX B.SP , BP , SI , DIC.CS , ES , DS , SS D.BX , BP , SI , DI80. 执行INC指令除对SF,ZF有影响外,还要影响的标志位为( )A. OF, AF, PF B. OF, AF, CFC. OF, PF, CF D. AF, PF, CF二、填空题18位补码表示十进制最大数为,表示的十进制最小数
25、为。2若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,countSI中,源操作数的有效地址EA为,其物理地址为。3汇编语言语句有指令语句, 语句和 语句 。4当标志位时表示运算结果为0,而当标志位是表示运算结果中1的个数为奇数。5如JMP指令采用段内直接转移,那么段内偏移量可以在(short) 和(near) 范围。6s label 类型 伪指令中 S为标号,则S有 类型和 类型7十六进制数0FFF8H表示的十进制正数为,表示的十进制负数为。8若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,SI+COUNT中,源操作数的有效地址EA为
26、,其物理地址为。9CPU的标志寄存器中标志位,可以分为两大类,其中一类称为标志位,另一类称为标志位。10当标志位时表示无符号数运算产生溢出,而当标志位是表示带符号数运算产生溢出。11如JMP指令采用段间间接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是,而后两个字节存放的是。12在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是或才有实际意义13. 8086/8088 存贮器地址分段时,每个段起始地址的特征是后四位二进制数为_ 。14. 假设执行前 AX=7862H ,指令 XOR AX , AX (表示异或,各位相异为1)执行后 AX 中的值是
27、 _ 。15. ARRAY DB 0 , 2 DUP(1 , 2) , 0 , 3 汇编时生成的数据依次是 _ 。16. 在存取一个存储器操作数时,段地址必须由段寄存器之一_ 提供。17. 在 8086/8088 系统中,存储器物理地址是分段组织的。堆栈段的段地址存放在 _ _ 寄存器中,栈顶数据的偏移地址放在 _ 寄存器中。代码段的段地址存放在 _ 寄存器中。偏移地址在 _ 寄存器中。 18. 有指令 MOV CL , N ,要使该指令合法,则 N 的最大值是 _ ,最小值是 _ 。 ( 用十进制数表示 ) 19. 已知 DS=29A0H ,某数据的物理地址是 2A400H ,则当 DS=6
28、700H 时,该数据的物理地址是 _ 。 20. 已知 DS=4000H , BX=0100H,SI=0004,(40100H)=28H,(40101H)=69H,(40104H)=10H, (40105H)=9AH, 先执行 MOV AX , 0100H , AX=_ 再执行 ADD AX , BX+SI , AX=_ , CF=_ 21. 逻辑地址由 _段地址和偏移地址_ 组成。22、DB指令以_ _为单位分配存贮;DD指令以_ _为单位分配存贮。故如下数据定义:V1 DB 4 DUP(2),2COUNT EQU 10V2 DD COUNT DUP(?)为变量V1分配_个字节存贮;为变量V
29、2分配_个字节存贮。23、设(CS)=25FFH,(DS)=2140H,(SS)=2510H,(BP)=02D0H,(SI)=0010H,(DI)=0206H,则(1)指令MOV AX,BP+SI+2的源操作数有效地址为_,物理地址为_(2)指令MOV AX,DI+100H的源操作数有效地址为_,物理地址为_.24 8086/8088CPU 允许最大的存储空间为 1MB ,因此CPU 的地址总线是_根,25. 一个语句的名字项可以是标号或变量,在程序中它们两个在书写形式上的主要区别是_ _。26. 内存0005CH处4个字节为D2,EF,00,F0,它是中断_的入口地址存放处,它表示该中断处理程序的起始地址为_ _:_ _。27. 若 CS为3000H,则当前代码段可寻址存储空间是 _三、名词解释1CPU主频:2伪指令:3寄存器间接寻址4数据总线:5寄存器相对寻址:6寄存器寻址7. 汇编源程序8、 标号9、 实模式10、堆栈
限制150内