汇编语言复习题(带答案)
汇编语言期末复习题 第1章:基础知识
1、在汇编语言程序的开发过程中使用宏功能的顺序是(C)。DX A、宏定义,宏调用B、宏定义,宏展开
C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用
2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是(B)。DX
A、名字项B、操作项C、操作数项D、注释项
3、可屏蔽中断就是它的请求是否被CPU响应要受(IF)的控制。DX 4、使用LINK连接命令,执行后可生成文件的扩展名为(EXE)。DX
5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在段中,段地址在SS寄存器中。TK
6、注释项用于说明程序段或是一条和几条指令的功能,一般用;(或分号)表示注释的开始。TK
7、DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送AH寄存器后执行INT21H。TK
8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。TK
9、CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。在此,称引起紧急事务的事件为中断源。TK 10、在字符串操作指令中,DS∶SI指向源串,ES∶DI指向目的串。TK 11、计算机系统通过接口与外围设备通信。TK
12、键盘I/O、显示I/O和打印I/O分别对应、和号中断。TK
13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。每个字的第一个字节为显示字符的ASCII码,第二个字节为显示字符的属性。TK 14、简述上机运行汇编语言程序的过程。JD
答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。 15、简述程序中指令和伪指令的区别。JD
答:能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一操作。 伪指令是对汇编起某种控制作用的特殊命令,其格式与通常的操作指令一样,并可加在汇编程序的任何地方,但它们并不产生机器指令。
16、十六进制数88H,可表示成下面几种形式,请找出错误的表示(④)。DX ①无符号十进制数136 ②带符号十进制数-120 ③压缩型BCD码十进制数88 ④8位二进制数-8的补码表示 17、指令指针寄存器是(IP)。DX
18、汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法(B)DX A.名字的第一个字符可以是大写英文字母及小写英文字母 B.名字的第一个字符可以是字母、数字及、@、_ C.名字的有效长度≤31个字符 D.在名字中不允许出现$
19、CS寄存器属于(段寄存器)。DX
20、已知物理地址(371F0H)=12H,(371F1H)=34H,(371F2H)=56H,如从地址371F0H中取出一个字的内容是(3412H)。DX
21、一个有16个字的数据区,它的起始地址是70A0H∶DDF6H,则这个数据区最末一个字单元的物理地址是(7E814H)。DX
22、简述上机运行汇编语言程序的过程。JD答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。 第2章:8086/8088的寻址方式和指令系统
1、下列指令属于基址加变址寻址方式的是(MOVDX,DS:[BP][SI])。DX
2、当程序顺序执行时,每取一条指令语句,IP指针增加的值是(D)。DX A.1B.2C.3D.由指令长度决定的 3、下列属于合法的指令是(D)DX
A.MOVDS,ESB.MOV[SI],[DI]C.MOVAX,BLD.MOV[DI],BL
4、若AX=349DH,CX=000FH。则执行指令ANDAX,CX后,AX的值是(000DH)。DX 5、设DS=8225H,DI=3942H,指令NEGBYTEPTR[DI]操作数的物理地址是(85B92H)DX 6、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是(B)DX A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS 7、对寄存器AX的内容乘以4的正确指令序列是(SHLAX,1SHL,AX, 1)。DX
8、执行INC指令除对SF、ZF有影响外,还要影响的标志位是(OF,AF,PF)。DX 9、设DH=10H,执行NEGDH指令后,正确的结果是(DH=0F0HCF=1)。DX 10、下列传送指令中有语法错误的是(A)。DX
A、MOVCS,AXB、MOVDS,AXC、MOVSS,AXD、MOVES,AX 11、下面指令执行后,改变AL寄存器内容的指令是(D)。DX A、TESTAL,02HB、ORAL,ALC、CMPAL,BLD、ANDAL,BL
12、执行除法指令后,影响的标志位是(AF,CF,OF,PF,SF,ZF都不确定)。DX 13、执行下面指令序列后,结果是(AX=0FF82H)。DX MOVAL,82H CBW
14、与MOVBX,OFFSETVAR指令完全等效的指令是(D)。DX A、MOVBX,VARB、LDSBX,VARC、LESBX,VARD、LEABX,VAR
15、在段定义时,如果定位类型用户未选择,就表示是隐含类型,其隐含类型是(PARA)。DX
16、MOVSP,3210H
PUSHAX执行上述指令序列后,SP寄存器的值是(320EH)。DX 17、BUFDW10HDUP(3DUP(2,10H),3,5)
上述语句汇编后,为变量BUF分配的存储单元字节数是(100H)。DX 18、MOVAH,7896H ADDAL,AH
上述指令执行后,标志位CF和OF的值是(CF=1,OF=0)。DX 19、完成将带符号数AX的内容除以2的正确指令是(SHRAX,1)。DX 20、在汇编语言程序中,对END语句的叙述正确的是(C)。DX A.END语句是一可执行语句B.END语句表示程序执行到此结束 C.END语句表示源程序到此结束D.END语句在汇编后要产生机器码
21、已知BX=2000H,SI=1234H,则指令MOVAX,[BX+SI+2]的源操作在(数据段中偏移量为3236H的字节)中。DX
22、下面指令序列执行后完成的运算,正确的算术表达式应是(y=x2-1)。DX MOVAL,BYTEPTRX SHLAL,1 DECAL
MOVBYTEPTRY,AL
23、已知(AX)=1234H,执行下述三条指令后,(AX)=(0000H)。DX MOVBX,AX NEGBX ADDAX,BX
A.1234HB.0EDCCHC.6DCCHD.
24、将DX的内容除以2,正确的指令是(C)。DX A.DIV2B.DIVDX,2C.SARDX,1D.SHLDX,1 25、有如下指令序列:DX
ORG40H
DA1DW0AB12H,8574H …… MOVAX,DA1 MOVBX,OFFSETDA1
上述指令执行后,寄存器AX和BX的值分别为(AB12H,40H)。 26、下列数值表达式和地址表达式中,错误的是(D)。DX A.MOVAL,8*14+4B.MOVSI,OFFSETBUF+13 C.MOVCX,NUM2-NUM1D.MOVCX,NUM2+NUM1 27、数据段定义如下:DX X1DB10H,50,1 X2DW10H,20,3 X3DD? COUNTEQUX3-X1
变量COUNT的值是(9)。
28、为使CX=-1时,转至MINUS而编制了一指令序列,其中错误的序列是(C)。DX A、INCCXJZMINUSB、SUBCX,OFFFFHJZMINUS C、ANDCX,OFFFFHJZMINUSD、XORCX,OFFFFHJZMINUS
29、AL和VAR字节单元中分别存放一个带符号数,执行CMPAL,VAR时,如AL>VAR,那么溢出位和符号位的关系是(OF=SF)。DX
30、下面是关于汇编语言程序中使用RET的描述,不正确的是(C)。DX
A.每一个子程序中允许有多条RET指令。B.每一个子程序结束之前一定要有一条RET指令。
C.每一个子程序中只允许有一条RET指令。D.以过程形式表示的代码段,一定有RET指令存在。