汇编语言复习提纲.docx

上传人:b****7 文档编号:9148171 上传时间:2023-02-03 格式:DOCX 页数:24 大小:50.26KB
下载 相关 举报
汇编语言复习提纲.docx_第1页
第1页 / 共24页
汇编语言复习提纲.docx_第2页
第2页 / 共24页
汇编语言复习提纲.docx_第3页
第3页 / 共24页
汇编语言复习提纲.docx_第4页
第4页 / 共24页
汇编语言复习提纲.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

汇编语言复习提纲.docx

《汇编语言复习提纲.docx》由会员分享,可在线阅读,更多相关《汇编语言复习提纲.docx(24页珍藏版)》请在冰豆网上搜索。

汇编语言复习提纲.docx

汇编语言复习提纲

一、单项选择题:

(本题共20小题,每小题2分,共40分)

试题一

1.设DS=5788H,偏移地址为94H,该字节的物理地址是。

B

(A)57974H

(B)57914H

(C)5883H(D)58ECH

4.IP指令指针寄存器是属于。

D

(A)通用寄存器

(B)段寄存器

(C)变址寄存器

(D)控制寄存器

5.下面有语法错误的指令是。

D

(A)ADDAL,AH

(B)ADD[BX+3],AL

(C)ADDAH,[DI]

(D)ADD[BX],DA1(DA1是变量名)

9.完成对DX的有符号数除以2的指令是。

B

(A)IDIV2P77

(B)SARDX,1

(C)DIV2

(D)RCRDX,1

10.使进位位置1的指令是。

C

(A)CLC清进位位

(B)CMCP319

(C)STC

(D)NOPP321

11.设AL=̶100,要使AL=100应执行的指令是。

B

(A)NEGALP321

(B)NOTALP321

(C)INCALP320

(D)DECALP320

12.在条件转移指令中,结果为负数则转移的指令是。

C

(A)JNS

(B)JZ

(C)JS

(D)JC

17.下面的XCHG指令中,语法正确的是。

BP322

(A)XCHGAL,DS

(B)XCHGBH,[BX]

(C)XCHGAL,OFH

(D)XCHGBUF1,BUF2

21.一条指令中目的操作数不允许使用的寻址方式是。

B

(A)寄存器寻址

(B)立即数寻址

(C)变址寻址

(D)直接寻址

22.设SP=1FFEH,执行下列指令后,SP寄存器的值是。

C

   ┇

   POPF

   PUSHBX

   PUSHBX

   ┇

(A)2000H

(B)2002H

(C)1FFCH

(D)1FFEH

23.LESSI,[2000H]指令的全部功能是。

C

(A)把地址2000H送SI

(B)把地址2000H字单元的内容送SI

(C)把地址2000H字单元内容送SI,把2002H字单元内容送ES

(D)把地址2000H字单元内容送ES,把2002H字单元内容送SI

24.设AL=04H,CL=0F8H,执行MULCL指令后,结果是。

C

(A)AX=0032H

(B)AX=00E0H

(C)AX=03E0H

(D)AX=0FFE0H

25.设ES=3000H,DI=00FFH,CX=0005H,AL=41H,DF=0,从300FFH开始的连续5个字节单元内容分别是44H,43H,42H,41H。

执行REPNZSCASB指令后,正确的结果是。

C

(A)DI=0104H,CX=0000H

(B)DI=0103H,CX=0001H

(C)DI=0102H,CX=0002H(D)DI=0101H,CX=0003H

28.某数据段如下:

  DATASEGMENT

  ORG 20H

  X  DB  12H,'AB'

  Y  DW  789AH

  DATAENDS

Y单元的偏移地址是。

D

(A)20H

(B)21H

(C)22H

(D)23H

29.下面指令语句中,语法正确的是。

D

(E)INC[BX]

(F)CMP[BX],20

(G)JMPFAROPR

(H)MOVWORDPTR[BX],20

