第四章汇编语言程序设计题库 下载本文

内容发布更新时间 : 2024/5/12 16:44:26星期一 下面是文章的全部内容请认真阅读。

(1) MOV AX,[1200H];AX=( 4 ) (2) MOV AX,[BX] ;AX=( 5 ) (3) MOV AX,1100[BX] ;AX=( 6 ) (4) MOV AX,[BX][SI] ;AX=( 7 ) (5) MOV AX,1100[BX][SI] ;AX=( 8 ) 5、指示性语句的格式为( 9)。

6、 执行下列程序(AL)=(10)H。

DATA SEGMENT

TAB-DA DB ‘0123456789’ DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA MOV DS,AX

MOV BX,OFSET TAB-DA

MOV AL,04 XLAT TAB-DA 7、 对于下面的数据定义:

A1 DW 20 DUP(?) A2 DB 20 DUP(?) A3 DB‘98765432l’ MOV AX,LENGTH A1 MOV BX,LENGTH A2 MOV CX,LENGTH A3

各条指令执行后,相应寄存器的内容为: AX=( 11 ),BX=( 12 8、 分析以下程序段: SUB AX,BX JNC L3 JNO L4 JMP SHORT

如果AX和BX的内容给定如下: AX BX (1)147B 80DC (2)D023 9FD0 (3)94B7 B568

该程序执行后,程序转向( 14 );(15 );(16 )。

9、执行下列程序段,

MOV SP,2000H MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI

,CX=(13 )

) SHL DX,1 TEST AX,DX PUSH DX

SP=(17);

10、执行下列程序段:

MOV SP,2000H MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX

DH内容所在内存的偏移地址为(18 );

11、有下列数据定义语句: DATA SEGMENT ADDR DW NUMBER NUMBER DB 10

ARRAY DB 5 DUP(0)

TABLE DD RT1,RT2 ;(RT1,RT2是标号) DATA ENDS

则变量ADDR中存储的内容是(19),变量TABLE占用(20)个字节 12、根据下面的指令序列,CX寄存器中的值应该是( 21 )。

SHR1 DW 'AB' SHR2 DB 16 DUP(?) CNT EQU $-STR1 MOV CX,CNT 13、执行下列指令后: MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX

寄存器AH的值是(22),寄存器AL的值是(23).

14、对于下面的数据定义,指令执行后,AX=(24)、BX=(25)、CX=(26)、DX=(27)、SI=

(28)

TABLE1 DB ?

TABLE2 DW 20 DUP(?) TABLE3 DB‘ABCD’

MOV AX,TYPE TABLE1 MOV BX,TYPE TABLE2 MOV CX,LENGTH TABLE2 MOV DX,SIZE TABLE2 MOV SI,LENGTH TABLE3

15、执行下列程序: MOV AX,0 MOV BX,1 MOV CX,100 A:ADD AX,BX INC BX LOOP A HLT

执行后的结果为(BX)=(29),(AX)=(30)。

16、 若定义VAR DB 2 DUP(1,2,2 DUP(3),2 DUP(1)),则在VAL存储区内前5个单元的数据是( 31 )。

17、完成输出显示一个字符的DOS int 21h系统功能调用是( 32)号。

18、执行返回指令,退出中断服务程序,这时返回地址来自(33 )

19、 已知:(AX)=0202H、(ES)=2000H、(BX)=3000H、(SI)=2060H、(25060H)=00B0H,执行指令XCHG AX,ES:[BX+SI],则AX=(34),(25060H)=(35)

20、下列程序段执行后,寄存器AX=(36),BX=(37)和CX=(38)的内容分别是多少? ORG 0202H

DA_WORD DW 20H MOV AX,DA_WORD

MOV BX,OFFSET DA_WORD MOV CL,BYTE PTR DA_WORD MOV CH,TYPE DA_WORD

21、假设数据段的定义如下: P1 DW ?

P2 DB 32 DUP(?) PLENTH EQU $-P1

试问PLENTH的值为(39)它表示的意义是(40)

22、假设BX=54A3H,变量VLAUE中存放的内容为68H,确定下列各条指令单独执行BX的值。 (1)XOR BX,VALUE;BX=(41) (2)OR BX,VALUE;BX=(42) (3)AND BX,00H;BX=(43) (4)SUB BX,VALUE;BX=(44) (5)XOR BX,0FFH;BX=(45) (6)TEST BX,01H;BX=(46) 23、请用DEBUG调试软件的反汇编命令,反汇编在从2060:100H开始的长度为8字节的程序段,该命令为(47)。

24、查看内存数据段中偏移地址为1000H的内容,DEBUG调试命令为(48)

25、在DEBUG调试命令中,N命令是的功能是(49),L命令的功能是(50)。

三、判断题(共30题)

1、 8086/8088微处理器有14个16位寄存器

2、8086/8088微处理器的14个16位寄存器每个都可分成2个8位的寄存器

3、8086/8088微处理器的8个16位的通用寄存器可分为:4个数据寄存器、2个指针寄存器、2个变址寄存器

4、SUB指令和CMP指令的功能相同。 5、MOV AX,0 与XOR AX, AX功能相同。 6、SHL 和SAL指令功能相同。 7、MOV AX,0FFFFH

INC AX 以上两条指令执行后CF=1。

8、有以下定义的数据段,判断该数据段定义下的指令序列正误: DATA SEGMENT

STR1 DB 1,2,3,4,5 STR2 DB ‘12345’ COUNT EQU 20 NUMB DB 3 DUP(6) NUMW DW 20H,80H TABLE DW 0 DATA ENDS

MOV AX,STR1

9、数据定义同第8题,判断该数据段定义下的指令序列正误

MOV BX,OFFSET NUMB

MOV [BX],’+’

10、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV DL,NUMW+2

11、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV BX,OFFSET STR1 MOV DH,BX+3

12、数据定义同第8题,判断该数据段定义下的指令序列正误 INC COUNT

13、数据定义同第8题,判断该数据段定义下的指令序列正误

MOV STR1,STR2

14、数据定义同第8题,判断该数据段定义下的指令序列正误 MOV AX,NUMW+2 MOV DX,0 DIV NUMW

15、数据定义如下,指出指令的正误:

ORG 100H DATA DB 20 DW 30 DD 40

MOV BX,OFFSET DATA MOV AL,[BX+5]

16、数据定义同15题,指令正误: MOV AX,DATA

17、数据定义同15题,指令正误: MOV AX,WORD PTR DATA+1

18、数据定义同15题,指令正误: MOV AX,DATA[BX][SI]

19、数据定义同15题,指令正误: MOV BX,OFFSET DATA[BX][SI] 20、数据定义同15题,指令正误: LEA AX,DATA[BX][SI] MOV AL,[AX]

21、数据定义如下,指出指令的正误: A EQU 500 B DB ? C DW 64H MOV A,AX

22、数据定义如21题,指出指令的正误: MOV B,AX

23、数据定义如21题,指出指令的正误: CMP C,AL

24、数据定义如21题,指出指令的正误: CMP B,C

25、符号及变量定义如下,指出指令的正误: 26、指出指令正误:SAL CL,5 27、指出指令正误:JMP END 28、指出指令正误:JNAB NEXT 29、指出指令正误:LOOP A5

30、指出指令正误:ADD AX,[BX][BP] 四、简答题(共20题)

1、简述汇编语言程序的开发过程。

2、内存操作数有哪几种寻址方式?用MOV 指令的源操作数举例进行说明。 3、简述汇编语言、高级语言、机器语言的区别。