一、单项选择题从每小题的四个备选答案中,选出一个正确答案,并将正确答案的番号填人括号内。
1.用来存放下一条将要执行的指令地址的寄存器是(B)A.SP B.IP C.BP D.CS2.要使串处理从低地址向高地址进行,应把标志位置为(D)A.IF=1B.TF=0C.DF=1D.DF=03.使状态标志位CF清零的错误指令是(C)A.OR AX,AX B.SUB AX,AXC.MOV CF,0D.CLC4.设SP=1110H,执行PUSH AX指令后,SP的内容为(B)A.SP=1112H B.SP=110EHC.SP=1111H D.SP=110FH5.汇编源程序出现语法错误的指令有(D)A.MOV[BX+SI],AL B.MOV AX,[BP+DI]C.MOV DS,AX D.MOV CS,AX6.下列串操作指令中,必须同时指明源串和目的串地址的指令是(D)A.STOSW B.LODSWC.SCASW D.CMPSW7.设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是(B)A.SHR BL,1B.SHL BL,1C.SAR BL,1D.RCR BL,18.执行PUSH AX指令的正确步骤是(A)A.1.SP←SP-1,(SP)←AH B.1.(SP)←AH,SP←SP-12.SP←SP-1,(SP)←AL2.(SP)←AL,SP←SP-1C.1.SP←SP+1,(SP)←AH D.1.(SP)←AH,SP←SP+12.SP←SP+1,(SP)←AL2.(SP)←AL,SP←SP+19.CF=1时转移到目标地址的条件转移指令是(B)A.JNC B.JC C.JZ D.JS10.在执行NEG指令时,对标志位CF有影响,其影响的规则是(C)A.对正数求补时,CF=0B.对负数求补时,CF=0C.对非零数求补时,CF=1D.对零求补时,CF=111.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是(A)A.目的操作数最高位为0B.目的操作数最高位为1C.目的操作数为任意情况D.无论什么情况都不可能相同12.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是(D)A.AX=0032H B.AX=00E0HC.AX=03E0H D.AX=0FFE0H13.指令的操作数中,允许出现表达式,例如BUF1与BUF2均为变量名,下面指令中语法正确的是(D)A.MOV AX,BUFl*BUF2B.MOV AX,BUF1/BUF2C.MOV AX,BUF1+ES:BUF2D.MOV AX,BUF2-BUF114.下面指令中,操作数的寻址方式为寄存器间接寻址的指令是(C )A.INC WORD PTR [BX+SI]B.INC CX,[SI+COUNT]C.NEG BYTE PTR [BX]D.ADD AX,B15.NUM EQU 80HDA DB 34HAND DA,NUM上述语句执行后,DA 中的内容是(D )A.0B4H B.80H C.34H D.016.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为(A )A.立即、直接、间接B.直接、间接、立即C.直接、立即、间接D.不一定17.语句DA1DB 2DUP(3,5,7)汇编后,该语句可等同于的语句是(D )A.DA1DB 3,5,7B.DA1DB 2,3,5,7C.DA1DB 3,5,7,2D.DA1DB 3,5,7,3,5,718.MOV AL,80HMOV CL,2SAR AL,CL上述指令序列执行后,结果是(D )A.AL=40H B.AL=20HC.AL=0C0H D.AL=0E0H19.下面是实现将AL 内容加1的压缩型BCD 码加法程序段,其中正确的指令序列是(A )A.INC AL B.ADD AL,1DAA DASC.ADD AL,1D.STCDAA AAA20.现有数据存储如图所示:30100H 30101H 30102H 30103H 设AL=01H,BX=0100H,DS=3000H 执行换码指令XLAT 后正确的结果是(B )A.AL=20H B.AL=38HC.AL=00H D.AL=41H21.若定义DAT DW 'A',则(DAT)和(DAT+1)两个相邻的内存中存放的数据是(B )A.0041H B.4100H 20H38H41H55HC.xx41H D.41xxH[注]选项C.和D.中的XX表示任意数据。
22.假设VAR为变量,指令MOV BX,OFFSET VAR的寻址方式是(C)A.直接寻址B.间接寻址C.立即寻址D.存储器寻址23.下列指令中,不影响标志位的指令是(A)A.SUB BX,BX B.ROR AL,1C.JNC Label D.INT n24.假定(DS)=4000H,(DI)=0100H,(401OOH)=55H,(40101H)=AAH,试问执行指令LEA BX,[DI]后,(BX)=(C)A.0100H B.55AAHC.AA55H D.4100H25.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为(A) A.直接、立即、间接D.直接、间接、立即C.立即、直接、间接D.不一定?26.MOV AX,ES:[BX][SI]的源操作数的物理地址是(B)A.16×(DS)+(BX)+(SI)B.16×(ES)+(BX)+(SI)C.16×(SS)+(BX)+(SI)D.16×(CS)+(BX)+(SI)27.已知:VAR DW1,2,$+2,5,6若汇编时VAR分配的偏移地址是0010H,则汇编后0014H单元的内容是:(D)A.6H B.14H C.5H D.16H?28.PC机采用向量中断方式处理8级外中断,中断号依次为08H~0FH,在RAM0:002CH单元开始依次存放23H、FFH、00H和FOH四个字节,该向量对应的中断号和中断程序人口是(B) A.0CH,23FF:00F0H B.0BH,F000:FF23HC.0BH,00F0:23FFH D.0CH,F000:FF23H29.下列80X86指令中,不合法的指令是(D)A.IN AX,21H B.MOV BL,ALC.MOVSB D.SHL AX,630.执行下面的程序段后,(AX)=(B)DATA SEGMENTTAB DW1,2,3,4,5,6ENTRY EQU3DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:CODEMOV AX,DATAMOV DS,AX...MOV BX,OFFSET TABADD BX,ENTRYMOV AX,[BX]...A.0003H B.0300HC.0400H D.0004H31.下面指令中影响状态位CF的指令是(D)A.INC AX B.DEC AXC.NOT AX D.NEG AX32.判当CX=0时,转ZERO执行的错误指令是(D)A.CMP CX,0B.MOV AX,CXJZ ZERO JZ ZEROC.OR CX,CX D.JCXZ ZEROJZ ZERO33.执行1号DOS系统功能调用后,从键盘输入的字符应存放在(A) A.AL中B.BL中C.CL中D.DL中34.设数据定义如下:ARRAY DW1,2,3执行指令ADD SI,TYPE ARRAY相当于完成下面同等功能的指令是(B) A.ADD SI,1B.ADD SI,2C.ADD SI,3D.ADD SI,035.设数据定义如下:BUF DW100DUP(?)执行指令:MOV CX,LENGTH BUF相当于完成下面同等功能的指令是(D) A.MOV CX,00C8H B.MOV CX,0200HC.MOV CX,0064H D.MOV CX,0100H36.完成对字单元BUF的内容加1运算,下面错误的指令是(C) A.MOV BX,BUF B.MOV BX,OFFSET BUFINC BX INC WORD PTR[BX]MOV BUF,BXC.MOV BX,BUF D.MOV BX,0INC WORD PTR[BX]INC WORD PTR BUF[BX]37.完成对寄存器BX的内容求补运算,下面错误的指令是(D) A.NEG BX B.NOT BXINC BXC.XOR BX,0FFFFH D.MOV AX,0INC BX SUB AX,BX38.判当AX的内容为负数时,转MINUS执行,下面错误的指令是(D) A.NOT AX B.TEST AX,8000HJNS MINUS JNZ MINUSC.SHL AX,1D.OR AX,AXJC MINUS JZ MINUS39.下面指令序列执行后,正确的结果是(D)MOV AL,0FEHADD AL,ALADC Al,ALA.AL=0F8H B.AL=0F8HCF=1CF=0C.AL=0F9H D.AL=0F9HCF=0CF=140.现有数据存储如图所示:30100H30101H30102H30103H 设AL=01H,BX=0100H,DS=3000H 执行换码指令XLAT 后正确的结果是(D )A.AL=00H B.AL=4OHC.AL=01H D.AL=79H41、一个8位二进制数的补码为10001010,其原码的16进制形式为CA.-0AH B.-75H C.-76H D.8AH42、1号DOS 功能调用时,欲将得到的数字的ASCII 码转换为该数的实际数值时,可使用A 指令来实现。
A.AND B.OR C.XOR D.NOT43、设DS=8225H,DI=5678H,指令MOV AX,[DI]源操作数的物理地址是DA.8D89DH B.86198H C.8B698H D.878C8H44、指令JG LAB 是指当标志满足_B__条件时转移到标号LAB 处执行A.((SF XOR OF)OR ZF)=1B.(SF XOR OF)=0AND ZF=0C.(SF XOR OF)=0OR ZF=1D.CF =145、8086汇编语言中,BCD 码的运算是借用二进制数的运算指令并加以调整来实现的。
其中非压缩型BCD 码减法的调整指令为_C __A.AAA B.DAA C.AAS D.DAS46、除法指令中,对于双字除以字运算,商在_A __寄存器中。
A.AL B.AH C.AX D.DX47、MOV AX,COUNT[SI]的源操作数在_B __A.CS 段B.DS 段C.SS 段D.ES 段48、汇编程序至少必须有一个_A __A.CS 段B.DS 段C.ES 段D.SS 段49、LOOPNE 指令当满足_C __时执行循环操作。