收藏 分享(赏)

《汇编程序设计》试题及答案.pdf

上传人:精品资料 文档编号:8110669 上传时间:2019-06-08 格式:PDF 页数:45 大小:481.86KB
下载 相关 举报
《汇编程序设计》试题及答案.pdf_第1页
第1页 / 共45页
《汇编程序设计》试题及答案.pdf_第2页
第2页 / 共45页
《汇编程序设计》试题及答案.pdf_第3页
第3页 / 共45页
《汇编程序设计》试题及答案.pdf_第4页
第4页 / 共45页
《汇编程序设计》试题及答案.pdf_第5页
第5页 / 共45页
点击查看更多>>
资源描述

1、汇编语言程序设计2012级复习试题及答案 一.单项选择题: 3.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法(B) A名字的第一个字符可以是大写英文字母及小写英文字母; B名字的第一个字符可以是字母、数字及、_ ; C名字的有效长度31个字符; D在名字中不允许出现$。 5.当程序顺序执行时,每取一条指令语句,IP指针增加的值是( D ) 。 A1 B 2 C 3 D由指令长度决定的 6.下列属于合法的指令是( D ) 。 AMOV DS,ES BMOV SI,DI CMOV AX,BL DMOV DI ,BL 7.下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( B )

2、。 A.AX,BX,CX,DX B.BX,BP,SI,DI C.SP,IP,BP,DX D.CS,DS,ES,SS 8.下列传送指令中有语法错误的是( A )。 A.MOV CS,AX B.MOV DS,AX C.MOV SS,AX D.MOV ES,AX 10.与 MOV BX,OFFSET VA R 指令完全等效的指令是( D )。 A.MOV BX,VAR B.LDS BX,VAR C.LES BX,VAR D.LEA BX,VAR 11.在汇编语言程序中,对 END 语句的叙述正确的是( C ) 。 AEND 语句是一可执行语句 BEND 语句表示程序执行到此结束 CEND 语句表示源

3、程序到此结束 DEND 语句在汇编后要产生机器码 12.将 DX 的内容除以 2,正确的指令是(C) 。 ADIV 2 BDIV DX,2 CSAR DX,1 DSHL DX,1 14.下列数值表达式和地址表达式中,错误的是( D ) 。 AMOV AL,8*14+4 BMOV SI,OFFSET BUF+13 CMOV CX,NUM2-NUM1 DMOV CX,NUM2+NUM1 15.为使 CX=-1 时,转至MINUS 而编制了一指令序列,其中错误的序列是( C )。 A.INC CX JZ MINUS B.SUB CX,OFFH JZ MINUS C.AND CX,OFFFFH JZ

4、MINUS D.XOR CX,OFFFFH JZ MINUS 17.当执行指令 ADD AX,BX 后,若 AX的内容为 2BA0H,设置的奇偶标志位 PF1,下面的叙述正确的是( D) 。 A.表示结果中含 1 的个数为偶数 B.表示结果中含 1 的个数为奇数 C.表示该数为偶数 D.表示结果中低八位含 1的个数为偶数 18.完成对 CL 寄存器的内容乘以 4 的正确操作是( C )。 AROL CL,1 BMUL 4 ROL CL,1 CSHL CL,1 DMOV CL,2 SHL CL,1 SHL CL,CL 19.下面各传送指令中,正确的是( C ) AMOV DI,SI BMOVDX

5、+DI,AL CMOV WORD PTR BX,0100H D MOV AL,BX 20.完成将累加器 AL 清零,并使进位标志 CF 清零,下面错误的指令是(A ) 。 A.MOV AL,00H B.AND AL,00H C.XOR AL,AL D.SUB AL,AL 22.下面指令中,合理而有意义的指令是(D ) 。 A.REP LODSB B.REP SCASB C.REP CMPSB D.REP MOVSB 23.在下列串操作指令中,同时使用源串和目的串地址指针的指令是( D ) 。 ASTOSW BLODSW CSCASW DCMPSW 24.AL=0AH,下列指令执行后能使 AL=

6、05H 的是( C ) 。 ANOT AL BAND AL,0FH CXOR AL,0FH DOR AL,0FH 26.下面的数据传送指令中,错误的操作是(D ) 。 A.MOV SS:BX+DI,1000H B.MOV DX,1000H C.MOV WORD PTRBX,1000H D.MOV DS,2000H 27.执行下列指令后,正确的结果是(B )。 MOV AL,100 MOV BL,2 A. AL100H BL02H B. AL64H BL0FEH C. AL64H BL82H D. AL100H BL0FEH 28.设数据段中已有: DA1 DB 12H,34H DA2 DW 5

