汇编语言练习题及习题答案
汇编语言试题及参考答案

汇编语言试题及参考答案一、选择题(每题2分,共20分)1. 汇编语言中的指令通常由哪两部分组成?A. 操作码和操作数B. 地址和数据C. 指令和数据D. 操作码和地址答案:A2. 以下哪个不是汇编语言中的寻址方式?A. 直接寻址B. 间接寻址C. 立即寻址D. 寄存器寻址答案:B3. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. CMPC. ADDD. SUB答案:A4. 汇编语言中,以下哪个指令用于比较两个寄存器的内容?A. MOVB. CMPC. ADDD. SUB答案:B5. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与立即数相加?A. MOVB. CMPC. ADDD. SUB答案:C6. 汇编语言中的条件跳转指令通常使用哪些条件?A. 零、非零B. 正、负C. 溢出、非溢出D. 所有上述条件答案:D7. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容相减?A. MOVB. CMPC. ADDD. SUB答案:D8. 汇编语言中的循环结构通常使用哪种类型的跳转指令?A. 无条件跳转B. 条件跳转C. 直接跳转D. 间接跳转答案:B9. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与内存中的内容相加?A. MOVB. CMPC. ADDD. SUB答案:C10. 汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容进行逻辑与操作?A. ANDB. ORC. NOTD. XOR答案:A二、填空题(每题2分,共20分)1. 在汇编语言中,指令MOV AX, BX的作用是将寄存器________的内容复制到寄存器________中。
答案:BX,AX2. 汇编语言中的指令JMP FAR PTR 100H:200H的作用是跳转到内存地址________。
答案:100H:200H3. 汇编语言中,指令CALL的作用是________。
汇编语言样题及答案-修改

汇编语言-习题3一、单项选择题:1.CPU要访问的某一存储单元的实际地址称()A.段地址B.偏移地址C.物理地址D.逻辑地址2.某存储单元的物理地址是12345H,可以作为它的段地址有()A.2345H B.12345H C.12340H D.1234H3.执行后使BX=0的同时也使CF=0,OF=0的指令是()A.XOR BX,BX B.OR BX,BX C.AND BX,BX D.CMP BX,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.指令XOR AX,AX执行后,AX内容不变,但设置了标志位B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C.指令AND AX,OFH执行后,分离出AL低四位D.NOT AX,执行后,将AX清07.在执行下列指令时,需要使用段寄存器DS的指令是()A.STOSW B.ADD AL,CL C.NEG BX D.INC DA[BX]8.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是()A.ADD BH,01H B.OR BH,01H C.XOR BH,01H D.TEST BH,01H9.完成对CL寄存器的内容乘以4的正确操作是()A. ROL CL,1 B.MUL 4ROL CL,1C. SHL CL,1 D.MOV CL,2SHL CL,1 SHL CL,CL10.下面各传送指令中,正确的是()A.MOV [DI],[SI]B.MOV[DX+DI],ALC.MOV WORD PTR [BX],0100H D.MOV AL,BX11.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()A.名字的第一个字符可以是大写英文字母及小写英文字母B.名字的第一个字符可以是字母、数字及、@、_C.名字的有效长度≤31个字符D.在名字中不允许出现$12.要实现使BETA的值为56,应采用语句为()A.BETA DB 56B.BETA DB 56H C.BETA EQU 56D.BETA EQU 56H 13.REPZ CMPSW指令,重复执行的终止条件是()A.CX=0或ZF=0B.CX=0且ZF=0C.CX=0或ZF=1D.CX=0且ZF=114.下面程序段执行后,AL中的内容是()MOV AX,8833HADD AL,AHDAAA.21B.21H C.0C1H D.0DDH15.比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()A.ZF=1B.ZF=0C.SF=1D.SF=016.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()A.JNC LOP1B.JA LOP1C.JC LOP1D.JGE LOP117.在下列串操作指令中,同时使用源串和目的串地址指针的指令是()A.STOSW B.LODSW C.SCASW D.CMPSW18.设AL=0AH,下列指令执行后能使AL=05H的是()A.NOT AL B.AND AL,0FH C.XOR AL,0FH D.OR AL,0FH19.DA1 DW…AB‟,…CD‟,…EF‟,…GH‟()┇MOV AX,DA1+3指令执行后AX中的内容是A.…EF‟B.…CD‟C.…BC‟D.…FC‟20.使用DOS系统功能调用时,使用的软中断指令是()A.INT 21 B.INT 10H C.INT 16H D.INT 21H二、填空题:21.十六进制数0FFF8H表示的十进制正数为________,表示的十进制负数为________。
汇编语言习题与答案

