《汇编程序设计》试题及答案
- 格式:pdf
- 大小:481.86 KB
- 文档页数:45
《汇编语言程序设计》2012级复习试题及答案一.单项选择题:3.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法(B)A.名字的第一个字符可以是大写英文字母及小写英文字母;B.名字的第一个字符可以是字母、数字及、@、_ ;C.名字的有效长度≤31个字符;D.在名字中不允许出现$。
5.当程序顺序执行时,每取一条指令语句,IP指针增加的值是( D )。
A.1 B.2 C.3 D.由指令长度决定的6.下列属于合法的指令是( D )。
A.MOV DS,ES B.MOV [SI],[DI] C.MOV AX,BL D.MOV [DI],BL7.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( B )。
A.AX,BX,CX,DXB.BX,BP,SI,DIC.SP,IP,BP,DXD.CS,DS,ES,SS8.下列传送指令中有语法错误的是( A )。
A.MOV CS,AXB.MOV DS,AXC.MOV SS,AXD.MOV ES,AX10.与MOV BX,OFFSET VAR指令完全等效的指令是( D )。
A.MOV BX,VARB.LDS BX,VARC.LES BX,VARD.LEA BX,VAR11.在汇编语言程序中,对END语句的叙述正确的是( C )。
A.END语句是一可执行语句 B.END语句表示程序执行到此结束C.END语句表示源程序到此结束 D.END语句在汇编后要产生机器码12.将DX的内容除以2,正确的指令是(C)。
A.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,114.下列数值表达式和地址表达式中,错误的是( D )。
A.MOV AL,8*14+4 B.MOV SI,OFFSET BUF+13C.MOV CX,NUM2-NUM1 D.MOV CX,NUM2+NUM115.为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是( C )。
A.INC CX JZ MINUSB.SUB CX,OFFFFH JZ MINUSC.AND CX,OFFFFH JZ MINUSD.XOR CX,OFFFFH JZ MINUS17.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是( D)。
A.表示结果中含1的个数为偶数B.表示结果中含1的个数为奇数C.表示该数为偶数D.表示结果中低八位含1的个数为偶数18.完成对CL寄存器的内容乘以4的正确操作是( C )。
A.ROL CL,1 B.MUL 4ROL CL,1C.SHL CL,1 D.MOV CL,2SHL CL,1 SHL CL,CL19.下面各传送指令中,正确的是( C )A.MOV [DI],[SI] B.MOV[DX+DI],AL C.MOV WORD PTR [BX],0100H D.MOV AL,BX20.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(A )。
A.MOV AL,00HB.AND AL,00HC.XOR AL,ALD.SUB AL,AL22.下面指令中,合理而有意义的指令是(D )。
A.REP LODSBB.REP SCASBC.REP CMPSBD.REP MOVSB23.在下列串操作指令中,同时使用源串和目的串地址指针的指令是( D )。
A.STOSW B.LODSW C.SCASW D.CMPSW24.AL=0AH,下列指令执行后能使AL=05H的是( C )。
A.NOT AL B.AND AL,0FH C.XOR AL,0FH D.OR AL,0FH26.下面的数据传送指令中,错误的操作是(D )。
A.MOV SS:[BX+DI],1000HB.MOV DX,1000HC.MOV WORD PTR[BX],1000HD.MOV DS,2000H27.执行下列指令后,正确的结果是(B )。
MOV AL,100MOV BL,-2A. AL=100HBL=02HB. AL=64HBL=0FEHC. AL=64HBL=82HD. AL=100HBL=0FEH28.设数据段中已有:DA1 DB 12H,34HDA2 DW 56H,78H下面有语法错误的语句是(B )。
A.ADR1 DW DA1B.MOV DA1+1,AXC.MOV BYTE PTR DA2+1,ALD.MOV WORD PTR DA1+1,AX30.某存储单元的物理地址是12345H,可以作为它的段地址有( D )A.2345H B.12345HC.12340H D.1234H31.在执行下列指令时,需要使用段寄存器DS的指令是( D )A.STOSW B.ADD AL,CLC.NEG BX D.INC DA[BX]32.使用DOS系统功能调用时,使用的软中断指令是( B )A.INT 21 B.INT 10HC.INT 16H D.INT 21H33.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D )。
A.CMPB.SUBC.ANDD.MOV35.下列描述中,执行循环的次数最多的情况是( A )。
A.MOV CX,0 B.MOV CX,1LOP:LOOP LOP LOP:LOOP LOPC.MOV CX,0FFFFH D.MOV CX,256LOP:LOOP LOP LOP:LOOP LOP36.实现将DX:AX中存放的32位数扩大四倍,正确的程序段是(C )。
A. SHL AX,2ROL DX,2B. RCL AX,2SHL DX,2C. MOV CX,2LOP:SHL AX,1RCL DX,1LOOP LOPD. SHL AX,1SHL AX,1RCL DX,1RCL DX,137.在下列指令中, D 指令的执行会影响条件码中的CF位。
A.JMP NEXT B.JC NEXT C.INC BX D.SHL AX,138.下列指令执行时出错的是(A)。
A.ADD BUF1,BUF2 B.JMP DWORD PTR DAT [BX]C.MOV AX,[BX+DI] NUM D.TEST AL,08H39.在下列指令的表示中,不正确的是(C)。
A.MOV AL,[BX+SI] B.JMP SHORT DONI C.DEC [BX] D.MUL CL41.主程序和所调用的子程序在同一代码段中,子程序的属性应定义为( C )。
A.TYPE B.WORD C.NEAR D.FAR42.CPU发出的访问存储器的地址是( B )A.偏移地址B.物理地址C.逻辑地址D.段地址43.使计算机执行某种操作的命令是( C )A.伪指令B.标号C.指令D.助记符45.计算机处理问题中会碰到大量的字符.符号,对此必须采用统一的二进制编码。
目前,微机中普遍采用的是( D )码。
A. BCD码B.二进制码C.十六进制码D.ASCII码46.下列关于8086CPU的工作原理的描述错误的是( C )。
A.汇编程序员可以通过对各种寄存器中内容的修改实现对CPU的控制。
B.CPU在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。
C.任意时刻,CS:IP指向的内容即是此刻CPU正在执行的指令。
D.传送指令能够更改所有通用寄存器的内容。
48. 16位结构的CPU 不一定具备的特性是( C )。
A. 运算器一次最多可以处理16位的数据B. 寄存器的最大宽度为16位C. 地址总线为16根D. 寄存器和运算器之间的通路为16位49.下列指令的书写正确的是( C ) 。
A. push alB. mov cs:[0],ds:[10]C. pop siD. mov ds:[0],250.在DEBUG工具中,显示寄存器内容的命令是( D )。
A. GB. DC. TD. R52.若栈顶的物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为 ( D )。
A. 20098HB. 20102HC. 20100HD. 200FEH53.执行下列指令后AL寄存器中的值是( B )MOV AL, 0BFHOR AL, 0FCHA. 0ACHB.0FFHC. 0DCHD. 0BBH54.已知(DS)=2000H,(BX)=1256H,(SI)=528FH,则执行指令JMP BX后,IP寄存器的内容是( A )。
A. 1256HB. 2000HC. 3256HD. 528FH55.在程序执行过程中,IP寄存器中始终保存的是( B )A.上一条指令的首地址 B.下一条指令的首地址C.正在执行指令的首地址 D.需计算有效地址后才能确定地址58.下列关于堆栈的说法,错误的是(D )A.以“先入后出”为原则。
B.栈区最高地址单元的前一个单元为栈底。
C.运行中SP寄存器动态跟踪栈顶位置。
D.压栈和弹出都是以字节为单位。
59.关于8086/8088微机系列,下列说法哪个是正确的(D )A.一个存储单元由16个二进制位组成,简称字。
B.当存储一个字数据时,低字节放高地址位,高字节放低地址位。
C.在内存中,可以无限分配段,且段的大小不受限制。
D.段与段之间可以邻接,也可以重叠。
60.1KB的存储器有( B )个存储单元?A.1000 B. 1024 C. 512 D. 25661.下列程序中,出现逻辑错误的是( B )。
A. assume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcodeendB. assume cs:codecode segmentmov ax,2add ax,axcode endsendC. aume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcode endsendD. assume cs:codecode segmentmov ax,2add ax,axmov ax,4c00hint 21hcode ends62. 对于如下程序assume cs:codecode segmentstart:mov ax,codemov ds,axmov ax,0020hmov es,axmov bx,0s:mov al,[bx]mov es:[bx],alinc bxloop smov ax,4c00hint 21hcode endsend下列说法正确的是( C )。
A.指令mov ax,code改为mov ax,start对程序要实现的功能没有任何影响。
B.程序不能通过编译,因为在loop指令之前,没有对寄存器cx进行设定。