7、6H,78H 下面有语法错误的语句是(B ) 。 A.ADR1 DW DA1 B.MOV DA11,AX C.MOV BYTE PTR DA21,AL D.MOV WORD PTR DA11,AX 30.某存储单元的物理地址是 12345H,可以作为它的段地址有( D ) A2345H B12345H C12340H D1234H 31.在执行下列指令时,需要使用段寄存器 DS 的指令是( D ) ASTOSW BADD AL,CL CNEG BX DINC DABX 32.使用 DOS系统功能调用时,使用的软中断指令是( B ) AINT 21 BINT 10H CINT 16H DINT

8、21H 33.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D )。 A.CMP B.SUB C.AND D.MOV 35.下列描述中,执行循环的次数最多的情况是( A ) 。 AMOV CX,0 BMOV CX,1 LOP:LOOP LOP LOP:LOOP LOP CMOV CX,0FFFFH DMOV CX,256 LOP:LOOP LOP LOP:LOOP LOP 36.实现将 DX:AX 中存放的 32 位数扩大四倍,正确的程序段是(C )。 A. SHL AX,2 ROL DX,2 B. RCL AX,2 SHL DX,2 C. MOV CX,2 L

9、OP:SHL AX,1 RCL DX,1 LOOP LOP D. SHL AX,1 SHL AX,1 RCL DX,1 RCL DX,1 37.在下列指令中, D 指令的执行会影响条件码中的CF位。 AJMP NEXT BJC NEXT CINC BX DSHL AX,1 38.下列指令执行时出错的是(A) 。 AADD BUF1,BUF2 BJMP DWORD PTR DAT BX CMOV AX,BX+DI NUM DTEST AL,08H 39.在下列指令的表示中,不正确的是(C) 。 AMOV AL,BX+SI BJMP SHORT DONI CDEC BX DMUL CL 41.主程

10、序和所调用的子程序在同一代码段中,子程序的属性应定义为( C )。 ATYPE BWORD CNEAR DFAR 42.CPU 发出的访问存储器的地址是( B ) A.偏移地址 B.物理地址 C.逻辑地址 D.段地址 43.使计算机执行某种操作的命令是( C ) A.伪指令 B.标号 C.指令 D.助记符 45.计算机处理问题中会碰到大量的字符.符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是( D )码。 A. BCD 码 B.二进制码 C.十六进制码 D.ASCII 码 46.下列关于8086CPU 的工作原理的描述错误的是( C )。 A汇编程序员可以通过对各种寄存器中内容的

11、修改实现对 CPU 的控制。 BCPU 在访问内存时,采用“段地址*16+偏移地址”的形式给出要访问的内存单元的物理地址。 C任意时刻,CS:IP 指向的内容即是此刻 CPU 正在执行的指令。 D传送指令能够更改所有通用寄存器的内容。 48. 16 位结构的 CPU 不一定具备的特性是( C )。 A. 运算器一次最多可以处理 16 位的数据 B. 寄存器的最大宽度为 16 位 C. 地址总线为16 根 D. 寄存器和运算器之间的通路为 16位 49.下列指令的书写正确的是( C ) 。 A push al B mov cs:0,ds:10 C pop si D mov ds:0,2 50.在

12、 DEBUG工具中,显示寄存器内容的命令是( D ) 。 A. G B. D C. T D. R 52.若栈顶的物理地址为 20100H,当执行完指令 PUSH AX 后,栈顶的物理地址为 ( D ) 。 A. 20098H B. 20102H C. 20100H D. 200FEH 53.执行下列指令后 AL 寄存器中的值是( B ) MOV AL, 0BFH OR AL, 0FCH A. 0ACH B.0FFH C. 0DCH D. 0BBH 54.已知(DS)=2000H,(BX )=1256H,(SI)=528FH,则执行指令 JMP BX 后,IP 寄存器的内容是( A ) 。 A.

