最新汇编语言考试复习题

合集下载

汇编语言复习资料4

汇编语言复习资料4

《汇编语言》试卷一、单选题(每题1分,共20分)1.CPU在读取指令时,实际读到的是什么?()A.伪指令和汇编指令所对应的字符串B.用汇编语言写的源程序中的信息C.由一系列二进制位组成的信息D.汇编指令所对应的字符串2.关于编译和连接,错误的说法是()。

A.编译产生的*.obj文件不能在操作系统下直接运行B.连接产生的*.exe文件里面没有伪指令C.编译可以检查出语法错误D.连接可以检查出逻辑错误3.CPU传递到地址总线上的地址是()。

A.逻辑地址B.偏移地址C.物理地址D.段地址4.一条将立即数赋值给寄存器的指令,在执行的前一刻,指令中的立即数在()中。

A.通用寄存器B.端口C.内存D.CPU内部的指令缓冲器5.关于8086CPU的几个寄存器,正确的说法是()。

A.可将BX当成两个8位寄存器,在偏移地址范围为0~255时,可以用“mov ax,[bl]”来实现将内存中的数据读到ax中B.可以用“byte ptr”实现将SI当成两个8位寄存器使用C.可将AX、BX、CX、DX当成8个8位寄存器使用D.AX、ah、al是不同的寄存器,指令“add al,bl”的执行不会影响AX的值6.对于16位结构的CPU,其应有的特征不包括()。

A.寄存器最大宽度是16位B.寄存器与运算器之间的通路为16位C.运算器一次处理的数据的最大宽度为16位D.地址总线宽度是16位7.下列与8086CPU寻址相关的说法,错误的是()。

A.8086CPU有20根地址总线,它的寻址能力为1MBB.一个物理地址可以对应多个段地址与偏移地址C.因为段寄存器是16位,所以一个段最大为64KBD.CPU内部有一个能合成20位地址的地址加法器8.8086CPU读取、执行指令的过程是()。

①从CS:IP指向的内存空间读取指令,将指令放入指令缓冲器②执行指令,转到步骤①③IP指向下一条指令A.①、②B.①、③、②C.若指令是转移指令,过程为①、③、②,不是则过程为①、②D.若指令是转移指令,过程为①、②,不是则过程为①、③、②9.对于8086CPU,错误的指令是()。

汇编语言试题及答案

汇编语言试题及答案

汇编语言试题及答案一、单项选择题(每题2分,共20分)1. 汇编语言是一种()。

A. 高级语言B. 低级语言C. 机器语言D. 符号语言答案:D2. 汇编语言程序必须经过()才能被计算机执行。

A. 编译B. 汇编C. 链接D. 解释答案:B3. 在汇编语言中,指令通常由()组成。

A. 操作码和操作数B. 操作码和地址码C. 操作码和数据D. 地址码和数据答案:A4. 汇编语言中的寄存器主要用于()。

A. 存储数据B. 存储指令C. 存储地址D. 存储控制信息答案:A5. 汇编语言中的立即寻址方式是指()。

A. 操作数在寄存器中B. 操作数在内存中C. 操作数在指令中D. 操作数在输入/输出端口中答案:C6. 在汇编语言中,指令“MOV AX, 1234H”的作用是()。

A. 将内存地址1234H的内容移动到AX寄存器B. 将立即数1234H移动到AX寄存器C. 将AX寄存器的内容移动到内存地址1234HD. 将AX寄存器的内容移动到另一个寄存器答案:B7. 汇编语言中的循环结构通常使用()指令实现。

A. JZB. JNZC. LOOPD. CALL答案:C8. 在汇编语言中,子程序调用通常使用()指令。

A. JZB. JNZC. CALLD. RET答案:C9. 汇编语言中的堆栈操作通常使用()指令。

A. PUSHB. POPC. MOVD. ADD答案:A10. 在汇编语言中,中断服务程序的结束通常使用()指令。

A. INTB. IRETC. RETD. CALL答案:B二、填空题(每题2分,共20分)1. 汇编语言中的指令通常由______和______两部分组成。

答案:操作码;操作数2. 汇编语言中的寄存器可以分为______、______和______三类。

答案:通用寄存器;段寄存器;控制寄存器3. 汇编语言中的寻址方式包括______、______、______和______等。

答案:立即寻址;直接寻址;间接寻址;寄存器寻址4. 在汇编语言中,指令“MOV AX, BX”的作用是将BX寄存器的内容______到AX寄存器。

汇编语言试题及参考答案

汇编语言试题及参考答案