30.DATA SEGMENT

   DA1  DB 30DUP(?

   DA2  DW 1456H,789AH

   DA3  DW DA2

DATA ENDS

   ┇

   ┇

   MOV  BX,DA3

上述指令执行后,BX中的内容是。

A

(A)30

(B)31

(C)32(D)21H

34.数据定义如下:

BUF1 DB 10

       BUF2 DW 20DUP(?

实现将BUF1单元的内容与BUF2开始的条三个字节单元内容相比较的指令是。

C

(A)CMPBUF1,BYTEPTRBUF2+3

(B)MOVAL,BUF1

CMPAL,BUF2+2

(C)MOVAL,BUF1

CMPAL,BYTEPTRBUF2+2

(D)MOVAL,BUF1

CMPAL,BUF2+3

39.执行循环指令LOOPNZEND0时,若要使其重复执行,应满足的条件是。

A

(A)CX≠0且ZF=0

(B)CX≠0或ZF=0

(C)CX≠0且ZF=1

(D)CX≠0或ZF=1

40.当一个程序使用DOS系统功能调用退出用户程序时,在编写INT21H指令前,应选用的指令是。

C

(A)MOVAH,01H

(B)MOVAX,4CH

 

(c)MOVAH,4CH

(D)RET

48.用CMP指令对两个无符号数进行A-B的比较后,若A=B或A>B,则产生转移,这种情况应选择的条件转移指令是。

D

(A)先用JE指令,再用JNC指令

(B)先用JNC指令,再用JE指令

(C)上述两条条件转移指令(JE和JNC)无先后次序

(D)用JL/JGE指令

 

试题二

2.下面四个寄存器中,不能作为间接寻址的寄存器是。

B

(A)BX

(B)CX

(C)BP

(D)DI

3.用来表示堆栈指针的寄存器是。

C

(A)IP

(B)BP

(C)SP

(D)SI

6.完成将AX清零,并使标志位CF清零,下面错误的指令是。

C

(A)SUBAX,AX

(B)XORAX,AX

(C)MOVAX,00H

(D)ANDAX,00H

7.下面数据传送指令中,正确的指令是。

D

(A)MOVBUF1,BUF2内存-内存

(B)MOVCS,AX差一句

(C)MOVCL,1000H8-16位

(D)MOVDX,WORDPTR[SP+SI]

8.下面指令中,源操作数的寻址方式为直接寻址的指令是。

D

(A)ADDAX,WORDPTR[BX+DI]

(B)ADDAX,BX

(C)INCCX(D)MOVBX,7FFFH

13.下面表示段定义结束的命令是。

B

(A)ENDP

(B)ENDS

(C)ENDM无此命令(D)NED无此命令

14.设AL,BL中都是有符号数,当AL≤BL时转至NEXT处,在CMPAL,BL指令后应选用正确的条件转移指令是。

B

(A)JBE

(B)JNGP320

(C)JNA

(D)JNLE

15.指令LOOPZ的循环执行条件是。

C

(A)CX≠0并且ZF=0

(B)CX≠0或ZF=0

(C)CX≠0并且ZF=1

(D)CX≠0或ZF=1

16.执行下列指令后,SP寄存器的值是。

A

MOV SP,1000H

 PUSHF

(A)0FFEH

(B)OFFFH

(C)1001H(D)1002H

31.完成将有符号数BX的内容除以2的正确指令是。

B

(A)SHRBX,1

(B)SARBX,1

(C)RORBX,1

(D)RCRBX,1

32.下面指令中影响状态标志位CF的指令是。

DP73

(A)INCAX

(B)DECAX

(C)NOTAX

(D)NEGAX

33.判断当CX=0时,转ZERO执行的错误指令是。

BMOV AX,CX非运算语句

(A)CMPCX,0

JZZERO

(B)MOV AX,CX

JZZERO

(C)ORCX,CX

JZ ZERO

(D)JCXZZERO

45.调用2号DOS系统功能,在屏幕上显示一个字符,事先要其ASCII码存放在。

DP332

(A)AL中

(B)BL中

(C)CL中

(D)DL中

46.设数据定义如下:

 ARRAY DW 1,2,3

执行指令ADDSI,TYPEARRAY相当于完成下面同等功能的指令是。

BP41

(A)ADDSI,O

(B)ADDSI,2

(C)ADDST,3

(D)ADDSI,0

47.设数据定义如下:

 BUFDW 100DUP(?

执行指令MOVCX,LENGTHBUF相当于完成下面同等功能的指令是。

C

(A)MOVCX,00C8H

(B)MOVCX,0200H

(C)MOVCX,0064H(D)MOVCX,0100H

49.以下能表示指令存放地址的是()。

C

(A)符号名(B)变量名(C)标号(D)常量

50.完成寄存器BX的内容求补运算,下面错误的指令是。

C,D

(A)NEGBX

(B)NOTBX

INCBX

(C)XORBX,0FFFFH

INCBX

(D)MOVAX,0

SUBAX,BX

51.判断当AX的内容为负数时,转MINUS执行,下面错误的指令是。

A

(A)NOTAX

JNSMIBUS

(B)TESTAX,8000H

JNZ MINUS

(C)SHLAX,1

JC MINUS

(D)ORAX,AX

JSMINUS

52.下面指令序列执行后,正确的结果是。

D

MOV AL,OFFH

ADD AL,AL  

ADC AL,AL

(A)AL=0F8H CF=1

(B)AL=0F8H CF=0

(C)AL=0F9H CF=0(D)AL=0FDH CF=1

53.用户为了解决自己的问题,用汇编语言所编写的程序,称为()B

(A)目标程序(B)源程序(C)可执行程序(D)汇编程序

试题三

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

①无符号十进制数136②带符号十进制数-120的补码表示

③压缩型BCD码十进制数88④8位二进制数-8的补码表示

19.指令指针寄存器是()。

①IP②SP③BP④PSW

20.当执行指令ADDAX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。

①表示结果中含1的个数为偶数②表示结果中含1的个数为奇数

③表示该数为偶数④表示结果中低八位含1的个数为偶数

26.执行下列指令后,正确的结果是()。

MOVAL,100

MOVBL,-2

①AL=100HBL=02H②AL=64HBL=0FEH

③AL=64HBL=82H④AL=100HBL=0FEH

27.设数据段中已有:

DA1DB12H,34H

DA2DW56H,78H

下面有语法错误的句是()。

①ADR1DWDA1②MOVDA1+1,AX

③MOVBYTEPTRDA2+1,AL④MOVWORDPTRDA1+1,AX

35.设AL=0B4H,BL=11H,指令“MULBL”和指令“IMULBL”分别执行后OF,CF的值为

①OF=1,CF=0②OF=1,CF=1②P76

③OF=0,CF=0④OF=0,CF=1

36.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。

①CX=0且ZF=0②CX=0且ZF=1

③CX=0或ZF=0④CX=0或ZF=1

37.MOVAX,ES:

COUNT[DI]源操作数的寻址方式是()③

   ①.基址寻址   ②.立即寻址   ③.变址寻址   ④.基址变址寻址

38.在汇编语言程序中,对END语句的叙述正确的是()。

①END语句是一可执行语句②END语句表示程序执行到此结束

③END语句表示源程序到此结束④END语句在汇编后要产生机器码

41.指令MOVBX,MASK[BP],若MASK=3500H,SS=1200H,DS=1000H,BP=1000H,那么物理地址为()②

   ①.17500H ②.16500H  ③.14500H  ④.13500H

42.下列指令执行后总是使CF=0,OF=0的是()。

①AND②NEG③NOT④INC

43.完成同指令XCHGAX,BX相同功能的指令或指令序列是()。

①MOVAX,BX②MOVBX,AX

③PUSHAX④MOVCX,AX

POPBXMOVAX,BX

MOVBX,CX

44.设AH=0,AL=06H,BL=09H,执行指令

ADDAL,BL

AAA

之后,其结果应是()。

①AH=01,AL=05②AH=1AL=15

③AH=0AL=0FH④AH=0AL=05

54.下面的数据传送指令中,错误的操作是()。

④立即数?

①MOVSS:

[BX+DI],1000H②MOVDX,1000H

③MOVWORDPTR[BX],1000H④MOVDS,2000H

55.下面指令执行后,变量DAB中的内容是()。

DAWDW2A05H

DABDB0FAH

MOVAL,BYTEPRTDAW

SUBDAB,AL

①0DAH②0FAH③0F5H④0D0H

56.下列四组寄存器中,在段内寻址时可以提供偏移地址的寄存器组是()③

   ①.AX,BX,CX,DX     ②.BP,SP,IP,CS

   ③.BX,BP,SI,DI     ④.BH,BL,CH,CL

57. 下列传送指令中,有语法错误的指令是()。

①.MOVCS,AX   ②.MOVDS,AX  

③.MOVES,AX     ④.MOVSS,AX

58.当一个带符号数大于0FBH时程序转移,需选用的条件转移指令是()。

①JLE②JNL③JNLE④JL

59.下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为②

TESTBH,01H逻辑与

_________K1

①JNE②JNZ③JS④JC

60.测试BL寄存器内容是否与数据4FH相等,若相等则转NEXT处执行,可实现的方法是()。

①TESTBL,4FH

JZNEXT

②XORBL,4FH

JZNEXT

③ANDBL,4FH

JZNEXT

④ORBL,4FH

JZNEXT

二.填空题:

(本题共12空,每空2分,共24分)

试题一

2.8086/8088CPU允许的最大存储空间为1MB,其地址编号从00000H到

0FFFFFHH。

3.汇编语言是一种面向机器的语言。

完成将汇编语言源程序翻译成机器语言目的程序的翻译程序称汇编程序。

6.8086/8088的存储器是分段的,因此存储单元的物理地址是由段地址和

偏移地址组合而成的。

7.标号和变量(名字)均有三种属性,它们是段属性(SEG)、偏移属性(OFFSET)和类型属性(TYPE)属性。

12.在16位存储单元中能存储的最大无符号数为65535,能表示的有符号数的范围是̶8000HH到7FFFHH。

试题二

1.用IP寄存器与CS段寄存器联合确定下一条指令的物理地址。

5.汇编语言源程序中的语句有三种类型,它们是指令语句,伪指令语句及宏指令语句。

8.清除AX寄存器的逻辑指令可以是XORAX,AX或ANDAX,0000H。

9.设数据段的段地址为2A66H,其中某数组中第5个字节存储单元的物理地址为2A835H,试问该数组中首字节的偏移地址是01D1H。

11.数据定义如下:

   X1 DB 10H,100,-1

   X2 DW 10H,100,-1

   X3 DD ?

 COUNT EQU X3-X1

变量COUNT的值是9,其表示的意义是分配给变量X1和X2的字节数目。

13.执行指令MOVAX,0

    MOVAL,09H

    ADDAL,4

若要获得结果AX=0103H,则在ADD指令之后,加一条AAA指令,若要获得结果AL=13H,在ADD指令之后加一条DAA指令。

、如不加,则结果为0DH

试题三

4.完成下列操作,选用什么指令:

(1)将AX的内容,减去0520H,和上次运算的借位;

(2)将变量名TABL的段地址送AX;

解:

(1)SBBAX,0520H(2分)

(2)MOVAX,SEGTABL(2分)

10.D1DB20HDUP(?

D2DWD1

请写出用一条指令实现取D1的偏移地址=>SI中的三种方法。

解:

①LEASI,D1

②MOVSI,OFFSETD1

③MOVSI,D2

14.在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。

例如:

PUSHAX 

PUSHBX;保护现场

PUSHCX;

PUSHDX ;

:

}恢复现场

试写出恢复现场时的指令序列。

解:

POPDX(2分)

POPCX(2分)

POPBX(2分)

POPAX(2分)

三、简答题:

1.在以BUFFER为首地址的内存区,存储的一组数据如图所示,试用一条DUP语句来完成该数据定义。

   解:

BUFFERDB2DUP(0,2DUP

(1),2,3)

 

4.在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。

例如:

PUSHAX 

PUSHBX;保护现场

PUSHCX;

PUSHDX ;

:

}恢复现场

试写出恢复现场时的指令序列。

解:

POPDX(2分)

POPCX(2分)

POPBX(2分)

POPAX(2分)

5.完成下列操作,选用什么指令:

(1)将AX的内容,减去0520H,和上次运算的借位;

(2)将变量名TABL的段地址送AX;

解:

(1)SBBAX,0520H(2分)

(2)MOVAX,SEGTABL(2分)

6.D1DB20HDUP(?

D2DWD1

请写出用一条指令实现取D1的偏移地址=>SI中的三种方法。

解:

①LEASI,D1

②MOVSI,OFFSETD1

③MOVSI,D2

2.选用合适的指令,分别完成下列操作:

(1)将字变量VARY的偏移地址送BX寄存器;

(2)将字变量VARY的内容送CX寄存器;

(3)将字变量VARY的类型值送DX寄存器;

解:

(1)MOVBX,OFFSETVARY

  

(2)MOVCX,VARY

 (3)MOVDX,TYPEVARY

3.设有数据定义伪指令如下:

ORG 2000H

  ARRAYDW 0100H,0200H,$-2,0300H,$+2

请画出存储单元数据的存储形式。

 

7.DA1  DB  20HDUP(?

DA2  DW  10H,45H,7856H

请用两种方法,分别只用一条指令实现将DA1数据区中数据个数送入CX。

方法1:

MOV CX,DA2-DA1或MOV CX,LENGTHDA1

 方法2:

MOV CX,SIZEDA1

8.用三种不同方法实现在字存储单元DA1中存储2000H的内容。

方法1:

MOV BX,[2000H]

  MOV DA1,BX

 方法2:

MOV SI,2000H

    MOV AX,[SI]

    MOV DA1,AX

 方法3:

PUSH[2000H]

   POPDA1

9.已知:

BX=1357H,BP=2468H,SI=1000H,DI=2000H,SS=1000H,DS=2000H,ES=3000H,试分别指出下列各指令中存储器操作数据的物理地址。

(1)MOV AL,[BP+20H]

(2)MOV [BX+DI-80H],AL

(3)MOV BL,ES:

[SI+40H]

(1)10000H+2468+20H=12488H

 

(2)20000H+1357H+2000H-80H=232D7H

 (3)30000H+1000H+40H=31040H

 

四、程序填空题

1.设AX,BX中的数一个为正数,一个为负数,下面程序段完成将正数送到PLW单元中存放,请将程序中所缺指令语句补上。

    TESTAX,8000H测试数的正负

    ___________

    MOVPLW,BX否则,……

    JMPDONE

    K1:

________

    DONE:

解:

①JEK1或JZK1(3分)

②MOVPLW,AX(3分)

2.设A,B是长度为10的字节数组,用串操作指令编写程序实现A,B两数组内容的相互交换。

试完善本程序。

(每一空白处只填一条指令)

    DATA SEGMEMT

    A   DB  1,2,3,4,5,6,7,8,9,0AH

       ORG 0010H

    B   DB  0AH,9,8,7,6,5,4,3,2,1

    DATA ENDS

    ┇

       MOV  SI,0

       MOV  DI,0

       MOV  CX,10

    MEXT:

MOV  AL,A[SI]

       MOV  BL,B[DI]

     MOV A[SI],BL

    MOV B[DI],AL

       INC  SI

       INC  DI

       LOOP NEXT

3.下面程序段利用DOS系统功能调用,完成将键盘输入的小写字母转换成大写字母后输出显示,直到输入ˊ$ˊ字符时结束。

请将程序补充完整。

(每一空白处只填一条指令)

      CODE SEGMENT

         ASSUME CS:

CODE

    DISPLAY PROC NEAR

 BEGIN:

MOV AL,01H

         INT 21H

         JZ STOP当键盘输入的零字符,则……

        CMP AL,'a'

        JB STOP键盘输入的字符比‘a’小,则……

        CMP AL,'Z'

         JA STOP

   

     

         MOV AL,02H

         INT 21H

         JMP BEGIN

      STOP:

RET

    

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1