13、 1256H B. 2000H C. 3256H D. 528FH 55.在程序执行过程中,IP 寄存器中始终保存的是( B ) A上一条指令的首地址 B下一条指令的首地址 C正在执行指令的首地址 D需计算有效地址后才能确定地址 58.下列关于堆栈的说法,错误的是(D ) A以“先入后出”为原则。 B栈区最高地址单元的前一个单元为栈底。 C运行中 SP 寄存器动态跟踪栈顶位置。 D压栈和弹出都是以字节为单位。 59.关于 8086/8088 微机系列,下列说法哪个是正确的(D ) A一个存储单元由 16 个二进制位组成,简称字。 B当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C在

14、内存中,可以无限分配段,且段的大小不受限制。 D段与段之间可以邻接,也可以重叠。 60.1KB 的存储器有( B )个存储单元? A1000 B. 1024 C. 512 D. 256 61.下列程序中,出现逻辑错误的是( B )。 A assume cs:code code segment mov ax,2 add ax,ax mov ax,4c00h int 21h code end B assume cs:code code segment mov ax,2 add ax,ax code ends end C aume cs:code code segment mov ax,2 add

15、ax,ax mov ax,4c00h int 21h code ends end D assume cs:code code segment mov ax,2 add ax,ax mov ax,4c00h int 21h code ends 62. 对于如下程序 assume cs:code code segment start:mov ax,code mov ds,ax mov ax,0020h mov es,ax mov bx,0 s:mov al,bx mov es:bx,al inc bx loop s mov ax,4c00h int 21h code ends end 下列说法正确

16、的是( C )。 A指令 mov ax,code 改为 mo v ax,start 对程序要实现的功能没有任何影响。 B程序不能通过编译,因为在 loop指令之前,没有对寄存器 cx 进行设定。 C 程序实现的功能是将程序的所有指令复制到内存中以 0:200h 为起始地址的一段内存空间中。 D 程序实现的功能是用内存中以 0:200h 为起始地址的一段内存空间中的数据将程序的所有指令覆盖。 64.若将以 2000H 为段地址的整个段空间当作栈使用, 那么寄存器 SP 的初始值最合理的设置是( B )。 A. 0001H B.0000H C.FFFFH D.FFFEH 65.生成 EXE之后用

17、Debug 加载后,查看寄存器内容如下: ds=0c3e es=0c3e ss=0b4e cs=0b4f ip=0000 程序的起始地址的段地址是( A ) 。 A.0c4e B.0c3e C.0c4f D.0 66.在 Intel8086 环境下,对指令 mov ax,bx描述错误的是( D )。 A.指令中,源操作数的段地址默认为 ds 中的内容 B.指令中,源操作数的偏移地址为 bx 中的内容 C.指令执行后,(al)=(ds)*1 6+(bx),(ah)=(ds)*16+(bx)+1) D.指令执行后,(ds)*16+(bx )=(al),(ds)*16+(bx)+1)=(ah) 67

18、.设 SS=2050H,SP=0140H,则栈顶存贮单元的物理地址是( A ) A20640H B2063EH C2063FH D21900H 68.使用 DOS功能调用时,子程序编号应放在( B ) AAL BAH CAX D任意指定 69.没有语法错误的输出指令是( B ) AOUT AX,30H BOUT DX,AL COUT AL,DX DOUT 30H,AH 70.用 MOV 指令将十进制数 89 以非压缩 BCD 码格式送入 AX,可使用的指令是( B ) AMOV AX,89 BMOV AX,0809H CMOV AX,89H DMOV AX,0809 71.设 AX=8765H

19、,DX=4321H,执行 CWD指令后,DX中的内容是( B ) P117 A4321H B0FFFFH C8000H D0001H 72.设 CL=05H,要获得 CL=0 AH,可选用的指令是( A) AXOR CL,0FH BNOT CL COR CL,0AH DAND CL,0FH 73.假设执行ADD 指令后AL=8CH,再执行 D AA 指令,AL 中的值是( A ) A92H B0104H C74H D8CH 74. MOV AL,79H ADD AL,B1H 上面指令执行后,设置的标志位 CF和 ZF 的值是( D ) ACF=0, ZF=1 BCF=l, ZF=1 CCF=0