汇编语言试题及参考答案一、选择题(每题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的作用是________。

(完整版)汇编语言复习题

(完整版)汇编语言复习题

汇编语言程序设计复习题一、单项选择题1.假设(AL)=0FFH依次执行ADD AL,0FH指令后,标志位ZF和SF的状态分别为(A )A. 0和0B. 0和1C. 1和0D. 1和12.假设V AR为变量,指令MOV BX,V AR 的寻址方式是( A )A.直接寻址B.间接寻址C.立即寻址D.存储器寻址3.下列指令中,不影响标志位的是( C )A.SUB BX,BX B.ROR AL,1 C.JNC Lable D.AND AL,CL4.假定(DS)=4000H,(DI)=0100H,(40100H)=55H,(40101H)=0AAH,试问执行指令MOV BX,[DI]后,(BX)= ( C )A.0100H B.55AAHC.AA55H D.4100H5.执行下列哪一条指令后,就能用条件转移指令判断AL和BL寄存器中的最高位是否相同?(D )A. TEST AL BLB. CMP AL BLC. AND AL BLD. XOR AL BL 6.堆栈中当前出栈的存储单元地址是(A )A. SS*10H+SPB. SS*10H+BPC. SS*10+SPD. SS*10+BP7.已知V AR DW l,2,$+2,5,6 若汇编时V AR分配的偏移地址是0010H,则汇编后0014H单元的内容是( D )A.6H B.14H C.5H D.16H8.循环控制指令REPNZ继续执行循环的条件是(B )A. CX≠0且ZF=1B. CX≠0且ZF=0C. CX≠0或ZF=1D. CX≠0或ZF=09.设NUM=11011011B,指令“MOV AL,NUM SHL 3”执行后AL中的值是(B )A.11011011000BB.11011000BC.00011011BD.00011011011B10.下面XCHG指令语句中,语法正确的是(B)A. XCHG AX,DSB. XCHG BL,[BX]C. XCHG AL,OFHD. XCHG [SI],[DI]11.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是( A )A。

汇编语言复习题附带答案.

汇编语言复习题附带答案.

复习题一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,请把你认为正确答案的题号,填入题干的括号内。

多选不给分。

1.十六进制数 88H ,可表示成下面几种形式,请找出错误的表示(④。

①无符号十进制数 136 ②带符号十进制数-120③它的二进制形式是 10001000B ④ 8位二进制数-8的补码表示2.存放条件码标志、控制标志和系统标志的寄存器是(④。

① IP ② SP ③ BP ④ PSW3. 执行加法运算不能使用的寄存器是 ( ③。

①、 BP ②、 SI③、 CS ④、 CL4.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是 (②①、 AX , BX , CX , DX ②、 BX , BP , SI , DI③、 SP , IP , BP , DX ④、 CS , DS , ES , SS4、下列传送指令中有语法错误的是 (①。

①、 MOV CS, AX ②、 MOV DS, AX③、 MOV SS, AX ④、 MOV ES, AX5. ADD AX , BX 指令执行完后 OF=1,下列说法正确的是(③①、如果 AX,BX 得内容均是带符号数,那么表示执行结果正确②、如果 AX,BX 得内容均是无符号数,那么表示执行结果不正确;③、如果 AX,BX 得内容均是带符号数,那么执行结果表示溢出;④、如果 AX,BX 得内容均是无符号数,那么执行结果表示溢出;6.一个有 16字的数据区域,它的起始地址是 70A0:DDF6,那么该数据单元第三个字单元的物理地址为(④①、 7E816H ②、 7E814H ③、 7E7F8H ④、 7E7FAH7、与 MOV BX, OFFSET VAR指令完全等效的指令是 ( ④。

①、 MOV BX, VAR ②、 LDS BX, VAR③、 LES BX, VAR ④、 LEA BX, VAR8.如果 AX=0FFFEH,那么单独执行完 ADD AX , 1,RCR AX , 1 , (AX = (④①、 0000H ②、 8000H ③、 0FFFFH ④、 7FFFH9. MOV AL , 88HTEST AL , 66H 指令执行完后, (AL =(①①、 88H ②、 66H ③、 0H ④、 0EEH10、 BUF DW 10H DUP(3 DUP(2, 10H , 3, 5上述语句汇编后,为变量 BUF 分配的存储单元字节数是 (②。

汇编语言选择题及填空题复习部分已填写答案的

汇编语言选择题及填空题复习部分已填写答案的

汇编语言选择题及填空题复习部分已填写答案的汇编语言复习题一、选择题1.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是( C)A. C+D=BB. A+D=BC. B=DD. A>C>D2.标志寄存器中属于控制标志位的是(B )A.DF,OF,SFB.DF,IF,TFC.OF,CF,PFD.AF,OF,SF3.8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.1兆个字节D.64K个字节4.设AL中已有压缩型BCD码,为实现对AL的减1操作,可选用的指令序列是()A.DEC ALB.SBB AL,0C.SUB AL,1D.SUB AL,1AAS DAS AAS DAS5.若AX= - 15要得到AX=15应执行的指令是()A.NEG AXB.NOT AXC.INC AXD.DEC AX 6.8086/8088系统执行传送指令MOV时()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志7. MOV AL,79ADD AL,0B1H上面指令执行后,设置的标志位 CF和OF的值是()A.CF=0,OF=1B.CF=1,OF=1C.CF=0,OF=1D.CF=1,OF=08.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是()A.DIV BXB.CWDC.XOR DX,DXD.CBWIDIV BX DIV BX IDIV BX 9.下列指令中操作数在代码段中的是()A.MOV AL,42HB.ADD AL,BLC.SUB [BX],DID.INC [DI]10.用REPE SCASB指令对字符串进行扫描,如CX>0时,扫描结束,那么表示()A.在字符串中遇上第一个AL中指定的字符B.在字符串中有一个AL中指定的字符C.在字符串中有一个不是AL中指定的字符D.在字符串中遇上第一个不是AL中指令的字符11.下列指令执行后对源和目的操作数均无影响的是()A.MOV [BX+2],AXB.SUB AX,2467HC.SBB [SI],BXD.CMP AX,BX12.表示过程定义结束的伪指令是()A.ENDPB.ENDSC.ENDD.ENDM13.下列有语法错误的语句是()A.DB 12HB.DW 4567HC.DD ˋBCDˊD.DB ˋCDˊ14.DB1 DB 8 DUP(2 DUP(3),3 DUP(2))┇MOV AX,WORD PTR DB1 [04H]上面指令执行后,AX的内容是()A.0302HB.0203HC.0202HD.0303H15.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $ - BUF1符号COUNT等价的值是()A.6B.18C.16D.816.DA1 DW 2A05HDA2 DB 0FAH┇MOV AL,BYTE PTR DA1SUB DA2,AL上述指令执行后,DA2中的内容是()A.0DAHB.0FAHC.0F5HD.0D0H17.设(SS)=338AH,(SP)=450H,执行PUSH BX,和PUSHF两条指令后,堆栈顶部的物理地址是()A.33CECHB.33CF2HC.33CF4HD.33CE8H18.设(SP)=0028H,执行段内返回指令RET 6后,SP的内容是()A.0036HB.0022HC.0030HD.0020H19.条件转移指令JNBE产生转移的条件是()A. CF=0 AND ZF=0B. CF=0 AND ZF=1C. CF=1 AND ZF=0D. CF=1 AND ZF=120.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是( )。

汇编语言复习题附答案

汇编语言复习题附答案

汇编语言复习题附答案一、选择题1. 汇编语言是一种()。

A. 高级语言B. 机器语言C. 低级语言D. 面向对象语言答案:C2. 在汇编语言中,指令通常由()组成。

A. 操作码和操作数B. 操作数和地址C. 操作码和地址D. 操作码、操作数和地址答案:A3. 汇编语言中的寄存器通常用来()。

A. 存储数据B. 存储指令C. 存储程序D. 存储地址答案:A4. 汇编语言中的指令MOV AX, BX的作用是()。

A. 将AX寄存器的值移动到BX寄存器B. 将BX寄存器的值移动到AX寄存器C. 将AX和BX寄存器的值相加D. 将AX和BX寄存器的值相减答案:B5. 汇编语言中的循环结构通常使用()指令实现。

A. JZB. JNZC. LOOPD. CALL答案:C二、填空题1. 汇编语言中的指令ADD AX, BX表示将AX和BX寄存器的值相加,并将结果存入____寄存器。

答案:AX2. 汇编语言中的指令SUB AX, BX表示将AX寄存器的值减去BX寄存器的值,并将结果存入____寄存器。

答案:AX3. 汇编语言中的指令CMP AX, BX用于比较AX和BX寄存器的值,但不进行存储操作,结果影响____标志。

答案:标志寄存器4. 汇编语言中的指令JMP LABEL用于无条件跳转到标签____处执行。

答案:LABEL5. 汇编语言中的指令PUSH AX将AX寄存器的值压入____。

答案:堆栈三、简答题1. 简述汇编语言与机器语言的区别。

答案:汇编语言是一种低级语言,它使用助记符来表示机器语言的指令,更易于人类理解和编写。

机器语言则是由二进制代码组成的指令集,直接被计算机硬件执行,但对人类来说难以阅读和编写。

2. 描述汇编语言中如何实现条件跳转。

答案:汇编语言中实现条件跳转通常使用条件跳转指令,如JZ(跳转如果零)、JNZ(跳转如果非零)、JMP(无条件跳转)等。

这些指令根据CPU的状态寄存器中的条件码标志来决定是否跳转到指定的标签处执行。

汇编语言试题及答案

汇编语言试题及答案

汇编语言试题及答案一、选择题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. 论述汇编语言在现代计算机系统中的作用和局限性。

答案:汇编语言在现代计算机系统中主要用于系统底层开发、硬件驱动编写、嵌入式系统编程等领域。

其作用在于能够直接控制硬件,实现高效的资源利用。

然而,由于其复杂度高、可读性差、可移植性低,它在高级应用开发中的使用受到限制。

汇编考试题及答案详解

汇编考试题及答案详解

汇编考试题及答案详解一、选择题(每题2分,共20分)1. 下列哪一项是汇编语言的特点?A. 高级语言B. 面向对象C. 接近硬件D. 自动内存管理答案:C2. 汇编指令MOV AX, [BX]的含义是:A. 将AX寄存器的内容移动到BX寄存器B. 将BX寄存器的内容移动到AX寄存器C. 将内存地址BX指向的内容移动到AX寄存器D. 将AX寄存器的内容存储到内存地址BX指向的位置答案:C3. 下列哪一项不是汇编语言的伪操作码?A. ORGB. DBC. IFD. MOV答案:D4. 在汇编语言中,立即数的寻址方式是:A. 直接寻址C. 间接寻址D. 基址寻址答案:A5. 汇编程序中,用于定义数据的伪操作码是:A. EQUB. ENDC. DBD. DW答案:C6. 汇编语言中,指令JMP FAR PTR LABEL的作用是:A. 跳转到当前段内的LABELB. 跳转到其他段内的LABELC. 跳转到当前段的开始位置D. 跳转到其他段的开始位置答案:B7. 汇编语言中的段寄存器CS的作用是:A. 存储当前代码段的基地址B. 存储当前数据段的基地址C. 存储当前堆栈段的基地址D. 存储当前附加段的基地址答案:A8. 下列哪一项不是汇编指令的寻址方式?B. 寄存器寻址C. 相对寻址D. 绝对寻址答案:C9. 汇编语言中,指令PUSH AX的作用是:A. 将AX寄存器的内容压入堆栈B. 将AX寄存器的内容弹出堆栈C. 将AX寄存器的内容移动到其他寄存器D. 将AX寄存器的内容存储到内存答案:A10. 汇编语言中,指令DIV AX的作用是:A. 将AX寄存器的内容除以AL寄存器的内容B. 将AX寄存器的内容除以AH寄存器的内容C. 将AX寄存器的内容除以DX寄存器的内容D. 将AX寄存器的内容除以立即数答案:A二、简答题(每题5分,共10分)1. 解释汇编语言中的堆栈操作。

答案:堆栈操作是汇编语言中的一种数据结构操作,它遵循后进先出(LIFO)的原则。

汇编语言参考复习题

汇编语言参考复习题

汇编语言参考复习题(注意:以下内容按照参考复习题的格式进行编写)一、选择题1. 汇编语言是计算机系统中一种低级语言,用于指令的 __________。

A. 编写B. 加载C. 解析D. 执行2. 在汇编语言中,使用 __________ 声明宏指令。

A. .MACROB. .DEFINEC. .CONSTD. .EQU3. 汇编语言中的数据大小以 __________ 进行计量。

A. 字节B. 位C. 字D. 十六进制字符4. 汇编语言中,寄存器是一种用于快速存取数据的 __________。

A. 存储器B. 输入设备C. 输出设备D. 计算单元5. 汇编语言中,使用 __________ 指令可以将数据存储到内存中。

A. MOVB. ADDC. CMPD. JMP二、填空题1. 汇编语言的基本组成部分包括 __________、汇编器和链接器。

2. 汇编语言中,利用 __________ 可以实现循环结构。

3. 在汇编语言中,使用 __________ 的指令可以获取用户的输入。

4. 汇编语言中的运算指令包括加法、减法、__________ 和乘法。

三、简答题1. 请简述汇编语言相对于高级语言的优势。

2. 请简要描述一下汇编语言的基本语法结构。

3. 汇编语言中的标号有什么作用?请举例说明。

四、编程题请编写汇编语言程序,实现将一个数组中的元素逆序存放的功能,并将结果打印输出。

(以下为文章的正文内容,根据题目自行组织语句和段落)一、选择题1. 汇编语言是计算机系统中一种低级语言,用于指令的执行。

2. 在汇编语言中,使用 .MACRO 声明宏指令。

3. 汇编语言中的数据大小以字节进行计量。

4. 汇编语言中,寄存器是一种用于快速存取数据的存储器。

5. 汇编语言中,使用 MOV 指令可以将数据存储到内存中。

二、填空题1. 汇编语言的基本组成部分包括汇编语言源程序、汇编器和链接器。

2. 汇编语言中,利用 LOOP 指令可以实现循环结构。

汇编语言复习题专科答案

汇编语言复习题专科答案

汇编语言复习题专科答案一、选择题1. 在汇编语言中,指令MOV AX, [BX]表示:A. 将BX寄存器的内容移动到AX寄存器B. 将AX寄存器的内容移动到BX寄存器C. 将BX寄存器指向的内存地址中的数据移动到AX寄存器D. 将AX寄存器指向的内存地址中的数据移动到BX寄存器答案:C2. 下列哪个指令是将数据从内存传送到寄存器?A. MOV AX, BXB. MOV AX, [BX]C. MOV [BX], AXD. MOV BX, AX答案:B3. 汇编语言中的立即数是什么?A. 一个常量B. 一个变量C. 一个寄存器D. 一个内存地址答案:A4. 汇编语言中,哪个指令用于实现循环结构?A. JMPB. JCC. LOOPD. CALL答案:C5. 下列哪个指令用于实现条件跳转?A. MOVB. CMPC. JZD. MOVS答案:C二、填空题1. 汇编语言中的寄存器可以分为______、______和______。

答案:通用寄存器,段寄存器,控制寄存器2. 汇编语言中的指令MOV AX, 0x1234中的0x1234是一个______。

答案:立即数3. 在汇编语言中,指令ADD AX, BX的作用是将BX寄存器的内容加到AX寄存器中,并将结果存储在______。

答案:AX寄存器4. 汇编语言中的指令SUB AX, BX的作用是将AX寄存器的内容减去BX 寄存器的内容,并将结果存储在______。

答案:AX寄存器5. 汇编语言中的指令DIV AX的作用是将AX寄存器的内容除以______。

答案:AX寄存器三、简答题1. 请简述汇编语言中的堆栈操作指令。

答案:堆栈操作指令主要包括PUSH和POP。

PUSH指令用于将数据压入堆栈,而POP指令用于从堆栈中弹出数据。

2. 解释汇编语言中的段寄存器的作用。

答案:段寄存器在汇编语言中用来存储段地址。

它们允许程序员访问不同的内存段,从而管理内存空间。

四、编程题1. 编写一个汇编语言程序,实现将AX寄存器中的值乘以2,并存储结果到DX:AX寄存器对中。

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

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

第三套题一、1. 8位无符号整数的表示范围为0~255,写成16进制形式为00H~__________;8位有符号整数的表示范围为-128~+127,写成16进制形式为__________~__________。

2. CPU发出的访问存储器的地址是__________。

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.10001000B.11111111C.00000000D.000000013.MASM语句中,表达常数不正确的形式是A.01101001BB. A346HC.’A’D. 56004.如果SS=600H,则说明堆栈段物理地址起始于A.60HB.600HC.6000HD.60000H5.dw 50 dup(?)预留了存储空间的字节数是A.25B.50C.100D.2006.下列指令中有操作数在代码段中的是A.mov ax,34hB.add ax,bxC.inc word ptr [34h]D.cmp ax,[34h]7.假设AL=5,要使得AL=0FAH,应执行的指令是A. not alB.and al,0fhC.xor al,0f0hD.or al,0fh8.设置逻辑段应该采用的一对伪指令是A.segment/endsB.start/end startC.proc/endpD.macro/endm9.条件转移指令JNE条件是A.CF=0B.CF=1C.ZF=0D.ZF=110.逻辑移位指令SHL可用于A.有符号数乘以2B.有符号数除2C.无符号数乘以2D.无符号数除以211.执行“in al, dx”指令后,进入AL寄存器的数据来自A.寄存器B.存储器C.立即数D.外设端口12.将十进制数75以压缩BCD码送入AX,正确的指令是A.mov ax,0075B. mov ax,0705C.mov ax,0075hD. mov ax,0705h13.如下指令可将AX寄存器内容改变的是A. cmp ax,bxB. test ax,bxC. and ax,bxD. xchg ax,bx14.设AH=10H,执行“neg ah”指令后,正确的结果是A. AH=10H、CF=1B. AH=F0H、CF=0C. AH=10H、CF=0D. AH=F0H、CF=115.如下程序段:again: mov es:[di],alinc diloop again可用指令__________完成相同的功能。

汇编语言复习题答案

汇编语言复习题答案

汇编语言复习题答案一、选择题1. 汇编语言是一种低级语言,它与机器语言之间的关系是:A. 汇编语言是机器语言的扩展B. 汇编语言是机器语言的直接翻译C. 汇编语言是机器语言的高级形式D. 汇编语言是机器语言的汇编答案:D2. 在汇编语言中,指令“MOV AX, 1234H”的作用是:A. 将内存地址1234H的数据移动到AX寄存器B. 将立即数1234H移动到AX寄存器C. 将AX寄存器的内容移动到内存地址1234HD. 将AX寄存器的内容与1234H进行比较答案:B3. 以下哪个不是汇编语言中的寻址方式:A. 直接寻址B. 间接寻址C. 寄存器寻址D. 堆栈寻址答案:D二、填空题1. 汇编语言程序中的伪操作码包括但不限于:______、______、______等。

答案:ORG, DB, DW2. 汇编语言中的指令MOV AX, BX表示将BX寄存器的内容________到AX寄存器。

答案:复制3. 汇编语言中,指令“ADD AX, BX”执行后,AX寄存器的值将_______。

答案:增加BX寄存器的值三、简答题1. 解释汇编语言中“堆栈”的概念及其基本操作。

答案:堆栈是一种特殊的数据结构,它遵循后进先出(LIFO)原则。

基本操作包括PUSH(压栈)和POP(出栈),PUSH用于将数据压入堆栈顶部,POP用于从堆栈顶部取出数据。

2. 描述汇编语言中“条件跳转”指令的工作原理。

答案:条件跳转指令根据程序中设置的条件是否满足来决定是否跳转到指定的地址继续执行。

常见的条件跳转指令包括JE(零跳转)、JNE(非零跳转)、JMP(无条件跳转)等。

四、编程题1. 编写一个汇编语言程序片段,实现将AX寄存器的值加1。

答案:INC AX2. 编写一个汇编语言程序片段,实现将BX寄存器的值与立即数5相加,并将结果存储在CX寄存器中。

答案:MOV CX, BXADD CX, 5五、综合题1. 假设有一个汇编语言程序需要实现两个无符号数的乘法,其中一个数存储在AX寄存器中,另一个数存储在BX寄存器中。

汇编语言考试题库及答案

汇编语言考试题库及答案

汇编语言考试题库及答案一、选择题1. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. ADDC. SUBD. MUL答案:A2. 假设寄存器AX的值为1234H,执行指令“AND AX, 0F0H”后,AX 的值是多少?A. 1230HB. 0F34HC. 0F30HD. 1234H答案:C二、填空题1. 在汇编语言中,________指令用于将立即数加载到寄存器中。

答案:MOV2. 寄存器EAX的高16位是_______。

答案:AX三、简答题1. 解释汇编语言中的“段”是什么概念?答案:在汇编语言中,“段”是内存管理的一个概念,用于将程序的不同部分(如代码、数据、堆栈)分隔开来。

每个段都是内存中的一个区域,它有一个段基址,程序中的地址由段基址和偏移量组合而成。

2. 描述汇编语言中循环结构的实现方式。

答案:循环结构在汇编语言中通常通过标签和跳转指令实现。

首先定义一个循环的开始标签,然后在循环体中执行需要重复的操作。

循环结束前使用条件跳转指令(如JE、JNE等)跳回循环开始的标签,直到满足跳出循环的条件。

四、编程题1. 编写一个汇编程序,实现将两个16位无符号数相加,并将结果存储在寄存器AX中。

答案:```MOV AX, 1234HMOV BX, 5678HADD AX, BX```上述程序首先将1234H加载到AX寄存器中,然后将5678H加载到BX寄存器中,最后使用ADD指令将BX中的值加到AX中,结果存储在AX寄存器中。

2. 编写一个汇编程序,实现将字符串"Hello, World!"存储在内存中。

答案:```.DATAString DB 'Hello, World!', 0```上述程序在数据段定义了一个字符串"Hello, World!",后面跟着一个空字符作为字符串的结束标记。

汇编语言复习题(带答案)

汇编语言复习题(带答案)

汇编语言复习题(带答案)汇编语言复习题(带答案)汇编语言期末复习题第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寄存器后执行INT21H。

TK8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。

TK9、CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。

在此,称引起紧急事务的事件为中断源。

TK10、在字符串操作指令中,DS∶SI指向源串,ES∶DI指向目的串。

TK11、计算机系统通过接口与外围设备通信。

TK12、键盘I/O、显示I/O和打印I/O分别对应、和号中断。

TK13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。

每个字的第一个字节为显示字符的ASCII码,第二个字节为显示字符的属性。

TK14、简述上机运行汇编语言程序的过程。

JD答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。

15、简述程序中指令和伪指令的区别。

JD答:能被计算机识别并执行的二进制代码,它规定了计算机能完成的某一操作。

《汇编语言》复习题库

《汇编语言》复习题库

《汇编语言》复习题库一、单项选择题1、在下列的选项中,能够组成计算机系统的是()。

A、硬件系统和软件系统B、CPU、存储器、输入/输出设备C、操作系统、各种语言D、系统软件和应用软件2、以8086/8088为CPU的微机内存最大容量为。

A、4MBB、1MBC、640KBD、64KB3、下面几个程序中不属于翻译程序的是。

A、汇编程序B、编译程序C、解释程序D、编辑程序4、在下列的选项中,能够组成计算机系统的是()。

A、硬件系统和软件系统B、CPU、存储器、输入/输出设备C、操作系统、各种语言D、系统软件和应用软件5、汇编语言属于()。

A、用户软件B、系统软件C、高级语言D、机器语言6、汇编语言源程序是()程序。

A、不可直接执行的B、可直接执行的C、经汇编程序汇编后就可执行的D、经连接后就可直接执行的7、8086/8088 CPU的寄存器组中,8位的寄存器共有()个。

A、4B、6C、8D、108、如果指令的运算结果为0,则()标志位为1。

A、SFB、OFC、ZFD、CF9、物理地址的形成过程是将段地址左移()位加偏移地址。

A、2B、3C、4D、510、如果某一存储单元的逻辑地址为236FH:1000H。

则物理地址为()。

A、1236FHB、336FHC、336F0HD、246F0H11、如果数据存放在DI的内容为偏移地址的数据段中,设DS=3624H,DI=2200H,则此存储单元的物理地址为()。

A、38440HB、58240HC、25624HD、58240H12、汇编语言属于()。

A、用户软件B、系统软件C、高级语言D、机器语言13、汇编语言源程序经汇编程序汇编后产生的文件的扩展名是()。

A、EXEB、OBJC、ASMD、LST14、中央处理器CPU是由()组成的。

A、运算器B、控制器C、寄存器组D、前三者15、8086/8088 CPU的寄存器组中,16位的寄存器共有()个。

A、10B、12C、13D、1416、在程序执行过程中,IP寄存器始终保存的是()。

汇编语言考试复习题及答案

汇编语言考试复习题及答案

一、单项选择题(从下列每题的四个选择中选择一个正确的,填入答题纸的相应位置。

每小题2分,共30分)1.下列指令有语法错误的是__________。

A) PUSH AL B) ADDC AX,50HC) MOV [SI],[DI] D) JMP WORD PTR[BX+5]见书:35页,PUSH2.执行下列程序段后,(AX)= ________。

TAB DW 1,2,3,4,5,6ENTRY EQU 3MOV BX, OFFSET TABADD BX,ENTRYMOV AX,[BX]A) 0003H B) 0300H C) 0400H D) 0004H3.NC指令不影响_________标志。

A) OF B) CF C) ZF D) SF4.执行下列指令后:STR1 DW ‘AB’STR2 DB 16 DUP(?)CNT EQU $ -STR1MOV CX,CNTMOV AX,STR1HLT寄存器CL的值是________,寄存器AX的值是________。

①A) 10H B) 12H C) 0EH D) 0FH②A) 00ABH B) 00BAH C) 4142H D) 4241H5.汇编语言源程序经汇编后不能直接生成文件。

