汇编语言期末试题
汇编语言复习题(带答案)
汇编语言复习题(带答案)汇编语言期末复习题第1章:基础知识1、在汇编语言程序的开发过程中使用宏功能的顺序是( C )。
DXA、宏定义,宏调用B、宏定义,宏展开C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。
DXA、名字项B、操作项C、操作数项D、注释项3、可屏蔽中断就是它的请求是否被CPU响应要受( IF )的控制。
DX4、使用LINK连接命令,执行后可生成文件的扩展名为( EXE )。
DX5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在堆栈段中,段地址在 SS 寄存器中。
TK6、注释项用于说明程序段或是一条和几条指令的功能,一般用;(或分号) 表示注释的开始。
TK7、DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送 AH 寄存器后执行INT 21H。
TK8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。
TK9、中断是CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。
在此,称引起紧急事务的事件为中断源。
TK10、在字符串操作指令中,DS∶ SI 指向源串,ES∶ DI 指向目的串。
TK11、计算机系统通过接口与外围设备通信。
TK12、键盘I/O、显示I/O和打印I/O分别对应 16H 、 10H 和 17H 号中断。
TK13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。
每个字的第一个字节为显示字符的 ASCII码,第二个字节为显示字符的属性。
TK14、简述上机运行汇编语言程序的过程。
JD答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。
汇编语言期末试题及答案
汇编语言期末试题及答案一、选择题(每题2分,共20分)1. 以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. CMPC. JMPD. CALL答案:A2. 在汇编语言中,以下哪个指令用于实现无条件跳转?A. JZB. JCC. JMPD. JS答案:C3. 假设当前数据段的偏移地址是1000H,那么以下哪个地址是有效的内存地址?A. 1000HB. 2000HC. 3000HD. 4000H答案:B4. 在汇编语言中,以下哪个寄存器用于存储当前指令的偏移地址?A. AXB. BXC. IP答案:C5. 假设AL寄存器的值为0F6H,执行指令AND AL, 0F0H后,AL寄存器的值是多少?A. 0F0HB. 0F6HC. 0F0HD. 00H答案:D6. 以下哪个指令用于将一个字节的值从寄存器移动到内存?A. MOVB. MOVSC. MOVZXD. MOVSX答案:A7. 在汇编语言中,以下哪个指令用于实现循环操作?A. LOOPB. JZC. JMPD. CALL答案:A8. 假设CS寄存器的值为1000H,IP寄存器的值为0100H,那么当前指令的物理地址是多少?A. 10000HB. 10100HC. 11000HD. 11100H9. 在汇编语言中,以下哪个指令用于实现子程序的调用?A. JMPB. CALLC. RETD. INT答案:B10. 假设DX寄存器的值为1234H,执行指令SHL DX, 1后,DX寄存器的值是多少?A. 2468HB. 1234HC. 0468HD. 0234H答案:A二、填空题(每题2分,共20分)1. 汇编语言中,指令MOV AX, [BX]表示将_________的值移动到AX寄存器中。
答案:BX寄存器指向的内存地址2. 汇编语言中,指令PUSH AX表示将AX寄存器的值压入_________。
答案:堆栈3. 汇编语言中,指令POP BX表示将堆栈顶的值弹出到_________寄存器中。
汇编语言期末试卷(答案).
汇编语言期末试卷一、单项选择题(每小题1分,共10分)1、十进制数269变换为十六进制数是(C)。
(A)10B (B)10C (C)10D (D)10E2、指令mov 100[si][bp],ax目标操作数的隐含段为(B)。
(A)数据段(B)堆栈段(C)代码段(D)附加段3、以下语句汇编后,CENTH的值是(C)buf1 dw 8,19buf2 db 6,'abc$',10 dup('5')CENTH equ buf2—buf1A.14B.8C.4D.174、若栈顶物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为(D)。
(A)20102H (B)20101H (C)200FFH (D)200FEH5、执行下列指令后,正确的结果是(B )。
MOV AL,100MOV BL,-2(A)AL=100H,BL=02H (B)AL=64H,BL=0FEH(C)AL=64H,BL=82H (D)AL=100H,BL=0FEH6、假定AX的内容为-32768,在执行了指令NEG AH后,标志位(SF,OF)为(D )。
(A)0,0 (B)0,1 (C)1,0 (D)1,17、设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为(B)。
(A)OF=1,CF=0 (B)OF=1,CF=1 (C)OF=0,CF=0 (D)OF=0,CF=18、当A≥B时转移的条件转移指令为(A,B为带符号数)(D )。
(A)JA (B)JAE (C)JG (D)JGE9、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(A)。
(A)MOV AL,00H (B)AND AL,00H(C)XOR AL,AL (D)SUB AL,AL10、已知CALL BX执行前SP=100H,执行后SP的内容为(D )。
(A)100H (B)102H (C)98H (D)0FEH二、填空题(每空1分,共10分)1、(00101011)B+(13)D+(1B)H=(123 )Q2、IBM PC机内存容量最大为(1M )B,要寻找这样大的空间,需要()根地址线。
汇编语言期末考试试题
汇编语言期末考试试题一、选择题(每题2分,共20分)1. 在汇编语言中,以下哪个指令用于将立即数或常量值送入寄存器?A. MOVB. ADDC. SUBD. MUL2. 汇编语言中的指令MOV AX, BX等价于以下哪个高级语言语句?A. AX = BXB. AX + BXC. AX - BXD. AX * BX3. 以下哪个指令用于将内存中的数据传送到寄存器?A. MOV AX, [BX]B. MOV [BX], AXC. ADD AX, [BX]D. SUB AX, [BX]4. 在汇编语言中,哪个指令用于实现无符号数的比较?A. CMPB. TESTC. JZD. JE5. 下列哪个指令用于实现条件跳转?A. JMPC. RETD. INT6. 汇编语言中的循环结构通常使用哪个指令来实现?A. LOOPB. JUMPC. JZD. JE7. 在汇编语言中,哪个指令用于实现子程序的调用?A. MOVB. CALLC. RETD. INT8. 汇编语言中的段寄存器CS用于存储什么?A. 数据B. 指令C. 代码段地址D. 堆栈地址9. 汇编语言中的指令PUSH AX和POP AX分别用于什么?A. 将AX寄存器的内容压入堆栈B. 将AX寄存器的内容弹出堆栈C. 将AX寄存器的内容加到堆栈D. 将AX寄存器的内容减去堆栈10. 在汇编语言中,哪个指令用于实现中断调用?A. INTB. IRETD. STI二、简答题(每题5分,共10分)1. 解释汇编语言中的立即寻址方式和直接寻址方式的区别。
2. 描述汇编语言中如何实现一个简单的加法程序。
三、编程题(每题15分,共30分)1. 编写一个汇编程序,实现将AX寄存器中的值与BX寄存器中的值相加,并将结果存储在CX寄存器中。
2. 设计一个汇编程序,实现从键盘接收一个字符,然后将其转换为ASCII码对应的十进制数值,并显示在屏幕上。
四、综合应用题(每题40分)编写一个汇编程序,实现一个简单的文本编辑器功能。
《汇编语言程序设计》期末复习题和答案.doc
《汇编语言程序设计》期末复习题及答案一、选择(30题)1.下列是8位带符号二进制数的补码,其中最大的是(B )。
B、000000012.在一段汇编语言程序中多次调用另一段程序,用宏指令比用子程序实现(C )C、占内存空间大,但速度快3.数据定义为:EE DB 3, 4CC DW 3456H, 6789H执行指令“MOV CX, WORD PTR EE+1” 后,(CX) = ( B )B、5604H4.有如下指令序列:MOV AL, 95HMOV CL, 2SAR AL, CL上述指令序列执行后,AL的内容是(D )D、0E5H5.设A=186m B=273R,C=0BB E把这三个数看成无符号数,则它们之间的关系是(D )D、A<B=C6.用一条指令实现寄存器BX和SI的内容相加,并将结果送入AX中,这条指令是(D )D、LEA AX, [BX] [SI]7.要从端口1234H中读入8位数据,其指令应是(C )C、MOV DX, 1234HIN AL, DX8.循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是(B )B、CX尹。
且ZF=O9.8088/8086存储器分段,每个段不超过(D )D、64K个字节10.表示过程定义结束的伪指令是(A )A、ENDP11.用来存放下一条将要执行的指令代码段地址的段寄存器是(D )D、CS12.假定(SS) =1000H, (SP) =0100H, (AX) =5609H,执行指令PUSH AX 后,存放数据56H的物理地址是(D )D、100FFH13.执行“SUB AX, [BP] [DI] ”指令,取源操作数时,使用的物理地址表达式是(A )A、16*SS+BP+DI14.设AX中有一带符号数8520H,执行“SA R AX, 1”指令后,AX中的值是(C )C、0C290H15.设(BX) =1234H, (DS) =2000H, (21234H) =5678H,则指令“LEA SI, [BX] ” 执行后的结果是:(B )B、SI=1234H16.测试BL中的数是否为负数,若为负数则转移至AA1处,横线处的指令应为(A )A、JNE17.设DF=O, (SI) =20H, (CX) =10,执行“REP LODSW"指令后,SI 中的内容是(C )C、34H18.在程序执行过程中,IP寄存器中始终保存的是(B )B、下一条指令的首地址19.设SP初值为2000H,执行指令“POP AX”后,SP的值是(A )A、2002H20.若AX=3500H, CX=56B8H,当AND AX, CX 指令执行后,AX= ( A )A、1400H21.汇编源程序时,出现语法错误的语句是(A )A、MOV DS, 1200H22.将数据1234H存放在存储单元中的伪指令是(C )C、DATA1 DB 34H, 12H23.下面指令执行后,可能改变AL寄存器内容的指令是(D )D、AND AL, BL24.操作数地址存放在寄存器的寻址方式称为(B )B、寄存器间接寻址25.用户为了解决自己的问题,用汇编语言所编写的程序,称为(B )B、汇编语言程序26.用DOS功能调用时,子功能调用的编号应放在(C )C、AH27.提供串指令中目的操作数地址的是(C )C、ES: [DI]28.在寄存器间接寻址方式下,能够提供有效地址的寄存器有(B )B、BX, BP, SI, DI29.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是(A )A、2025 : 0F2A30.中断向量表中的每个中断向量所占内存空间为:(B )B、4个字节二、填空(30题)1.在用直接寻址方式寻址操作数时,系统对段地址的默认值在段寄存器DS 中。
汇编期末考试题及答案
汇编期末考试题及答案试题:汇编期末考试题一、选择题(每题2分,共20分)1. 汇编语言中,用于定义常量的指令是:A. EQUB. DBC. DWD. DD2. 下列哪个指令用于将立即数送入累加器:A. MOV AX, 5B. MOV AL, 5C. MOV [100], 5D. MOV AX, [100]3. 在汇编语言中,哪个指令用于将数据从内存传送到寄存器:A. MOV AX, [BX]B. MOV [BX], AXC. MOV AX, BXD. MOV BX, AX4. 汇编语言中的循环结构通常使用以下哪个指令来实现:A. LOOPB. JUMPC. CMPD. RET5. 以下哪个指令用于将寄存器的内容清除为0:A. XOR AX, AXB. MOV AX, 0C. CLR AXD. SET AX, 06. 在汇编语言中,用于计算两个寄存器内容的和并存储结果的指令是:A. ADD AX, BXB. MOV AX, BXC. SUB AX, BXD. CMP AX, BX7. 下列哪个指令用于设置中断向量表:A. MOV AX, [100H]B. MOV [100H], AXC. MOV AX, @DATAD. MOV @DATA, AX8. 在汇编语言中,哪个指令用于无条件跳转:A. JMPB. JEC. JNED. JZ9. 汇编语言中,用于将寄存器的内容与立即数进行比较的指令是:A. CMP AX, BXB. MOV AX, BXC. ADD AX, BXD. SUB AX, BX10. 下列哪个指令用于将累加器的内容输出到屏幕上:A. OUT 0E0H, ALB. MOV AL, 0E0HC. MOV DX, 0E0HD. MOV AX, 0E0H二、简答题(每题5分,共20分)1. 解释汇编语言中的段寄存器的作用。
2. 描述汇编语言中堆栈的工作原理。
3. 解释汇编语言中的宏定义和条件编译指令。
汇编语言期末考试
一、单项选择题1、在汇编语言程序中,对END语句的叙述正确的是()。
A、END语句是一可执行语句B、END语句表示程序执行到此结束C、END语句表示源程序到此结束D、END语句在汇编后要产生机器码2、执行下列指令后,正确的结果是()。
MOV AL,100MOV BL,-2A、 AL=100H , BL=02HB、 AL=64H , BL=0FEHC、 AL=64H , BL=82HD、 AL=100H , BL=0FEH3、下面指令执行后,变量DAB中的内容是()。
DAW DW 2A05HDAB DB 0FAH┆MOV AL,BYTE PTR DAWSUB DAB,ALA、0DAHB、0FAHC、 0F5HD、0D0H4、将AX 中第三位置1,其它位保持不变的指令是()。
A、MOV AX,08HB、AND AX,08HC、OR AX,08HD、XOR AX,08H5、下面指令执行后,改变AL寄存器内容的指令是( )。
A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL6、编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( )。
A、CMPB、SUBC、ANDD、MOV7、下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为()。
TEST BH,01H________ K1A、JNEB、JZC、JSD、JC8、设DS=8225H,DI=3942H,指令INC BYTE PTR[DI]操作数的物理地址是( )A、85B92HB、86192HC、BB690HD、12169H9、下列程序段执行后BX和CX寄存器的内容等于()。
NUM3 EQU 10 LT 5NUM4 EQU 0AAAAH GT 7FFFMOV BX,NUM4 LT NUM3A、(BX)=0000HB、(BX)=0FFFFHC、(BX)=0001HD、(BX)=0FFH10、在段定义时,如果定位类型用户未选择,就表示是隐含类型,其隐含类型是( )。
汇编语言期末考试试题
汇编语言期末考试试题汇编语言期末考试试题汇编语言作为计算机科学专业的一门重要课程,对于学生来说是一项必修课程。
期末考试是对学生所学知识的综合考核,下面将为大家提供一些汇编语言期末考试试题,希望对大家复习和备考有所帮助。
一、选择题1. 汇编语言是一种低级语言,它与高级语言相比的主要优势是:A. 代码简洁易懂B. 可以直接操作硬件C. 可以实现更高的性能D. 更易于调试和维护2. 在汇编语言中,用于表示寄存器的符号是:A. #B. $C. @D. %3. 在8086汇编语言中,用于表示立即数的符号是:A. #B. $C. @D. %4. 在汇编语言中,用于表示寄存器间接寻址的符号是:A. []B. ()C. {}D. <>5. 在汇编语言中,用于表示寄存器的通用寄存器是:A. AXB. BXC. CXD. DX二、填空题1. 8086汇编语言中,用于将立即数存储到寄存器中的指令是________。
2. JMP指令用于实现无条件跳转,其操作码是________。
3. MOV指令用于将数据从源操作数传送到目的操作数,其操作码是________。
4. 在8086汇编语言中,用于将数据存储到内存中的指令是________。
5. 在汇编语言中,用于表示标号的符号是________。
三、编程题请编写一个8086汇编语言程序,实现将一个数组中的所有元素相加,并将结果存储在指定的寄存器中。
解答:```DATA SEGMENTARR DB 1, 2, 3, 4, 5LEN EQU $-ARRSUM DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART:MOV AX, DATAMOV DS, AXMOV CX, LENMOV SI, 0MOV AL, 0ADD_LOOP:ADD AL, ARR[SI]INC SILOOP ADD_LOOPMOV SUM, ALMOV AH, 4CHINT 21HCODE ENDSEND START```本程序首先定义了一个数据段,其中包括一个数组ARR和数组长度LEN,以及一个用于存储结果的寄存器SUM。
汇编语言a期末考试试题及答案
汇编语言a期末考试试题及答案汇编语言A期末考试试题及答案一、选择题(每题2分,共20分)1. 以下哪个指令用于将立即数加载到寄存器中?A. MOVB. ADDC. SUBD. JMP答案:A2. 在汇编语言中,哪个指令用于将一个寄存器的内容复制到另一个寄存器?A. MOVB. PUSHC. POPD. CMP答案:A3. 假设CS:IP指向当前执行的指令,那么DS:SI指向的是?A. 源地址B. 目的地址C. 下一条指令D. 前一条指令答案:A4. 以下哪个指令用于将一个字节的值从内存加载到寄存器?A. MOVC. MOVZXD. MOVSX答案:A5. 在汇编语言中,哪个指令用于比较两个寄存器的值?A. CMPB. TESTC. ANDD. OR答案:A6. 假设AL寄存器的值为0x0F,执行指令SHL AL, 1后,AL的值是多少?A. 0x0EB. 0x1EC. 0x07D. 0x1F答案:B7. 在汇编语言中,哪个指令用于无条件跳转到指定的地址?A. CALLB. JMPC. RETD. INT答案:B8. 以下哪个指令用于将寄存器的内容推送到堆栈中?A. PUSHB. POPC. CALL答案:A9. 假设CF标志位为1,执行指令RCL AX, 1后,AX的值会如何变化?A. 左移一位B. 右移一位C. 循环左移一位D. 循环右移一位答案:C10. 在汇编语言中,哪个指令用于将一个字节的值从寄存器移动到内存?A. MOVB. MOVSC. MOVZXD. MOVSX答案:A二、填空题(每题4分,共20分)1. 在汇编语言中,指令MOV AX, 1234H的结果是将____值加载到AX寄存器中。
答案:1234H2. 指令PUSH AX的作用是将AX寄存器的内容压入到____中。
答案:堆栈3. 指令AND AX, BX的结果是将AX和BX寄存器的值进行____操作。
答案:逻辑与4. 指令JMP 0100H的作用是跳转到内存地址____执行指令。
汇编语言期末试卷及答案
汇编语言期末试卷及答案一、单项选择题1、CPU发出的访问存储器的地址是(A)。
A.物理地址B.偏移地址C.逻辑地址D.段地址2、下列指令中操作数在代码段中的是(A)。
A.MOV AL,42HB.ADD AL,BLC.SUB [BX],DID.INC [DI]3、与MOV BX,OFFSET VAR指令完全等效的指令是(D)。
A.MOV BX,VARB.LDS BX,VARC.LES BX,VARD.LEA BX,VAR4、表示过程定义结束的伪指令是(A)。
A.ENDPB.ENDSC.ENDD.ENDM5、BUF1 DB 3 DUP(0,2 DUP(1,2),3)COUNT EQU $ - BUF1符号COUNT等价的值是(B )。
A.6B.18C.16D.86、下列寄存器中,作为16位寄存器的是(D)。
A. ALB. BLC. CHD.DX7、在程序运行过程中,确定下一条指令的物理地址的计算表达式是(C)。
A.DS*16+SIB. ES*16+DIC. CS*16+IPD. SS*16+SP8、物理地址(10FF0H )=10H,(10FF1H )=20H,(10FF2H )=30H,从地址10FF1H中取一个字的内容是(B)。
A.1020HB.3020HC.2030HD.2010H9、将AX 清零,下列指令错误的是(C)。
A.SUB AX,AXB.XOR AX,AXC.OR AX,00HD.AND AX,00H10、完成同指令XCHG AX,BX相同功能的指令或指令序列是(D)。
A. MOV AX,BXB. MOV BX,AXC. PUSH AXD. MOV CX,AXPOP BX MOV AX,BXMOV BX,CX11、JMP BX 的目标地址的偏移量为(A)。
A. BX 的内容B. BX 所指向的内存单元的内容C. IP + BX 的内容D. IP + [BX]12、可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是(D)。
期末汇编语言试题及答案
1. 十进制数369转换成二进制数为(101110001)2,转换成十六进制数为(171)16.2. 计算机中的指令由(操作码)和(地址码)两部分组成。
3. 8086的地址总线有20根,寻址范围为(1M )字节。
4. 下一条将要执行的指令的地址存放在寄存器(指令指针寄存器)中。
5. 写出IBM PC机的三种子程序返回的指令(RET), (IRET),(IRETD)。
6. 汇编语言源程序需经过(汇编)程序汇编,(连接)程序连接才能生成可执行文件。
7. 存储器某单元的地址表示为2314H:4132H,则它的偏移地址=(4132),物理地址=(27272H)8. REP指令前缀与(字符串)指令配合使用。
9. 在显示器上查看和修改内存单元的内容可以使用DEBUG的(D )和(E )命令。
10. (AL)=BFH,要求屏蔽第0,1两位,则要执行指令(AND AL,3F );如果要求第0,1位变反,可使用指令(XOR AL,3F )11. 宏汇编适合于(程序短),(参数多)的子功能段使用;二、选择题1. 设字长N=16,有符号数7AE9H的补码表示为( D )A.9EA7H B. 76C4H C. 8417H D. 7AE9H2. 比较有符号数3260H与0B425H的大小关系为( C )A. 相等B. 小于C. 大于D. 不能比较3. 指令JMP WORD PTR [BX][DI]中转移的目标地址为( A )A.16 d x(DS)+(BX)+(DI) B.16d x(ES)+(BX)+(DI)C.16d x(SS)+(BX)+(DI) D.16d x(CS)+(BX)+(DI)4. 在指令MOV AX,[1000H]中,源操作数的寻址方式为( B )A.立即寻址 B.直接寻址 C.段内间接寻址 D.寄存器寻址5. 中断矢量表中存放的是( D )A. 中断类型号B. 断点地址C. 中断服务程序D. 中断服务程序入口地址6. 8086 的汇编语言指令系统中的条件转移指令可以使程序转移到( A )A. 段内的任何地方B. 距该指令偏移地址为-32768~+32767的地方C. 距该指令偏移地址为-128~+127的地方.D. 段外7. 能定义ASCII码字符串的数据定义语句有( D )A. DB,DW,DD,DQ,DTB. DB,DW,DDC. DB, DWD. DB;8. 若(AL)=87H,执行ADD AL,0F5H后,S,Z,C,O,P的状态为( C )A.SF=0,ZF=0,CF=1,OF=1,PF=0 B.SF=1,ZF=0,CF=1,OF=0,PF=1C.SF=0,ZF=0,CF=0,OF=1,PF=0 D.SF=1,ZF=0,CF=1,OF=1,PF=19. 比较指令CMP( D )A. 专用于有符号数比较B. 专用于无符号数比较C. 专用于串比较D. 不区分比较的对象是有符号数还是无符号数10. 数据传送指令对标志位的影响为( D )A.都不影响; B.都影响;C.除了SAHF,POPF,其它均不影响. D.除了控制标志位,其它均不影响三、判断题( )31. 段间调用的子程序必须由伪操作FAR说明为远过程。
汇编语言期末复习题大全(免费)
汇编语言期末复习题DX:单项选择题 DU:多项选择题 TK:填空题 MC:名词解释v JD:简答题 CXFX:程序分析题 CXTK:程序填空题 BC:编程题第1章:基础知识1、在汇编语言程序的开发过程中使用宏功能的顺序是( C )。
DXA、宏定义,宏调用B、宏定义,宏展开C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。
DXA、名字项B、操作项C、操作数项D、注释项3、可屏蔽中断就是它的请求是否被CPU响应要受( IF )的控制。
DX4、使用LINK连接命令,执行后可生成文件的扩展名为( EXE )。
DX5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在堆栈段中,段地址在 SS 寄存器中。
TK6、注释项用于说明程序段或是一条和几条指令的功能,一般用;(或分号) 表示注释的开始。
TK7、DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送 AH 寄存器后执行INT 21H。
TK8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。
TK9、中断是CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。
在此,称引起紧急事务的事件为中断源。
TK10、在字符串操作指令中,DS∶ SI 指向源串,ES∶ DI 指向目的串。
TK11、计算机系统通过接口与外围设备通信。
TK12、键盘I/O、显示I/O和打印I/O分别对应 16H 、 10H 和 17H 号中断。
TK13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。
每个字的第一个字节为显示字符的 ASCII码,第二个字节为显示字符的属性。
TK14、简述上机运行汇编语言程序的过程。
JD答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。
(word版)汇编语言期末考试试题及答案
汇编语言模拟试题及答案一,单项选择题〔在每题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每题1分,共20分〕1.指令JMPFARPTRDONE 属于参考答案为:CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址[解析]略2.以下表达正确的选项是参考答案为:CA.对两个无符号数进行比拟采用CMP指令,对两个有符号数比拟用CMPS指令B.对两个无符号数进行比拟采用CMPS指令,对两个有符号数比拟用CMP指令C.对无符号数条件转移采用JAE/JNB 指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令[解析]对于无符号数和有符号数的比拟都采用CMP指令;CMPS指令是串比拟指令;对两个无符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个有符号数的条件转移指令应是:JGE、JNL、JLE、JNG。
3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:CA.12CSBHB.12B6BHC.12C59HD.12BFEH[解析]末字与首字相隔〔128-1=〕127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址+〔128-1〕×2即12ABH×10H+00ABH+〔128-1〕×2=12C59H。
4.在以下指令的表示中,不正确的选项是参考答案为:CA.MOVAL,[BX+SI]B.JMPSHORTDONIC.DEC[BX]D.MULCL[解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的[BX],没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DECBYTEPTR[BX] 或DECWORDPTR[BX]但是在题目的选项C中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
计算机汇编语言期末试题三篇
计算机汇编语言期末试题三篇篇一:计算机汇编语言期末试题一、选择题:(2×15,共30分)1.下面有语法错误的指令是()A. MOV AX,[BX][SI]B.MOV AX,-2[BX][DI]C. MOV AX,[BX][BP]D.MOV AX,-1[BX][SI]2.对寄存器AX的内容乘以4的正确指令序列是( )。
A.SHR AX,1 /SHR AX,1B.SHL AX,1/ SHL,AX,1C.ROL AX,1 /ROL AX,1D.RCR AX,1/ RCR AX,13.设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( ) A.85B92H B.86192H C.BB690H D.12169H4.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )A.AX,BX,CX,DXB.BX,BP,SI,DIC.SP,IP,BP,DXD.CS,DS,ES,SS5.循环指令LOOPNZ终止循环的条件是( )。
A.CX=0,且ZF=0B.CX=0,或ZF=1C.CX10,且ZF=0D.CX10,或ZF=16.汇编语言语句格式中,对名字项的规定,请指出错误的解释()A. 名字的第一个字符只可以是大小写英文字母及?、@、__等B. 名字的第一个字符可以是大小写英文字母、数字、?、@、__等C. 名字的有效长度≤31个字符D. 名字从第二个字符起可以出现数字,但不允许出现$、#等字符7.在汇编语言程序的开发过程中使用宏功能的顺序是( )。
A.宏定义,宏调用B.宏定义,宏展开C.宏定义,宏调用,宏展开D.宏定义,宏展开,宏调用8.假设执行ADD指令后AX=006EH,再执行AAA指令,AX中的值是()A. 14H B. 0104H C. 74H D. 04H9.用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是()A. MOV AX,89B. MOV AX,0809C. MOV AX,89HD. MOV AX,0809H10.下列语句中能与“DA1 DB 32H,34H”语句等效的是( )A. MOV DA1,32HB. MOV DA1,32C. MOV WORD PTR DA1,3234HD. MOV WORD PTR DA1,‘24’MOV DA1+1,34H MOV DA1+1,3411.使用DOS功能调用时,子程序的编号应放在寄存器中()A. AHB. ALC. AXD. 任意指定12.下列语句中能实现留空8个字节单元的语句是()A. DA1 DT ?B.DA2 DW ?,?C. DA3 DD ?D.DA4 DQ ?13.汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( )。
汇编语言期末考试卷[1]
汇编语言期末考试卷[1]汇编语言期末考试卷一、选择题1、某存储单元的物理地址是12345H,可以作为它的段地址有(D )A.2345H B.12345HC.12340H D.1234H2.执行后使BX=0的同时也使CF=0,OF=0的指令是(A )A.XOR BX,BX B.OR BX,BXC.AND BX,BX D.CMP BX,BX3.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是( B )A.CX≠0且ZF=1 B.CX≠0且ZF=0C.CX≠0或ZF=1 D.CX≠0或ZF=04.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应B )A.ADD BH,01H B.OR BH,01HC.XOR BH,01H D.TEST BH,01H5、完成对CL寄存器的内容乘以4的正确操作是( C )A.ROL CL,1 B.MUL 4ROL CL,1C.SHL CL,1 D.MOV CL,2SHL CL,1 SHL CL,CL6、下面各传送指令中,正确的是( C )A.MOV [DI],[SI] B.MOV [DX+DI],AL C.MOV WORD PTR [BX],0100H D.MOV AL,BX7、REPZ CMPSW指令,重复执行的终止条件是( A )A.CX=0或ZF=0 B.CX=0且ZF=0C.CX=0或ZF=1 D.CX=0且ZF=18、比较两个带符号的数A、B,当A=B时程序转移,测试的条件为( A )A.ZF=1 B.ZF=0C.SF=1 D.SF=09、在下列串操作指令中,同时使用源串和目的串地址指针的指令是( D )A.STOSW B.LODSWC.SCASW D.CMPSW10、设AL=0AH,下列指令执行后能使AL=05H的是( C )A.NOT AL B.AND AL,0FHC.XOR AL,0FH D.OR AL,0FH11、.DA1 DW‘AB’,‘CD’,‘EF’,‘GH’()┇MOV AX,DA1+3指令执行后AX中的内容是A.‘EF’ B.‘CD’C.‘BC’ D.‘FC’12、若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX=( A )A. 1400HB. 77F8HC. 0000HD. 0FFFFH二、填空题1、8086/8088存储器分四个段,这四个段的段名所对应的段寄存器分别是____CS____、____DS____、__ES______、___SS___。
汇编语言 期末试题和答案 三套 有详细解释
汇编语言期末试题和答案三套有详细解释汇编语言期末试题和答案三套有详细解释一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.cpu要访问的某一存储单元的实际地址称()a.段地址b.偏移地址c.物理地址d.逻辑地址2.某存储单元的物理地址就是12345h,可以做为它的段地址存有()a.2345hb.12345hc.12340hd.1234h3.执行后使bx=0的同时也使cf=0,of=0的指令是()a.xorbx,bxb.orbx,bxc.andbx,bxd.cmpbx,bx4.循环控制指令loopnz/loopne掌控循环继续执行的条件就是()a.cx≠0且zf=1b.cx≠0且zf=0c.cx≠0或zf=1d.cx≠0或zf=05.在执行daa指令,当高四位bcd码校正时产生进位,如要把此进位值送入ah中,对这进位值的操作应是()a.daa校正指令的功能已自动加到ah中b.进位值在af中,校正后根据af内容再加在ah中c.进位值在cf中,校正后根据cf内容再加在ah中d.位次值在al最低位上,校正后根据al最低位内容再加在ah中6.and,or,xor,not为四条逻辑运算指令,下面的解释正确的是()a.指令xorax,ax执行后,ax内容不变,但设置了标志位b.指令ordx,1000h执行后,将dx最高位置1,其余各位置0c.指令andax,ofh执行后,分离出al低四位d.notax,执行后,将ax清07.在继续执行以下指令时,须要采用段寄存器ds的指令就是()a.stoswb.addal,clc.negbxd.incda[bx]8.无论bh中原有的数是奇数或偶数,若要使bh中的数一定为奇数,应执行的指令是()a.addbh,01hb.orbh,01hc.xorbh,01hd.testbh,01h9.完成对cl寄存器的内容乘以4的正确操作是()a.rolcl,1b.mul4rolcl,1c.shlcl,1d.movcl,2shlcl,1shlcl,cl10.下面各传输指令中,恰当的就是()a.mov[di],[si]b.mov[dx+di],alc.movwordptr[bx],0100hd.moval,bx11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()a.名字的第一个字符可以是大写英文字母及小写英文字母b.名字的第一个字符可以是字母、数字及、@、_c.名字的有效长度≤31个字符d.在名字中不允许出现$112.要实现使beta的值为56,应采用语句为()a.betadb56b.betadb56hc.betaequ56d.betaequ56h13.repzcmpsw指令,重复执行的终止条件是()a.cx=0或zf=0b.cx=0且zf=0c.cx=0或zf=1d.cx=0且zf=114.下面程序段执行后,al中的内容是()movax,8833haddal,ahdaaa.21b.21hc.0c1hd.0ddh15.比较两个带符号的数a、b,当a=b时程序转移,测试的条件为()a.zf=1b.zf=0c.sf=1d.sf=016.检查二个并无符号数的关系,若必须同时实现al≥bl时分支回去lop1处为,那么在“cmpal,bl”指令后应当与的分支指令就是()a.jnclop1b.jalop1c.jclop1d.jgelop117.在以下串成操作方式指令中,同时采用源串和目的串成地址指针的指令就是()a.stoswb.lodswc.scaswd.cmpsw18.设al=0ah,下列指令执行后能使al=05h的是()a.notalb.andal,0fhc.xoral,0fhd.oral,0fh19.da1dw?ab?,?cd?,?ef?,?gh?()┇movax,da1+3指令继续执行后ax中的内容就是a.?ef?b.?cd?c.?bc?d.?fc?20.使用dos系统功能调用时,使用的软中断指令是()a.int21b.int10hc.int16hd.int21h二、填空题(本大题共12空,每空0.5分后,共6分后)恳请在每小题的空格中填入恰当答案。
期末汇编语言试题及答案
期末汇编语言试题及答案(正文开始)第一节:多项选择题1. 汇编语言是一种_____。
A. 低级语言B. 高级语言C. 中级语言D. 汇编语言不属于编程语言范畴答案:A2. 汇编语言是一种_____。
A. 机器语言B. 人机交互语言C. 使用英文单词和符号的编程语言D. 汇编语言不属于编程语言范畴答案:C3. 在汇编语言中,用来表示无符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:A4. 汇编语言中,用来表示有符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:B5. 汇编语言中的寻址方式包括_____。
A. 直接寻址B. 寄存器寻址C. 间接寻址D. 所有选项都是正确的答案:D第二节:填空题1. 汇编语言的基本单元是_____。
答案:指令(instruction)2. 汇编语言中,用来表示寄存器的通用约定是_____。
答案:以字母E或R作为前缀(例如:EAX、RBX)3. 汇编语言中,关键字和指令通常是以_____开头的。
答案:小写字母4. AL寄存器是_____位的寄存器。
答案:85. 汇编语言中,用来表示内存地址的数据类型是_____。
答案:PTR第三节:简答题1. 简述汇编语言的优点和缺点。
答:汇编语言的优点包括:- 直接操作底层硬件,可以实现高度的性能优化。
- 对机器指令的控制更加精细,可以实现特定的功能。
- 内存占用小,执行效率高。
汇编语言的缺点包括:- 学习曲线陡峭,需要掌握底层硬件架构和指令集。
- 编写和维护成本高,可读性差。
- 可移植性差,需要针对不同硬件平台编写不同版本的汇编代码。
2. 简述汇编语言指令的执行过程。
答:汇编语言指令的执行过程包括以下几个步骤:1. 从内存中读取指令:处理器根据程序计数器(Program Counter,PC)的值,从内存中读取指令。
2. 解析指令:处理器将读取到的指令解析成可执行的操作码和操作数。
汇编期末试题及答案
汇编期末试题及答案一、选择题1. 汇编语言是一种 _____。
A. 高级编程语言B. 低级编程语言C. 自然语言D. 机器语言答案:B. 低级编程语言2. 汇编语言使用的是 _____。
A. 英文单词B. 二进制数C. 十进制数D. 十六进制数答案:D. 十六进制数3. 汇编语言的特点之一是 _____。
A. 语法严谨B. 代码简洁C. 易于理解和学习D. 可移植性强答案:A. 语法严谨4. 汇编语言最终需要翻译成 _____ 才能被计算机执行。
A. 高级编程语言B. 汇编器C. 操作系统D. 机器语言答案:D. 机器语言5. 汇编语言中,寄存器是 _____。
A. 存储数据的地方B. 存储指令的地方C. 进行运算的地方D. 执行输入输出的地方答案:A. 存储数据的地方二、填空题1. 汇编语言中,用于表示立即数的符号是 _____。
答案:#2. 用于表示寄存器的符号是 _____。
答案:$3. 汇编语言中,用于表示变量的符号是 _____。
答案:@4. 汇编指令 "mov ax, 5" 的作用是 _____。
答案:将立即数5存入寄存器ax中5. 汇编指令 "add bx, ax" 的作用是 _____。
答案:将寄存器bx的值与寄存器ax的值相加,并将结果存入寄存器bx中三、简答题1. 简述汇编语言相比高级编程语言的优缺点。
答:汇编语言相比高级编程语言的优点包括:- 可执行性强:汇编语言编写的程序可以直接在计算机上执行,无需额外的翻译和解释工作;- 控制权高:汇编语言可以直接操作硬件,对于特定应用领域的程序开发非常有优势;- 精确控制:汇编语言可以直接控制底层细节,如内存和寄存器,具有高度的灵活性和精准度。
汇编语言相比高级编程语言的缺点包括:- 可读性低:由于汇编语言的语法严谨,代码较为冗长,使得程序的可读性非常低;- 开发效率低:相比高级编程语言,汇编语言的开发效率较低,需要编写更多的代码才能完成相同的功能;- 可移植性差:汇编语言依赖于具体的硬件平台,不同的计算机体系结构可能需要不同的汇编语言程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一,单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题1分,共20分)1.指令JMP FAR PTR DONE属于参考答案为:CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址[解析]略2.下列叙述正确的是参考答案为:CA.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB指令[解析]对于无符号数和有符号数的比较都采用CMP指令;CMPS指令是串比较指令;对两个有符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个无符号数的条件转移指令应是:JGE、JNL、JLE、JNG。
3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:CA.12CSBHB.12B6BHC.12C59HD.12BFEH[解析]末字与首字相隔(128-1=)127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址+(128-1)×2即12ABH×10H+00ABH+(128-1)×2=12C59H。
4.在下列指令的表示中,不正确的是参考答案为:CA.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL[解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的[BX],没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DEC BYTE PTR [BX] 或DEC WORD PTR [BX]但是在题目的选项C中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
5.在进行二重循环程序设计时,下列描述正确的是参考答案为:AA.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内[解析]循环参数置初值,应在进入循环以前给出。
6.条件转移指令JNE的测试条件为参考答案为:AA.ZF=0B.CF=0C.ZF=1D.CF=1[解析]略。
7.8086CPU在基址加变址的寻址方式中,变址寄存器可以为参考答案为:D A.BX或CXB.CX或SIC.DX或SID.SI或DI[解析]略8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在()中。
参考答案为:AA.数据段中偏移量为3236H的字节B.附加段中偏移量为3234H的字节C.数据段中偏移量为3234H的字节D.附加段中偏移量为3236H的字节[解析]指令中的源操作数的寻址方式是相对基址变址寻址,且由于其中的基址寄存器采用的是BX,所以源操作数是在数据段中,其偏移量为:BX+SI+2=2000H+1234H+2=3236H9.执行如下程序:MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX)=参考答案为:CA.99B.100C.101D.102[解析]1)在进入循环之前,有三条指令分别初始化寄存器:AX为0、BX为1、CX为100;2)由于循环的控制部分采用的是LOOP指令,该指令有使CX减1,并判断其是否为0的功能,所以可知该循环的执行次数为100次;3)循环体的主要功能是每次循环使AX中的内容累加BX的内容,并使BX的内容加1。
4)直到最后一次(即第100次)循环时,加到AX中的BX的内容为100,且使BX加1,即变为101后退出循环体。
所以当执行完该段程序后,BX的内容为101。
5)该段程序的功能是(AX)=1+2+……+100=505010.上题的程序执行后(AX)=参考答案为:BA.5000B.5050C.5100D.5150[解析]请参看上题中的分析。
正确答案:B。
11.对于下列程序段:AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用______指令完成同样的功能。
参考答案为:AA.REP MOVSBB.REP LODSBC.REP STOSBD.REPE SCASB[解析]该段程序的功能是将SI所指向的数据段中的数据顺序传送给DI所指向的附加段的一段数据区中,并且每次传送一个字节,即实现了字节串传送的功能,所以也可以使用REP MOVSB 指令来完成同样的功能。
12.下面指令序列执行后完成的运算,正确的算术表达式应是MOV AL,BYTE PTR XSHL AL,1DEC ALMOV BYTE PTR Y,AL参考答案为:DA.y=x2+1B.x=y2+1C.x=y2-1D.y=x2-1[解析]该段程序的第一条指令的功能是将X传送给AL;第二条指令的功能是将AL的内容左移1位,即使得AL的内容扩大2倍;第三条指令的功能是使AL的内容减1;第四条指令的功能是将AL传送给Y;综上所述该程序完成的运算是Y=2X-1。
13.在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来。
参考答案为:BA.占内存空间小,但速度慢B.占内存空间大,但速度快C.占内存空间相同,速度快D.占内存空间相同,速度慢[解析]1)宏指令简化程序的书写,不节省程序存储空间,但执行时间比子程序短。
2)子程序简化程序的书写,也节省程序的存储空间,但执行时间比宏指令长。
14.在程序执行过程中,IP寄存器中始终保存的是参考答案为:BA.上一条指令的首地址B.下一条指令的首地址C.正在执行指令的首地址D.需计算有效地址后才能确定地址[解析]在程序运行过程中,它始终指向下一条指令的首地址,它与CS代码段寄存器联合确定下一条指令的物理地址。
15.PSW寄存器中共有______位条件状态位,有______位控制状态位。
参考答案为:AA.6、3B.3、6C.8、4D.4、8[解析]PSW有6位条件状态位:AF、CF、ZF、PF、SF、OF;PSW有3位控制状态位:IF、TF、DF16.下列指令执行时出错的是参考答案为:AA.ADD BUF1,BUF2B.JMP DWORD PTR DAT [BX]C.MOV AX,[BX+DI] NUMD.TEST AL,08H[解析]ADD指令的两个操作数不能同时是存储器操作数,所以选项A中的指令是错误的。
17.已知(AX)=1234H,执行下述三条指令后,(AX)=参考答案为:D MOV BX,AXNEG BXADD AX,BXA.1234HB.0EDCCHC.6DCCHD.0000H[解析]第一条指令的功能是将AX→BX,即BX中的内容为1234H;第二条指令的功能是对BX求补,即BX中的内容变为-1234H;第三条指令的功能是AX+BX→AX,即1234H+(-1234H)=0→AX;所以执行三条指令后,AX的内容为0。
18.在下列指令中,______指令的执行会影响条件码中的CF位。
参考答案为:D A.JMP NEXTB.JC NEXTC.INC BXD.SHL AX,1[解析]JMP、JC指令不任何影响状态标志位;INC指令执行结果除不影响CF外,其余状态标志位(AF、OF、PF、SF、ZF)都受影响。
SHL指令使CF=O,OF=O,影响ZF、SF、PF标志位,AF无定义。
19.串指令中的目的操作数地址是由______提供。
参考答案为:CA.SS:[BP]B.DS:[SI]C.ES:[DI]D.CS:[IP][解析]略20.将DX的内容除以2,正确的指令是参考答案为:CA.DIV 2B.DIV DX,2C.SAR DX,1D.SHL DX,1[解析]选项A中的的指令执行的操作是:AX/2;选项B中的的指令书写格式不正确;选项C中的的指令执行的操作是:将DX的内容右移一位,将使DX的内容缩小为原先的1/2,即将DX的内容除以2;选项D中的的指令执行的操作是:将DX的内容左移一位,将使DX的内容扩大为原先的2倍,即将DX的内容乘以2。
二,简答题(每小题4分,共12分)1.假定(DX)=10111001B,(CL)=0.3,(CF)=1,试确定下列各条指令单独执行后,DX中的值。
(1)SHR DX,1(2)RCR DL,1(3)RCL DX,CL答:(1) 005CH (2) 00DCH (3) 05CCH[解析](1)指令:SHR DX, 1 使DX的内容向右移动了一位,因此DX的内容变为0000’0000’0101’1100B,即005CH。
(2)指令:RCR DL, 1 使DL的内容向右循环带进位移动了一位,DH的内容不变,因此DX的内容变为0000’0000’1101’1100B,即00DCH。
(3)指令:RCL DX, CL 使DX的内容向左循环带进位移动了3位,因此DX的内容变为0000’0101’1100’1100B,即05CCH。
2.写出完成下述功能的程序段:(1)传送25H到AL寄存器(2)将AL的内容乘以2(3)传送15H到BL寄存器(4)AL的内容乘以BL的内容并请写出最后(AX)=?答:(1)MOV AL, 25H(2)SHL AL, 1(3)MOV BL, 15H(4)MUL BL最后,(AX)=612H =1554[解析]1)将AL的内容左移1位,将使它的内容扩大2倍,即使AL的内容乘以2。
2)最后,AX的内容应为25H*2*15H=612H=15543.写一程序段,求双字长数DX∶bX的相反数。
答:NEG DXNEG AXSBB DX, 0[解析]求双字长数DX:AX相反数,即对其求补,所以应实现的操作是:(DX:AX) ← 0-(DX:AX)即0 : 0-) DX : AX将上面的算式分解后,即为对DX求补,对AX求补,并从DX中减去将AX求补时产生的借位。
所以相应的指令就是:NEG DXNEG AXSBB DX, 0三,程序分析题(每小题6分,共36分)1.现有如下程序段:DATA SEGMENT DA3 EQU 1234HORG 0020H DA4 EQU $-DA2DA1 DW 12H,23H DA5 DB 31H,32HDA2 DB 11H,21H DA TA ENDS请回答:(1)该程序段已占有的存储字节数是多少?(2)符号名DA4的值是多少?符号名DA5的值是多少?答:(1) 该程序段已占有的存储字节数是8个字节。