20、, ZF=0 DCF=1, ZF=0 75. TEST DL,55H P123 JZ NEXT M NEXT: 上述程序段,执行 JZ 指令时能产生转移的情况是( D ) ADL55H BDLVAR,那么溢出位和符号位 的关系是( OF=SF )。 31.在串操作指令前使用重复前缀指令REPE, 终止串的重复操作条件是 ( CX=0或ZF=0 ) 。 32.用 MOV 指令将十进制 64 以组合型BCD 码格式送入 AX,正确使用的指令是( MOV AX,0604H ) 。 34.DR1 DB 10H,30H DR2 DW 10H DUP(0,2 DUP(2) ) MOV BL,LENGTH

21、DR1 MOV CL,LENGTH DR2 请问指令执行后,BL和CL的值分别为 1 和 10H 。 35.要实现使BETA 的值为56,应采用语句为( BETA EQU 56 ) 36.REPZ CMPSW 指令,重复执行的终止条件是( CX=0或 ZF=0 ) 44.下面程序段执行后,AL 中的内容是( 21H ) MOV AX,8833H ADD AL,AH DAA 37.下列指令执行后总是使 CF0,OF0 的是( AND)。 38.设AH0,AL06H,BL09H,执行指令 ADD AL,BL AAA 之后,其结果应是(AH01,AL05 ) 。 39.设 AL0B4H,BL11H,

22、指令“MUL BL”和指令“IMUL BL”分别执行后 OF,CF 的值为(OF1,CF1 ) 。 40.在串操作指令前使用重复前缀指令 REPE,终止串的重复操作条件是(CX0 或ZF0 ) 。 41.DA1 DWAB,CD,EF,GH MOV AX,DA1+3 指令执行后 AX 中的内容是( FC ) 。 42.下面指令执行后,变量 DAB 中的内容是(0F5H ) 。 DAW DW2A05H DAB DB 0FAH : MOV AL,BYTE PRT DAW SUB DAB,AL 43. DATA SEGMENT TA1 DW 0102H,0304H,0506H TA2 DB 02H,0

23、3H,04H : MOV BX,DS:0006H AND BX,0FFH AND BH,BX 上述指令序列运行后,BX 的内容是( 0402H) 。 44.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX, (SI+COUNT)中,源操作数的有效地址EA为_ 20A8H _,其物理地址为_ 11488H _。 45.如JMP指令采用段间间接寻址,那么由 4 个相邻字节单元中存放有转移地址,其中前两个字节存放的是_ IP_,而后两个字节存放的是_ CS_。 46.在串操作程序中,通常在重复前缀指令REPZ或REPNZ后,选用的串操作指令是_ STOS_或_ CMP_才

24、有实际意义。 47.指令 JMP FAR PTR DONE 属于(段间转移直接寻址) 。 48.一个有 128 个字的数据区,它的起始地址为 12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是(12C59H) 。 49.在执行 DAA 指令,当高四位 BCD 码校正时产生进位,如要把此进位值送入 AH 中,对这进位值的操作应是(进位值在 CF 中,校正后根据 CF 内容再加在 AH 中) 50.执行后使BX=0 的同时也使 CF=0,OF =0 的指令是( XOR BX,BX ) 51.无论 BH中原有的数是奇数或偶数, 若要使 BH 中的数一定为奇数, 应执行的指令是( OR

25、 BH,01H ) 52.比较两个带符号的数 A.B,当A=B时程序转移,测试的条件为( ZF=1 ) 53.十六进制数 0FFF8H表示的十进制正数为_ +65528_,表示的十进制负数为_-32760_。 54.CPU的标志寄存器中标志位,可以分为两大类,其中一类称为_状态 _标志位,另一类称为_ 控制 _标志位。 55.当标志位_ CF_=1 时表示无符号数运算产生溢出,而当标志位_ OF_=1 是表示带符号数运算产生溢出。 56.在程序执行过程中,IP 寄存器中始终保存的是 (下一条指令的首地址) 。 57.PSW寄存器中共有_6_ 位条件状态位,有_ _3_位控制状态位。 () 。

26、58.串指令中的目的操作数地址是由_ _ ES:DI_ 提供。 59.8086CPU在基址加变址的寻址方式中,变址寄存器可以为(SI或 DI)。 60.检查二个无符号数的关系,若要实现 ALBL 时分支去 LOP1 处,那么在“CMP AL,BL”指令后应跟的分支指令是( JC LOP1 ) 。 61.下面指令序列测试 BH 中的数是否为奇数,若为奇数则转移至 K1 处,横线处的指令应为( ) 。 TEST BH,01H JNEK1 62.当一个带符号数大于 0FBH 时程序转移,需选用的条件转移指令是( JNLE) 。 63.循环控制指令 LoopNZ/LoopNE 控制循环继续执行的条件是