A).OBJ B).LST C).EXE D).CRF6.8086 CPU在基址加变址的寻址方式中,已知BX=2000H,SI=1234H,则指令“MOV AX,[BX+SI+2]”的源操作在中。

(A)数据段中偏移量为3236H的字节(B)数据段中偏移量为3234H的字节(C)附加段中偏移量为3236H的字节(D)附加段中偏移量为3234H的字节(A)19,20 (B)20,无右孩子(C)无左孩子,20 (D)无左孩子,无右孩子7.执行下面的程序段后,DA T1单元的值是。

DAT1 DB 12H,34HDAT2 DB 56H,78HMOV AX,WORD PTR DAT1CMP AX,WORD PTR DAT2JA DONEMOV BX,WORD PTR DAT2MOV WORD PTR DA T2,AXMOV WORD PTR DA T1,BXDONE:HLTA)12H B)34H C)56H D)78H8.下列指令中,正确的一条是。

汇编语言复习题(附答案)

汇编语言复习题(附答案)

汇编语言复习题注:蓝色标记的为答案,此答案仅供参考,大家自己做一下或看以一下,认为不对的地方,可以提出来一起讨论一下,另外看一下课后老师布置的相应作业。

在此文档最后最后附有课后四、六章的答案,大家抓紧时间复习哦!一、选择题1.把要执行的程序与库文件连接起来形成可执行文件的系统程序是( B ) 。

