8086汇编语言习题解答 下载本文

.

4.2、某数据段中有

COUNT1 EQU 16H COUNT2 DW 16H

下面两条指令有何异同: MOV AX, COUNT1 MOV BX, COUNT2 答:AX:0016H, BX=1084H COUNT1 EQU 16H

是赋值语句

MOV BX, COUNT2是定义的地址指针,在1084H中才放字16H.

4.3、下面各题中有语法错误,试分别用两种办法修改题中语句,使它们在汇编时都能分别获得通过: ⑴、 M1 DW 5060H

MOV BL,M1

⑵、M2 EQU 10H

MOV M2,AL

⑶、M3 DW ‘ABCD’

⑷、M4 DB 1234

⑸、DATA1 SEGMENT

DA1 DW

1234H ENDS

DATA1

.

.

DATA2 DA2 DW

SEGMENT 5678H

DATA2 ENDS

CODE SEGMENT

CODE ENDS

MOV BX,DA2

ASSUME CS:CODE,DS:DATA1

4.4、设已定义数据段:

DA1 DA2

DB DB

XX, XX XX, XX DA1, DA2

DATA

SEGMENT

ADRR DW DATA ENDS

为使ADRR+2字存储单元中存内容为0022H,上述方框中应填写什么语句?

4.5、下面的程序段中,有数据为3000H的字存储单元有几个?它们的偏移量分别是多小?

ORG

30H

0, ’0’, 30H, 0, 30H DA1

DA1 DB

DW

4.6、下面的语句中有数据0102H的字存储单元有多少?

.

.

DB 10H DUP(1,2 DUP(2))

4.7、下述指令执行后,寄存器DS和SI的内容分别是多少?

LDS

SI,ADDR+1

ADDR

DW

1234H, 5678H, 0ABCDH

4.8、设某数据段为:

DATA

SEGMENT ORG

20H

NUM1=8 MUM2=NUM1+10H DB DB EQU DW ENDS

‘IBM PC’ 0AH,0DH

$=DA1

‘IB’,’M’,’PC’,0A0DH

DA1

CUNT DA2

DATA

上述数据段定义后,DA1和DA2的偏移量,CUNT的值以及DA2+5字节单元的

内容分别是多少?

4.9、某源程序有如下数据段:

DATA1 DA1

SEGMENT DB ENDS SEGMENT DB

PAGE PUBLIC

DUP(0) WORD PUBLIC

DUP(0)

20H

DATA1 DATA2 DA2

20H

.

.

DATA2 ENDS

设DA1物理地址是134CEH,那么DATA2段基值,DA2的偏移量分别是多少?

4.10、下述程序段执行后,寄存器AX,BX和CX的内容分别是多少?

ORG DW MOV MOV MOV MOV

AX, DA_WORD BX, OFFSET DA_WORD CL, BYTE PTR

DA_WORD+1

0202H 20H

DA_WORD

CH, TYBE DA_WORD

4.11、下述程序段执行后,寄存器BX和CX的内容分别是多少?

4.12、下述程序段执行后,寄存器AX和BX的内容分别是多少?

MOV MOV

AX, ALPH LE NUM BX, ALPH GT NUM

NUM

EQU

945H

NUM1=20*20 NUM2 REL1

MOV MOV

BX, REL2

CX, WORD PTR REL2

EQU DW

400H NUM1 LE

NUM2, EQ NUM2

ALPH=35*27

.