27、(CX0 且ZF=0) 65.条件转移指令 JNE 的测试条件为(ZF=0)。 66.对于下列程序段: AGAIN:MOV AL,SI MOV ES:DI,AL INC SI INC DI LOOP AGAIN 也可用_ REP MOVSB _指令完成同样的功能。 67.通常所说的计算机系统包括_ 硬件 _和_软件_两大部分。 68.8086/8088 存储器分四个段,这四个段的段名所对应的段寄存器分别是_DS_._SS_._CS_._ES_。 69.若要源程序从标号 START 开始执行,源程序结束伪指令的格式为 _END START_。 70.8086 的地址总线有 20根,寻址范围为_1

28、M _字节。 71.汇编语言源程序需经过_ 编译_ _程序汇编, _连接_ _程序连接才能生成可执行文件。 72.十进制数 369 转换成 8 位二进制数为 01110001B_,转换成对应的十六进制数为_71H_。 73.存储器某单元的地址表示为 2314H:4132H,则它的 偏移地址=_4132H_,物理地址=_ 27272H_。 74mov cx,4 s: mov ax,bx add bx,2 loop s 上面指令序列,当指令第一次执行到 add bx,2时 cx 的值_ _5_。 75. 8 位二进制数是一字节, 16 位二进制数是一个字 76.8086CPU有 16 位 数据总线

29、. 20 位 地址总线,可寻址空间是1 MB。 77.写出下列指令,数据类的寻址方式: MOV AX , 2000H 立即寻址 ; MOV AX , BX 寄存器寻址 ; 内存某单元的内容为 11010011B (1)该数为原码,真值是 83D (2)该数为反码,真值是 44D. (3)该数为补码,真值是 45D 79.信息代码 011 0110 奇校验码为:1011 0110 , 偶校验码为:0011 0110 80.8086CPU由 _执行部件EU_ _和_总线接口部件BIU_ _两部分组成 81.I/O 端口的两种编址方式:统一编址 和 独立编址 82.若源程序从标号START开始执行,

30、源程序结束伪指令为_ _END START_。 83.十六进制数 0FFF8H 表示的十进制正数为_ _+65528_,表示的十进制负数为_ 32760_。 84.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,(SI+COUNT)中,源操作数的有效地址EA 为_ 20A8H_,其物理地址为_ 11488H_。 85.CPU 的标志寄存器中标志位,可以分为两大类,其中一类称为_ _状态 _标志位,另一类称为_ _控制 _标志位。 86.当标志位_CF_=1 时表示无符号数运算产生溢出,而当标志位_OF_=1 是表示带符号数运算产生溢出。 87.如 JMP 指令采用

31、段间间接寻址,那么由 4 个相邻字节单元中存放有转移地址,其中前两个字节存放的是_IP_,而后两个字节存放的是_CS_。 88.在串操作程序中,通常在重复前缀指令 REPZ 或 REPNZ 后,选用的串操作指令是_STOS_或_ CMP_才有实际意义。 88.填写下列指令的寻址方式: (1)mov ax,cx ;_ (2)mov tabbpsi,cl ;_ (3)mov ax,20hdi ;_ (4)mov tabbx,bl ;_ (5)mov ax,tabbpdi ;_ (6)mov bx,0a123h ;_ (7)mov cl,dl ;_ (8)mov ax,data ;_ (1)寄存器间

32、接寻址(2)基址变址寻址(3)基址寻址 (4)基址寻址 (5)基址变址寻址 (6)立即寻址 (7)寄存器寻址(8)直接寻址 四.程序填空题: 2.假设数据段定义如下: DA1 DW C , D DA2 DB 18 DUP(?) DA3 DW $DA2 MOV BX,DA3 MOV AX,DA1 上述指令执行后,BX寄存器中的内容是 12H(或18) ,AH寄存器中的内容是 00H ,AL寄存器中的内容是43H 。 3.现有如下数据段 DATA SEGMENT ARRAY1 DB 1,26, 3456 ARRAY2 DW 7,89H,10 VAL EQU ARRAY2-ARRAY1 DATA E

