汇编语言高手来帮我弄一下这几个题!谢谢

如题所述

第1个回答  2019-11-16
3.
已知如下变量:
WordVar
dw
2
dup(?)
ByteVar
db
?
下列指令是否正确。若不正确,指出错误原因。
(1)MOV
byte
ptr
es:WordVar[ebx]
,
100
(2)MOV
AX
,
offset
WordVar[SI]
(3)LEA
AX
,
WordVar[SI]
(4)CMP
WordVar
,
ByteVar
(5)MOV
AL
,
ByteVar
+
WordVar
(6)ADD
WordVar
,
AL
(7)MOV
ByteVar
,
ByteVar
-
WordVar
(8)JMP
ByteVar
4.
设OPRD是由“=”伪指令定义的常量,下列语句中两个AND操作有何区别?
AND
AL
,
OPRD
AND
0FEH
5.
已知当前数据段(段地址在DS)定义如下,试指出下列指令的执行结果。
DSEG
SEGMENT
ORG
10H
MyAddr
DW
$
BVar
DB
1,2,3
DB
‘123’
Buf
DB
5
DUP(?)
EVEN
Len1
=
$-Bvar
Wvar
DW
1,2
ALIGN
4
DVar
DD
1,2,3
Len2
EQU
$-Dvar
Len3
EQU
Buf-Bvar
DSEG
ENDS
(1)MOV
AX
,
offset
Dvar
(2)MOV
AX
,
Len1
(3)MOV
AX
,
Len2
(4)MOV
AX
,
Len3
(5)MOV
AX
,
MyAddr
(6)MOV
AX
,
word
ptr
BVar
+
2
(7)MOV
AX
,
lengthof
WVar
+
lengthof
BVar
(8)MOV
AX
,
type
DVar
+
sizeof
BVar
(9)MOV
AX
,
word
ptr
DVar
+
1
6.
填空题
(1)伪指令BUF
DW
10H
DUP(
3
DUP(
2
,
10H
)
,
3
,
5)定义中,变量BUF所占的存储单元个数为____。
(2)将变量TABLE的段地址送入AX寄存器的指令为______________。
7.
数组ARRAY定义如下,试用MOV指令将数组中的最后一个字数据传送到BX寄存器中,并将数组长度存入CX寄存器中。
ARRAY
DW
34H
,
56H
,
12H
,
78H
OTHER
DW
?
8.
请计算下列表达式
(1)3+6/3*4
MOD
3
(2)('M'
GT
'N')
AND
'N'
OR
'M'
LE
'N'
AND
'M'
(3)5
GT
3
(4)20
AND
77
(5)5
AND
-1
(6)NOT
5
9.
判断以下伪指令的表达是否正确,错误的请指明原因。
(1)ALPHA
EQU
78H
BETA
EQU
ALPHA+1
(2)DATA
DB
375
(3)DATA
SEGMENT
DATA
END
(4)COUNT
EQU
100
COUNT
EQU
10
10.
设有如下数据段定义语句
DATA
SEGMENT
ORG
200H
HUN
DB
100
,
'A'
COUNT
EQU
20H
BVAR
DB
COUNT
,
COUNT-10H
WVAR
DW
HUN+1
,
COUNT+1
BUF
DW
2
DUP(0)
,
?
DATA
ENDS
试画出该数据段在内存中的保存形式,并指出以下指令执行后的结果。
(1)MOV
AL
,
BYTE
PTR
WVAR
(2)MOV
CX
,
COUNT-1EH
(3)MOV
DX
,
OFFSET
BVAR
(4)MOV
SI
,
SIZE
BUF
(5)MOV
DI
,
LENGTH
WVAR
相似回答