A.汇编程序B.连接程序C.机器语言程序D.源代码程序2.在8088/8086的寄存器组中,CPU确定下一条指令的物理地址时需要用到的寄存器对是( C )。

A..SS和SPB.DS和DIC.CS和IPD.ES和SI3.为了使主机访问外设方便起见,外设中的每个寄存器给予一个( C )。

A.物理地址B. 逻辑地址C. 端口地址D.段地址4.MOV AX,3064H,该指令中源操作数采用的寻址方式是( A )。

A.立即B.直接C.寄存器相对D.寄存器间接5.换码指令的助记符是( C )。

A. XCHGB. LEASC.XLATD. MOV6.如果A≥B(A、B有符号数)发生转移,应选择的条件转移指令是 ( JGE )。

7.下列符号中,可用作标识符的是( C )。

A.MOVB.AXC.MSG1D.1ABC8.X DB 10H DUP(1,2)内存变量定义语句拥有了( A )个字节的存储空间。

A.20DB.10DC.20HD.10H9.当DF=0时,执行串操作指令MOVSB,变址寄存器SI、DI的值将( C )。

A. 不变B.减1C.加1D.无法确定10.如下指令可将AX寄存器内容改变的是( A )。

A.AND AX , BX B.TEST AX , BX C.CMP AX , BX D.XCHG AX , AX11.16位CPU支持的I/O地址范围是( D )。