33、NDS 请问:该数据段已占有 12(或 0CH) 字节的存储空间。 4.已知AX=0FF60H,CF=1 MOV DX,96 XOR DH,0FFH SBB AX,DX 执行上述指令序列后,AX=_ 0_,CF=_ 0_。 5.设寄存器AL,BL,CL 中内容均为 76H, XOR AL,0FH AND BL,0FH OR CL,0FH 执行上述指令序列后,AL=_ 79H _,BL=_ 06H _CL=_7FH_。 7.A DW 1234H B DW 5678H : PUSH A PUSH B POP A POP B 试回答: 上述程序段执行后(A), (B) 设执行前 SP200H,执行后

34、 SP 答:(A)=5678H(2 分) (B)=1234H(2 分) SP=2000H(2 分) 9.分析下面程序段, MOV AL,200 SAR AL,1 MOV BL,AL MOV CL,2 SAR AL,CL ADD AL,BL 试问程序段执行后(BL)0E4H (AL) 0DDH 10.DA3 EQU WORD PTR DA4 DA4 DB 0ABH,89H SHR DA3,1 MOV DX,DA3 SHL DA4,1 MOV CX,DA3 上述程序段运行后,CX=_ 44AAH_,DX=_ 44D5H_。 11.设(SP)=100H,(AX)=0FFFFH STC PUSH AX

35、 ADC AX,0 PUSH AX POP BX 上述程序段运行后,(BX)= 0 ,(SP)= 0FEH 。 12.STRING DB ABCDEFGHIJ : MOV AH,01 ;从键盘输入字符 19 INT 21H AND AL,0FH DEC AL XOR AH,AH MOV BX,OFFSET STRING ADD BX,AX MOV BL,BX MOV AH,02H ;显示输出 INT 21H : 试回答: (1)上述程序段的功能是什么? 根据从键盘输入的字符19,确定在显示器上显示 STRING 中第几个字符。 (2)如从键盘输入字符4,程序段有什么结果? 显示器显示字符D 1

36、3.已知:BX=4567H NEG BX INC BX NEG BX DEC BX 程序段执行后,BX=_ 4565H_,CF=_ 1_。 14.已知数据段中定义 DAT1 DB 12H,34H,56H,78H MOV CX,0 MOV AX,WORD PTR DAT1 MOV CL,DAT1+3 当程序段执行完后AX=_ 3412H_,CX=_0078H _。 15.DA1 DB 83H,72H,61H,94H,5AH MOV CX,WORD PTR DA1 AND CX,0FH MOV AL,DA1+3 SHL AL,CL 上述指令序列执行后,AL=_ 0A0H_,CL=_ 03H_。 1

37、6.现有如下程序段: DATA SEGMENT DA3 EQU 1234H ORG 0020H DA4 EQU -DA2 DA1 DW 12H,23H DA5 DB 31H,32H DA2 DB 11H,21H DATA ENDS 请回答: (1)该程序段已占有的存储字节数是多少?(2)符号名 DA4 的值是多少?符号名DA5 的值是多少? 答:(1) 该程序段已占有的存储字节数是 8 个字节。(2) 符号名 DA4 的值为 2,符号名 DA5的值是 0026H。 17.执行下列程序段后,回答问题。 ORG 1221H MOV BX,OFFSET NUM NUM DW 12H MOV CL,B

38、YTE PTR NUM+1 MOV CH,TYPE NUM MOV AX,NUM HLT 请问: (AX)=_, (BX)=_, (CX)=_。 答:(AX)=0012H (BX)=1221H (CX)=0200H 18.执行下列指令后 AX.BX 寄存器的内容? MOV SI,10H MOV AX,1234H MOV SI+12H,AX LEA BX,SI MOV SI+14H,BX 答:AX为 1234H,BX 为22H LES BX,DWORD PTR SI+12H 19.在 NUMW单元存放有一个 0-65535 范围内的整数, 将该数除以 500, 商和余数分别存入 QU1和 REM

39、 单元,请在空行处各填上一条指令完善该程序。 MOV AX,NUMW _ MOV BX,500 _ XOR DX,DX DIV BX MOV QUI,AX _ MOV REM,DX _ 20.已知数据段中定义 DAT1 DB 12H,34H,56H,78H MOV CX,0 MOV AX,WORD PTR DAT1 MOV CL,DAT1+3 当程序段执行完后AX=_3412H _,CX=_ 0078H _。 21.DA1 DB 83H,72H,61H,94H,5AH MOV CX,WORD PTR DA1 AND CX,0FH MOV AL,DA1+3 SHL AL,CL 上述指令序列执行后