汇编语言习题与答案一、填空题:把答案填在题中横线上。
1. 8位无符号整数的表示范围为0~255,写成16进制形式为00H~__________;8位有符号整数的表示范围为-128~+127,写成16进制形式为__________~__________。
2. 8086/8088分段管理存储空间,但每段容量最大不超过__________。
3. 逻辑地址为F000:100的存储单元,其物理地址是__________。
4. 用来指示堆栈栈顶的偏移地址的是__________寄存器。
5. 若要测试AL寄存器D4、D2、D0位是否都为0,则可使用__________指令语句(含操作数),以产生转移条件。
这条指令执行后将利用标志位__________实现转移。
6. 若定义:bdata db 2 dup(1,2,2dup(3),4),则dbata变量前5个单元从低地址到高地址的数据依次是__________。
7. 假设varw是一个16位变量,则指令“mov varw,ax”的目的操作数的寻址方式是__________。
(二、选择题:在每小题给出的四个选项中,只有一项是符合题目要求的,请把所选项前的字母填在题后的括号内。
1.对汇编语言源程序进行翻译,形成OBJ文件的是A.汇编程序B.连接程序C.编辑程序D.调试程序[]2.下列各个8位二进制数的补码中,真值最大的是A. B.[]语句中,表达常数不正确的形式是B. A346H`C.’A’D. 5600 []4.如果SS=600H,则说明堆栈段物理地址起始于[]50 dup()预留了存储空间的字节数是[]6.下列指令中有操作数在代码段中的是ax,34h ax,bxword ptr [34h] ax,[34h] []@7.假设AL=5,要使得AL=0FAH,应执行的指令是A. not al al,0fhal,0f0h al,0fh []8.设置逻辑段应该采用的一对伪指令是ends end startendp endm []9.条件转移指令JNE条件是=0 =1=0 =1 []10.逻辑移位指令SHL可用于!A.有符号数乘以2B.有符号数除以2C.无符号数乘以2D.无符号数除以2 []11.执行“in al, dx”指令后,进入AL寄存器的数据来自A.寄存器B.存储器C.立即数D.外设端口[]12.将十进制数75以压缩BCD码送入AX,正确的指令是ax,0075 B. mov ax,0705ax,0075h D. mov ax,0705h []13.如下指令可将AX寄存器内容改变的是A. cmp ax,bxB. test ax,bx?C. and ax,bxD. xchg ax,bx []14.设AH=10H,执行“neg ah”指令后,正确的结果是A. AH=10H、CF=1B. AH=F0H、CF=0C. AH=10H、CF=0D. AH=F0H、CF=1 []15.如下程序段:again: mov es:[di],alinc diloop again可用指令__________完成相同的功能。
汇编语言试题试题及其答案和评分

汇编语言原理习题集一、单项选择题(每小题1分,共20分)1、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( )A、85B92HB、86192HC、BB690HD、12169H2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS3、循环指令LOOPNZ终止循环的条件是( )。
A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX10,且ZF=0D、CX10,或ZF=14、对寄存器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,15、执行INC指令除对SF、ZF有影响外,还要影响的标志位是( )。
A、OF,AF,PFB、OF,AF,CFC、OF,PF,CFD、AF,PF,CF6、设DH=10H,执行NEG DH指令后,正确的结果是( )。
A、DH=10H CF=1B、DH=0F0H CF=0C、DH=10H CF=0D、DH=0F0H CF=17、下列传送指令中有语法错误的是( )。
A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX8、下面指令执行后,改变AL寄存器内容的指令是( )。
A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL9、执行除法指令后,影响的标志位是( )。
A、CF,OFB、SF,ZFC、CF,OF,SFD、AF,CF,OF,PF,SF,ZF都不确定10、执行下面指令序列后,结果是( )。
MOV AL,82HCBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H11、与MOV BX,OFFSET VAR指令完全等效的指令是( )。
汇编语言习题及答案

汇编语言复习题简答题1.存储器地址为什么要分段?物理地址是如何形成的?2.IBM PC机的寻址方式(与数据有关的寻址方式)有几种?各举一例说明。
3.80x86微机的存储器中存放信息如下图所示。
试读出30022H与30024H字节单元的内容与30021H和30022H字单元的内容。
4.现有(DS)= 2000H,(BX)=0100H,(SI)= 0002H, (20100)= 12H, (20101)=34H, (20102)= 56H, (20103)=78H, (21200)=2AH, (21201)= 4CH, (21202)=B7H, (21203) = 65H,试说明下列各条指令执行完后AX的内容。
1)MOV AX,1200H2)MOV AX,BX3)MOV AX,[1200H]4)MOV AX,[BX]5)MOV AX,1100[BX]5.完成下列各式补码数的运算,并根据结果设置标志位SF,CF,ZF,OF,指出运算结果是否有效1)01001001b+10011101b2)01000001b-10101011b6.有符号定义语句如下:BUFF DB 1,2,3,’123’EBUFF DB 0L EQU EBUFF-BUFF问L的值为多少?为什么?答案:1、IBM PC系列机的字长为16位,能够访问的最大存储空间64KB,而在IBM PC内存为1MB的情况下,访问这1MB的存储空间需要20位。
为了解决字长为16位的机器访问1MB的存储空间,将1MB空间每16B分为一段,共64K段,以16位段地址:16位偏移地址的形式组成,物理地址通过如下方式计算:物理地址=段地址×10h + 偏移地址2.IBM PC机的寻址方式有7种:1)立即寻址:MOV AX, 1234H;2)寄存器寻址:MOV AX, BX;3)直接寻址:MOV AX, [1234H];4)寄存器间接寻址:MOV AX, [BX];5)寄存器相对寻址:MOV AX, 20H[BX];6)基址变址寻址:MOV AX, [BX][SI];7)相对基址变址寻址:MOV AX, 100H[BX][SI];3.解:(30022H)= 12H(30024H) = 56H(30021H) = 12CDH(30022H) = 3412H4.解:(1)MOV AX,1200H解:(AX)=1200H(2)M OV AX,BX解:(AX)= 0100H(3)M OV AX,[1200H]解:物理地址=(DS)×10H+1200H(AX) = 4C2AH(4)M OV AX,[BX]解:物理地址=(DS)×10H+0100H=20100H(AX)=3412H(5)M OV AX,1100[BX]解:物理地址=(DS)×10H+0100H+1100H=21200H(AX)=4C2AH5.(1)01001001b+10011101b解:01001001+ 10011101————————11100110 由此可得:SF=1 CF=0 ZF=0 OF = 0 计算结果有效(2)01000001b-10101011b解:01000001- 10101011————————=> 01000001+ 01010101————————10010110 由此可得:SF=1 CF=1 ZF=0 OF=1 减法计算中,被减数、减数符号相反,结果符号与减数相同,OF=1计算结果无效6.有符号定义语句如下:BUFF DB 1,2,3,’123’EBUFF DB 0L EQU EBUFF-BUFF问L的值为多少?为什么?解:根据数据段的定义,BUFF长度定义为6个字节,分别存放1,2,3,‘1’,‘2’,‘3’,而后紧接着为EBUFF的地址,故L值为6程序题1 MOV BL,64HMOV CL,03HXOR AX,AXAGAIN:ADD AL,BLADC AH,0DEC CLJNZ AGAIN问:(1)该程序段完成的功能是:(2)AX=________。
汇编语言试题及答案

汇编语言试题及答案一、选择题1. 汇编语言是一种:A. 高级语言B. 低级语言C. 机器语言D. 标记语言答案:B2. 汇编程序的编译过程包括:A. 预处理、编译、链接B. 编译、链接、运行C. 编译、预处理、链接D. 链接、编译、预处理答案:A3. 下列哪项是汇编语言的指令:A. MOV AX, BXB. int main()C. print "Hello, World!"D. System.out.println("Hello, World!");答案:A二、填空题4. 在汇编语言中,指令______用于将数据从内存传送到寄存器。
答案:MOV5. 汇编语言中的______指令用于实现无条件跳转。
答案:JMP6. 汇编语言中的______指令用于实现条件跳转。
答案:JZ 或 JE(零标志跳转)三、简答题7. 简述汇编语言的特点。
答案:汇编语言是一种低级语言,它非常接近机器语言,通常用于编写硬件操作和系统软件。
其特点是执行效率高,但编程复杂度高,可读性和可移植性较差。
8. 汇编语言与机器语言有何区别?答案:汇编语言是一种符号化的机器语言,它使用助记符代替机器语言中的二进制代码,更易于人类理解和编写。
机器语言则是计算机硬件直接执行的指令集,通常以二进制形式存在。
四、编程题9. 编写一段汇编语言程序,实现将AX寄存器的值加1。
答案:INC AX10. 编写一段汇编语言程序,实现将内存地址[100]处的值与BX寄存器的值相加,并将结果存回内存地址[100]。
答案:MOV AX, [100]ADD AX, BXMOV [100], AX五、论述题11. 论述汇编语言在现代计算机系统中的作用和局限性。
答案:汇编语言在现代计算机系统中主要用于系统底层开发、硬件驱动编写、嵌入式系统编程等领域。
其作用在于能够直接控制硬件,实现高效的资源利用。
然而,由于其复杂度高、可读性差、可移植性低,它在高级应用开发中的使用受到限制。
汇编语言习题册,有答案已经收编
汇编语言习题册(汇编语言课程设计组编制)汇编语言程序设计习题一.填空题1.汇编语言是一种_____,它用_____来表示操作码,用——或——来表示操作数或操作数地址,它与_________是一一对应的。
2.计算机中的指令由__________和________两部分组成。
3.指出下列指令源操作数的寻址方式:MOV AX, ARRAYF[SI] _______MOV AX, ES:[BX] _______MOV AX, [200H] _______MOV AX, [BX+DI] _______MOV AX, BX _______MOV AX, 1200H _______MOV AX, 20[BX+SI] _______MOV AX, [DI+20] _______4.现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(21202)=B7H,I(21203)=65H,下列指令执行后填入AX寄存器的内容:MOV AX,1200H ;(AX)=_______MOV AX, BX ;(AX)=_______MOV AX,[1200H] ;(AX)=_______MOV AX, [BX] ;(AX)=_______MOV AX,1100[BX] ;(AX)=_______MOV AX,[BX][SI] ;(AX)=_______MOV AX,1100[BX][SI] ;(AX)=_______5.条件码中最主要的是_____、_____、______、______。
6.对于乘法、除法指令,其目的操作数存放在______或______中,而其源操作数可以用除_______以外的任一寻址方式。
7.当指令“SUB AX,BX”执行后,CF=1,说明最高有效位_____;对____数,说明操作结果溢出。
汇编语言习题答案
第1章自测练习一、选择题(四选一)1.某个加法运算结果使标志ZF=1,则标志SF为A。
A0 B 1 C 不改变原来的状态 D 不确定2.可以为存储器操作数提供偏移地址的寄存器组是B。
A AX、BX、CX、DXB BX、BP、SI、DIC SP、IP、BP、DXD CS、DS、ES、SS3.8086/8088确定下一条执行指令物理地址的计算表达式为D。
A DS× 16+EAB ES× 16+EAC SS×l6+SPD CS×l6+IP4.某系列微机对存储器分段,如果每个段最多的字存储单元(16位二进制)是32K,那么表示段内字节单元偏移地址的二进制位数应是C位。
A14 B 15 C 16 D 205.十进制数-100的8位二进制数的补码为 D 。
A10011011 B 01100100 C 10011101 D 100111006.下列各个8位二进制数的补码中,绝对值最大的是A。
A10001000 B 11111110 C 00000100 D 000000017.16位有符号数的补码所表示的十进制数的范围是B。
A-32767~+32768 B -32768~+32767C -65535~+65536D 0~655358.对数值83A7H作逻辑非运算后的结果是D。
A83A8H B、73A8H C、7C59H D、7C58H9.指令“mov cx,[bp+16]”的源操作数采用的段寄存器是 B 。
A CSB SSC DSD ES10.指向程序堆栈区的段寄存器是 B 。
A CSB SSC DSD ES11.有效地址是指 C 。
A存储器操作数的物理地址 B 存储器操作数的段地址C 存储器操作数的偏移地址D 立即数的偏移地址12.寄存器间接寻址方式中,操作数在 C 中。
A通用寄存器 B 段寄存器C 主存单元D 堆栈13.指令“mov ax,es:[bx][si]”源操作数的物理地址是D。
《汇编语言程序设计》考试练习题及答案
《汇编语言程序设计》考试练习题及答案一、单选题1. 计算机中存取信息或数据的最小单位为()A 、位B 、字节C 、字D 、双字答案:B2. 调用子程序的指令为()A 、CALLB 、RETC 、HLTD 、NOP答案:A3. DOS功能调用是通过()指令去调用DOS系统提供的软件中断处理程序A 、INT 21HB 、INT 23HC 、INT 12HD 、INT 11H答案:A4. 满足()时,CPU允许中断A 、IF=0B 、IF=1C 、DF=0D 、DF=1答案:B5. 完成对CL寄存器的内容乘以4的正确操作是()。
A 、ROL CL,1 ROL CL, 1B 、MUL 4C 、SHL CL, 1 SHL CL, 1D 、MOV CL , 2 SHL CL, CL答案:C6. 下面寄存器中可以分为两个独立8位寄存器的是()A 、AXB 、DIC 、CSD 、SI答案:A7. ()是用二进制编码的机器指令的集合及一组使用机器指令的规则,是CPU能直接识别的唯一语言。
A 、汇编语言B 、机器语言C 、JAVA语言D 、C语言答案:B8. 源程序模块结束语句为()A 、ORGB 、ENDC 、SEGMENTD 、START答案:B9. 8位补码表示的有符号数的表示范围是()A 、0~255B 、-128~+127C 、0~65535D 、-32768~+32767答案:B10. 在一段汇编程序中多次调用另一段程序,用宏指令比用子程序实现起来,下列说法正确的是()A 、占内存空间小,但速度慢B 、占内存空间大,但速度快C 、占内存空间相同,但速度快D 、占内存空间相同,但速度慢答案:B11. 与LEABX ,BUF指令完全等效的指令是()。
A 、MOV BX ,BUFB 、LDS BX ,BUFC 、MOV BX ,OFFSET BUFD 、MOV BX ,WORD PTR BUF答案:C12. 14的非压缩BCD码为()A 、00010100B 、01000001C 、0000000000010100D 、0000000100000100答案:D13. 要实现使BETA的值为56,应采用的语句是()A 、BETA DB 56B 、BETA DB 56HC 、BETA EQU 56HD 、BETA EQU 56答案:D14. ()不可以做目的操作数A 、立即数B 、寄存器C 、存储器操作数D 、累加器答案:A15. 计算机一般由中央处理器、存储器和输入/输出子系统组成,其中()可以存放程序、数据、信息及中间结果。
(完整版)汇编语言试题及答案
一,单项选择题(每小题1 分,共20 分1-10CCCCAADACB 11-20.ADBBAADDCC1.指令JMP FAR PTR DONE 属于( CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2.下列叙述正确的是(A.对两个无符号数进行比较采用CMP 指令,对两个有符号数比较用CMP S指令B.对两个无符号数进行比较采用CMPS 指令,对两个有符号数比较用CM P 指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/J NL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/J NB指令3.一个有128 个字的数据区,它的起始地址为12ABH:00ABH, 请给出这个数据区最末一个字单元的物理地址是(A.12CSBHB.12B6BHC.12C59HD.12BFEH4.在下列指令的表示中,不正确的是(A.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL5.在进行二重循环程序设计时,下列描述正确的是(A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内6.条件转移指令JNE 的测试条件为( A.ZF=0B.CF=0C.ZF=1D.CF=17.8086CPU 在基址加变址的寻址方式中,变址寄存器可以为(A.BX 或CXB.CX 或SIC.DX 或SID.SI或DI8.已知BX=2000H,SI=1234H, 则指令MOV A X,[BX+SI+2] 的源操作在(中。
A.数据段中偏移量为3236H 的字节B.附加段中偏移量为3234H的字节C.数据段中偏移量为3234H 的字节D.附加段中偏移量为3236H 的字节9.执行如下程序:( MOV AX,0MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX=(A.99B.100C.101D.10210.上题的程序执行后(AX=(A.5000B.5050C.5100D.515011.对于下列程序段:(AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用指令完成同样的功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选择1、用户为了解决自己的问题,用汇编语言所编写的程序,称为___________。
A 、目标程序B、源程序C、可执行程序D、汇编程序2、无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是___________。
A、ADD BH,01HB、OR BH,01HC、XOR BH,01HD、TEST BH,01H3、设AL=20H,SI=0500H,DS=3000H,(30500H)=0C0H,CF=1,执行SBB AL,[SI]后,正确的结果是___________。
A、AL=5FH SF=1 CF=1B、AL=60H SF=1 CF=0C、AL=5FH SF=0 CF=1D、AL=60H SF=0 CF=04、设AX=1000HNEG AXNOT AX执行上述指令后,正确的结果是___________。
A、AX=1001HB、AX=0FFFHC、AX=1000HD、AX=0111H5、CBW指令的功能是___________。
A、把源操作数的符号位扩展到目的操作数中B、把AL中的符号位扩展到AH中C、把AH中的符号位扩展到AL中D、把AX中的符号位扩展到DX中6、AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是A、指令XOR AX,AX执行后,AX内容不变,但设置了标志位B、指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C、指令AND AX,OFH执行后,分离出AL低四位D、NOT AX,执行后,将AX清07、执行下列指令序列后,正确的结果是___________。
MOV AL,81HADD AL,ALADC AL,ALA、AL=05HB、AL=204HC、AL=04HD、AL=205H4、TEST DL,55HJE NEXT….NEXT:……上述程序段,执行JE指令时能产生转移的情况是。
A、DL>55HB、DL<55HC、DL=55HD、DL中第0、2、4、6位均为05、设CL=05H,要获得CL=0AH,可选用的指令是。
A、XOR CL,0FHB、NOT CLC、OR CL,0AHD、AND CL,0FH填空2、与指令LEA DI,AV等效的指令是____________。
5、如JMP指令采用段间直接寻址,那么由4个相邻字节单元中存放有转移地址,其中前两个字节存放的是________,而后两个字节存放的是________。
6、当主程序和子程序不在同一个代码段时,主程序调用子程序是远调用,这时系统自动将__________和__________值作为断点依次入栈。
7、VAR1 DW 10H DUP(?)语句实现留空___________个字节单元。
2、假设存储器中从7462H单元开始的四个相邻字节单元中的内容依次是32H,46H,52H,0FEH,则存放字数据0FE52H的字地址是______________。
3、设CF=1,AX=8000H,执行ROR AX,1后,AX=______________,CF=______________。
三、问答题1、条件转移指令的判断条件,除标志位PF外还有哪几个标志位?2、DATl DB 1,2,3,4DAT2 DW 3412H,5678H┆MOV AX,DATl+1;将DATl+1字单元内容送入AX中MOV BL,DAT2+1;将DAT2+1字节单元内容送入BL中已知上述两条MOV语句有语法错误,请根据注释字段的要求将其改正(分别用一条语句改正)。
3、在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。
例如:PUSH AX\PUSH BX \ 保护现场PUSH CX /PUSH DX/┆}恢复现场试写出恢复现场时的指令序列。
4、完成下列操作,选用什么指令:(1)将AX的内容,减去0520H及上次运算的借位;(2)将变量名TABL的段基址送AX;5、指出下面的程序段的错误之处,并改正。
CRAY PROCPUSH AXADD AX,BXRETCRAY ENDP四、程序填空题1、在NUMW单元存放有一个0-65535范围内的整数,将该数除以500,商和余数分别存入QU1和REM单元,请在横线处各填上一条指令完善该程序。
┇MOV AX, NUMW_____________XOR DX, DXDIV B XMOV QUI, AX_____________2、某程序欲用单个字符显示的2号功能调用去显示STRING中的字符串‘COMPUTER’(不显示字符‘$’!).试在横线处填上适当的一条指令。
STRING DB‘COMPUTER’,‘$’┇MOV BX,0FFSET STRINGLOP:MOV DL,[BX]MOV AH,02HINT 21H______________________________JNE LOP3、下面程序段是判AL和BL中的数据是否同号,若是,则把AL中的数据求补并送到AH中,否则0→AH。
横线处填入适当指令(每处仅填一条指令)。
____________JNS KMOV AH,0JMP END0K:____________MOV AH,ALEND0:……4、从2000H单元开始,存放着14H个无符号字节数据,找出最大一个,并将其存在2000H 中。
请在横线处各填一条指令。
GATMAX:MOV BX,2000HMOV AL,[BX]MOV CX,14HP1:____________CMP AL,[BX]JAE P2MOV AL,[BX]P2:____________JNZ P1MOV BX,2000HMOV [BX],AL…五、读程序,写出程序的功能和运行结果1、已知BUF开始的数据区中存放有10个大、小写字母,下面程序段完成的功能是什么?MOV CX,10LEA BX,BUFK2:MOV AL,[BX]CMP AL,‘Z’JBE K1SUB AL,20HMOV [BX],ALK1:INC BXLOOP K2K3:┇①上述子程序的功能是_____________。
②执行到K3时,BX=____ ________。
2、.MODEL SMALL.DATAX DW 1, 2, 3, 4, 5, 6Y DW 0.CODESTART: MOV AX,@DATAMOV DS, AXMOV CX, 6MOV SI, 0ONE: MOV AX, X[SI]MOV BX, CXMOV DX, YCALL PROC1MOV Y, DXADD SI, 2LOOP ONEMOV AX, 4C00HINT 21HPROC1 PROCTEST BX, 1JZ P1NEG AXP1: ADD DX, AXRETPROC1 ENDPEND START(1) 写出程序所实现的功能。
(2) 写出程序执行后Y的值。
2、若48H和93H是无符号数。
SOUR DB 48H,93HMZ DB ?……MOV AL,SOURCMP AL,SOUR+1JA K1MOV AL,SOUR+1K1:MOV MZ,AL试问:(1)MZ单元内容是什么?(2)48H和93H是有符号数,JA K1指令应改为什么指令?此时MZ的值是多少?六、完整编程题1、按下列要求编写一个子程序:(5分)子程序名:ABSOLT功能:求两数的绝对值之和输入参数:AX存放一个加数,BX存放另一个加数输出参数:AX存放和2、已经有FINDMAX子程序如下,其功能是找出字数组中的最大值存放在AX中。
现在ARRAY开始的字数组中存放了100个带符号数,请利用FINDMAX,找出其中最大的数,存放到MAX单元中去。
编写完整的程序。
(10分)FINDMAX P ROCMOV AX, [SI]NEXT: CMP A X, [SI+2]JG SKIPMOV AX, [SI+2]SKIP: ADD SI, 2LOOP NEXTRETFINDMAX ENDP答案一、选择题BBCBB CADA二、填空题2、mov di, offset av 5、偏移地址段基址6、cs ip 7、20h2. 7464h 3 ax=4000h,cf=0三、问答题1、cf zf sf of2、mov ax, word ptr dat1+1 mov bl, byte ptr dat2+13、pop dx pop cx pop bx pop ax4、sbb ax, 0520h mov ax, seg tabl5、在ret前加pop ax四、程序填空题1、mov bx, 500 mov rem, dx2、inc bx cmp [bx], ‘$’3、xor bl, al neg al4、inc bx dec cx五、读程序,写出程序的功能和运行结果1、小写字母转为大写字母bx=buf+102、1-2+3-4+5-6 y= -33、93h, jg k1, 48h六、完整编程题1、ABSOLT PROCCMP A X,0JG PASSNEG AXPASS: CMP B X,0JG PASS1NEG BXPASS1: ADD AX,BXRETABSOLT ENDP2、DATA SEGMENTARRAY DW 100 DUP(?)MAX DW ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DATA:DS START: MOV AX,DATAMOV DS,AXMOV CX,99LEA SI,ARRAYCALL FINDMAXMOV MAX,AXMOV AX,4C00HINT 21HCODE ENDSEND START。