A.0~0FFFFFH B.0~0FFFFH C.0~0FFFH D.0~0FFH12.MUL CL指令实现的功能是( A )。

A.无符号乘法:AX← AL×CL B.有符号乘法:AX← AL×CLC.无符号乘法:DX← AL×CL D.有符号乘法:DX← AL×CL13.DOS系统功能调用(INT 21H)中,显示字符串的功能号是( D )。

汇编语言考试复习题【范本模板】

汇编语言考试复习题【范本模板】

汇编总复习第一章微型计算机基础一、选择题1.8088是第一代个人计算机所采用的微处理器,其内部数据总路线是A。

A.16位B.8位C.20位D.32位2.8086微处理器,其地址总线是C。

A.16位B.8位C.20位D.32位3.一个完整的计算机系统包括B。

A.计算机及其外设B.硬件系统与软件系统C.主机、键盘、显示器D.系统软件、应用软件4.计算机存储系统中,高速缓冲(CACHE)存储器可以A。

A.提高整个系统的存储速度B.提高存储可靠性C.增加存储容量D.作暂存存储器用5.对存储器按字节进行编址,若某存储器芯片共有10根地址线,则该项存储器芯片的容量为B。

A.512B B.1KB C.2KB D.4KB6.地址总线的宽度与CPU的A相关。