40、,AL=_ 0A0H _,CL=_ 03H _。 22.DA3 EQU WORD PTR DA4 DA4 DB 0ABH,89H SHR DA3,1 MOV DX,DA3 SHL DA4,1 MOV CX,DA3 上述程序段运行后,CX=_ 44AAH _,DX=_ 44D5H _。 23.阅读下面程序段并填空: MOV BL,64H MOV CL,03H XOR AX,AX AGAIN:ADD AL,BL ADC AH,0 DEC CL JNZ AGAIN 问: (1)该程序段完成的功能是: 将AX内容乘3 送BX中 (2)AX=_012CH _。 24.设AX, BX中的数一个为正数, 一

41、个为负数,下面程序段完成将正数送到 PLW 单元中存放,请将程序中所缺指令语句补上。 TEST AX,8000H JE K1 或JZ K1 MOV PLW,BX JMP DONE K1: MOV PLW,A DONE: 25.下面程序段是判断寄存器 AH 和 AL 中第3 位是相同,如相同,AH置 0,否则 AH 置全 1。试把空白处填上适当指令。 _ XOR AH,AL _ AND AH,08H _ JE ZERO_ MOV AH,OFFH JMP NEXT ZERO:MOV AH,0 NEXT: 26.以 BUF 为首址的字节单元中,存放了 COUNT 个无符号数,下面程序段是找出其中最大

42、数并送入 MAX单元中。 BUF DB 5,6,7,5 8H,62,45H,127, COUNT EQU $-BUF MAX DB? MON BX,OFFSET BUF MOV CX,COUNT-1 MOV AL,BX LOP1:INC BX _ CMP AL,BX _ _ JAE NEXT MOV AL,BX NEXT:DEC CX _ JNZ LOP1_ MOV MAX,AL 27.阅读下面程序段并填空: AND AL,AL JZ BRCH1 RCR AL,1 JZ BRCH2 RCL AL,1 INC AL JZ BRCH3 : 上述程序运行后,试回答: CXFX (1)当(AL) 0时

43、,程序转向BRCH1 (2)当(AL) 1时,程序转向BRCH2 (3)当(AL) -1时,程序转向BRCH3 28.下面程序的功能是什么? MOV CH,4 LAB:MOV CL,4 ROL BX,CL MOV DL,BL AND DL,0FH ADD DL,30H CMP DL,3AH JL PRINT ADD DL,7 PRINT:MOV AH,02 INT 21H DEC CH JNZ LAB 显示输出 BX寄存器里的内容 29.阅读如下程序: ADRR DB XXH,XXH ,XXH CMP ADRRBX,0 NUM EQU -ADRR LOOPZ DON RETT DB? JNZ

44、NEXT MOV BL,OFFH MOV CX,NUM NEXT:MOV RETT,BL MOV BX,-1 HLT DON:INC BX 请问: (1)该程序完成的功能是什么?(2)程序执行后指出 RETT 字节单元中的内容是什么? 答:(1) 在以 ADRR 为起始地址的数组中,查找第一个非 0数据。 (2) 若找到则将第一个非 0 数据在数组中的偏移量送入 RETT 单元中;若无非 0 数据,则将OFFH 送入 RETT 单元中。 30.现有一子程序: SUB1 PROC PLUS:TEST BL,80H TEST AL,80H JE EXITO JE PLUS XCHANGE:XCHG

45、 AL,BL TEST BL,80H EXITO:RET JNE EXITO SUB1 ENDP JMP XCHANGE 试回答: (1)子程序的功能是什么? (2) 若调用子程序前 AL=9AH,BL=77H,则返回主程序时,AL=_,BL=_。 答:(1)子程序的功能是判别 AL 和 BL 中的数是否为异号数,当为异号时交换,否则不变。 (2) AL=77H, BL=9AH 31.阅读程序段: BLOCK DB 20H,1FH,08H,81H,OFFH LOP1:CMP AL,SI+1 RESULT DB? JNG NEXT MOV AL,SI+1 START:LEA SI,BLOCK NEXT:INC SI MOV CX,SI LOOP LOP1 INC SI MOV RESULT,AL MOV AL,SI HLT 请问: (1)该程序完成的功能是什么?(2)该程序循环的次数是多少? 答:(1

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报