A.内在寻址能力B.字长C.运算速度D.运算精度7.数据总线是B的。

A.单向B.双向C.某条单向,总体双向D.高阻二、真空1.根据传送的信息不同,一般计算机中的总路线可分为地址总线、数据总路线和控制总线。

2.CACHE是在CPU与内存之间设置的一个小容量的高速缓冲存储器.三、综合题1.设8086CPU内部寄存器CS=B987H,IP=1117H,试计算存储器的物理地址。

CS ×24+ IP = B9870H + 1117H = 0BA987H2.设某机字长8位(含一位符号位),分别写出下列各二进制数的原码、补码和反码。

0,—0,0.1000,—0.1000,0。

1111,—0.1111,1101,-1101[0]原=00000000 [-0。

1000]原=1。

1000000 [0。

1000]原=0.1000000 [1101]原=00001101[0]补=00000000 [—0。

1000]补=1.1000000 [0.1000]补=0.1000000 [1101]补=00001101[0]反=00000000 [—0。

1000]反=1.0111111 [0。

汇编考试题及答案

汇编考试题及答案

汇编考试题及答案一、选择题(每题2分,共20分)1. 以下哪个指令是汇编语言中的无条件跳转指令?A. JZB. JEC. JMPD. JC答案:C2. 在汇编语言中,哪个指令用于将数据从内存读取到寄存器中?A. MOVB. ADDC. SUBD. MUL答案:A3. 8086微处理器中,哪个寄存器用于存储指令指针?A. IPB. SPC. BPD. SI答案:A4. 汇编语言中,哪个指令用于将一个字节的数据与累加器中的值进行逻辑“与”操作?A. ANDB. ORC. XORD. NOT答案:A5. 在8086微处理器中,哪个指令用于将累加器的内容压入堆栈?A. PUSH AXB. POP AXD. RET答案:A6. 汇编语言中,哪个指令用于将一个字数据从寄存器移动到内存?A. MOV [BX], ALB. MOV AL, [BX]C. MOV AL, BLD. MOV [BX], BL答案:A7. 8086微处理器中,哪个指令用于将当前的CS和IP寄存器的值压入堆栈,然后跳转到指定的地址?A. CALLB. RETC. INTD. IRET8. 汇编语言中,哪个指令用于将一个字数据从内存移动到寄存器?A. MOV AL, [BX]B. MOV [BX], ALC. MOV AL, BLD. MOV BL, [BX]答案:A9. 在汇编语言中,哪个指令用于将一个寄存器的内容与另一个寄存器的内容进行逻辑“或”操作?A. ANDB. ORC. XORD. NOT答案:B10. 8086微处理器中,哪个指令用于从堆栈中弹出一个字数据到累加器?A. PUSH AXB. POP AXC. CALLD. RET答案:B二、填空题(每题2分,共20分)1. 汇编语言中的________指令用于将数据从寄存器移动到内存。

答案:MOV2. 8086微处理器中的________指令用于无条件跳转。

答案:JMP3. 在汇编语言中,________指令用于将一个字节的数据与累加器中的值进行逻辑“异或”操作。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

汇编总复习第一章微型计算机基础一、选择题1.8088是第一代个人计算机所采用的微处理器,其内部数据总路线是A。

A.16位B.8位C.20位D.32位2.8086微处理器,其地址总线是C。

A.16位B.8位C.20位D.32位3.一个完整的计算机系统包括B。

A.计算机及其外设B.硬件系统与软件系统C.主机、键盘、显示器D.系统软件、应用软件4.计算机存储系统中,高速缓冲(CACHE)存储器可以A。

A.提高整个系统的存储速度B.提高存储可靠性C.增加存储容量D.作暂存存储器用5.对存储器按字节进行编址,若某存储器芯片共有10根地址线,则该项存储器芯片的容量为B。

A.512B B.1KB C.2KB D.4KB6.地址总线的宽度与CPU的A相关。

A.内在寻址能力B.字长C.运算速度D.运算精度7.数据总线是B的。

A.单向B.双向C.某条单向,总体双向D.高阻二、真空1.根据传送的信息不同,一般计算机中的总路线可分为地址总线、数据总路线和控制总线。

2.CACHE是在CPU与内存之间设置的一个小容量的高速缓冲存储器。

三、综合题1.设8086CPU内部寄存器CS=B987H,IP=1117H,试计算存储器的物理地址。

CS ×24+ IP = B9870H + 1117H = 0BA987H2.设某机字长8位(含一位符号位),分别写出下列各二进制数的原码、补码和反码。

0,-0,0.1000,-0.1000,0.1111,-0.1111,1101,-1101[0]原=00000000 [-0.1000]原=1.1000000 [0.1000]原=0.1000000 [1101]原=00001101[0]补=00000000 [-0.1000]补=1.1000000 [0.1000]补=0.1000000 [1101]补=00001101[0]反=00000000 [-0.1000]反=1.0111111 [0.1000]反=0.1000000 [1101]反=00001101[-0]原=10000000 [0.1111]原=0.1111000 [-0.1111]原=1.1111000 [-1101]原=10001101 [-0]补=00000000 [0.1111]补=0.1111000 [-0.1111]补=1.0001000 [-1101]补=11110011 [-0]反=11111111 [0.1111]反=0.1111000 [-0.1111]反=1.0000111 [-1101]反=111100103.写出右边各数的原码、补码和反码。

7/16,4/16,1/16,0,-1/16,-4/16,-7/16 [7/16]原=[7/16]补=[7/16]反=7×2-4=0111×2-4 =0.0111[4/16]原=[4/16]补=[4/16]反=4×2-4=0100×2-4 =0.0100[1/16]原=[1/16]补=[1/16]反=0001×2-4 =0.0001[0]原=[0]补=[0]反=0000[-1/16]原=1.0111 [-1/16]补=1.1001 [-1/16]反=1.1000[-4/16]原=1.0100 [-4/16]补=1.1100 [-4/16]反=1.1011[-7/16]原=1.0100 [-7/16]补=1.1100 [-7/16]反=1.1011第二章汇编语言与汇编程序1.在8086系统中,设(DS)=1000H,(ES)=2000H,(SS)=1200H,(BX)=0300H,(SI)=0200H,(BP)=0100H,V AR的编移量为0060H,请指出下列指令的目标操作数的寻址方式,若目标操作数为存储器操作数,请计算它们的物理地址是多少?(1) MOV BX,12 (2) MOV AL,128 (3) MOV [BX],DX (4) MOV ES:[SI],AX(5) MOV V AR,8 (6) MOV [1000H],DX (7) MOV 6[BX],CX(8) MOV [BX][SI],AX (9) MOV 6[BP][SI],AL答案:2.设(DS)=2000H,(SS)=3000H,(CS)=1200H,(BX)=0300H,(IP)=0100H,指令标号LAB的偏移量为0060H,(20300H)=50H,(20301H)=01H,(20306H)=0BH,(20306H)=05H,试确定以下JMP指令转向的物理地址是多少?(1)JMP BX (2)JMP 6[BX]答:(1) ∵(IP)=(BX)=0300H∴所以转向的物理地址为12300H(2) ∵(IP)=(DS:[BX+6])=(20306H)=050BH∴所以转向物理地址为1250BH3.设(CS)=2000H,CS:0100H单元有一条JMP SHORT LAB指令,若其中的位移量为:(1)60H (2)80H (3)0E0H试写出转向目标的物理是多少?答:因为CS:0100H处存放两字节指令,所以当执行该指令时(IP)=0102H (1)转向物理地址为:(CS)*10H(IP)+0060H=20162H(2)转向物理地址为:(CS)*10H(IP)+OFF80H=20082H(3)转向物理地址为:(CS)*10H+(IP)+OFFEOH=200E2H4.试述以下指令的区别(1) MOV AX,3000H 与MOV AX,[3000H]MOV AX,3000H指令源操作数的寻址方式为立即寻址方式,指令执行结果为:(AX)=3000H。

而MOV AX,[3000H]指令源操作数的寻址方式为直接寻址方式,指令执行结果为:(DS:3000H)→AX。

(2) MOV AX,MEM 与MOV AX,OFFSET MEMMOV AX,MEM指令源操作数的寻址方式为直接寻址方式,指令执行结果为:(DS:MEM)→AX。

而MOV AX,OFFSET MEM指令的执行结果是把MEM的偏移量送AX。

(3) MOV AX,MEM 与LEA AX,MEMMOV AX,MEM指令的执行结果是(DS:MEM)→AX。

而LEA AX,MEM的执行结果是把MEM的偏移量送AX。

5.指出下列指令的错误题目答案⑴MOV [AX],BX 寄存器间接寻址方式不能用AX寄存器⑵MOV AL,1280 源操作数超出目标范围⑶MOV [BX],9 目标操作数类型未知⑷MOV DS,1000H 立即数不能直接送段寄存器⑸MOV V AR,[BX] 两个操作数不能同时为存储器操作数⑹MOV M1,M2 两个操作数不能同时为存储器操作数⑺MOV 6,CX 操作数不能是立即数⑻MOV AX,[SI][DI] 源操作数寻址方式错⑼MOV CS,AX 操作数不能是代码段寄存器⑽MOV BX,OFFSET V AR[SI] OFFSET后只能跟变量或标号名6.写出把首址为BUF的字型数组的第4个字送到AX寄存器的指令,要求使用以下几种寻址方式⑴直接寻址方式⑵使用BX的寄存器间接寻址方式⑶使用BX的寄存器相对寻址方式答案:⑴MOV AX,BUF+3*2⑵LEA BX,BUF+3*2MOV AX,[BX]⑶MOV BX,3*2MOV AX,BUF[BX]7.设(AX)=0C5FFH,(BX)=9E00H,试实现以下要求:⑴ADD AX,BX 指令执行后,根据结果设置标志位ZF、SF、CF、OF、AF、PF,并讨论结果的正确性。

答案:执行ADD AX,BX 指令后,(AX)=0110001111111111B,并且最高位向前有进位。

因此,设置标志位如下:ZF SF CF OF AF PF0 0 1 1 0 1(NZ) (PL) (CY) (OV) (NA) (PE)讨论结果:对于无符号数而言,因为CF=1,所以结果不正确。

对于带符号数而言,因为OF=1,所以结果不正确。

8.编程序使⑴使AL的各位变反。

⑵BX寄存器低四位置1。

⑶AX寄存器的低四位清0。

⑷使CX寄存器的低四位变反。

⑸用TEST指令测试AL寄存器的位0和位6是否同时为0,若是则把0送DH寄存器,否则把1送DH寄存器。

答案:⑴NOT AL⑵OR BX,000FH⑶AND AX,0FFF0H⑷XOR CX,000FH⑸TEST AL,0100001BJZ AMOV DH,1 JMP SHORT B A: MOV DH,0 B: …9. 试分析下面的程序段完成什么功能? MOV CL,4 SHL DX,CL MOV BL,AH SHL AL,CL SHR BL,CL OR DL,BL 答案:把DX 和AX 一对寄存器所形成的32位内容左移四位。

其中DX 中为高16位,AX 中为低16位。

第二-三章 汇编语言与程序设计1.下面的数据项定义了多少个字节? DA TA_1 DB 6DUP(4DUP(0FFH)) 24个字节不一样,分别是72H ,04H 和04H ,72H 。

存储字时低8位存在低字节,高8位存在高字节。

3.下面的两个数据项分别设置了多少个字节? (1)ASC_DA TA DB ‘12344个字节ASC_DATA(2)HEX_DATA DB 1234H2个字节4.执行下列指令后,AX 寄存器中的内容是什么? TABLE DW 10,20,30,40,50 ENTRY DW 3MOV BX,OFFSET TABLE ADD BX,ENTRY MOV AX,[BX]AX 寄存器内容为40HTABLE TABLE+35.指出下列指令的错误 (1)MOV AH ,BX源、目的字长度不一致 (2)MOV [SI],[BX]源、目的不能同时为存贮器寻址方式 (3)MOV AX ,[SI][DI]基址变址方式不能有SI 和DI 的组合 (4)MOV AX ,[BX][BP]基址变址方式不能有BX 和BP 的组合 (5)MOV [BX],ES :AX在8086寻址方式中,AX 不能做为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式(6)MOV BYTE PTR[BX],1000 1000超出一个字节的表述范围 (7)MOV AX ,OFFSET [SI]OFFSET 只能用于简单变量,应去除 (8)MOV CS ,AXCS 不能作为目的的寄存器 (9)MOV DS ,BP段地址不能直接送入数据段寄存器6.设(DS)=1BOOH,(ES)=2BOOH ,有关存储器地址及其内容如右图所示,请用两条指令把X 装入AX 寄存器。

答案:LES BX, [2000H]X..8000H 2B00H 2B00:8000H1B00:2000H 1B00:2002H …………MOV AX, ES: [BX]7.试分析下面的程序段完成什么操作?MOV CL , 04SHL DX , CLMOV BL , AHSHL AX , CLSHR BL , CLOR DL , BL答案: 将DX: AX中的双字左移4位(乘16)8.假设(CS)=3000H,(DS)=4000H,(ES)=2000H,(SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=206OH,(DI)=3000H,(43000H)=0A006H,(23000H)=OB116H,(33000H)=0F802H,(25060)=00B0H,(SP)=0FFFEH,(CF)=1,(DF)=1,请写出下列各条指令单独执行完后,有关寄存器及存储单元的内容,若影响状态标志寄存器请给出状态标志SF、ZF、OF、CF的值。

相关文档
最新文档