汇编语言王爽第二版答案Word文档下载推荐.docx
- 文档编号:17819434
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:31
- 大小:26.04KB
汇编语言王爽第二版答案Word文档下载推荐.docx
《汇编语言王爽第二版答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《汇编语言王爽第二版答案Word文档下载推荐.docx(31页珍藏版)》请在冰豆网上搜索。
moval,23H
AX=3123H
addax,ax
AX=6246H
movbx,826CH
BX=826CH
movcx,ax
CX=6246H
movax,bx
AX=826CH
addax,bx
AX=04D8H
moval,bh
AX=0482H
movah,bl
AX=6C82H
addah,ah
AX=D882H
addal,6
AX=D888H
addal,al
AX=D810H
movax,cx
AX=6246H
Microsoft(R)WindowsDOS
(C)CopyrightMicrosoftCorp1990-2001.
C:
\DOCUME~1\ADMINI~1>
debug
-a
0C1C:
0100movax,f4a3
0103movah,31
0105moval,23
0107addax,ax
0109movbx,826c
010Cmovcx,ax
010Emovax,bx
0110addax,bx
0112moval,bh
0114movah,bl
0116addah,ah
0118addal,6
011Aaddal,al
011Cmovax,cx
011E
-r
AX=0000
BX=0000
CX=0000
DX=0000
SP=FFEE
BP=0000
SI=0000
DI=0000
DS=0C1C
ES=0C1C
SS=0C1C
CS=0C1C
IP=0100
NVUPEIPLNZNAPONC
0100B8A3F4
MOV
AX,F4A3
-t
AX=F4A3
IP=0103
0103B431
AH,31
AX=31A3
IP=0105
0105B023
AL,23
AX=3123
IP=0107
010701C0
ADD
AX,AX
AX=6246
IP=0109
0109BB6C82
BX,826C
BX=826C
IP=010C
010C89C1
CX,AX
CX=6246
IP=010E
010E89D8
MOV
AX,BX
AX=826C
IP=0110
011001D8
AX=04D8
IP=0112
OVUPEIPLNZACPECY
011288F8
AL,BH
AX=0482
IP=0114
011488DC
AH,BL
AX=6C82
IP=0116
011600E4
AH,AH
AX=D882
IP=0118
OVUPEINGNZACPENC
01180406
AL,06
AX=D888
IP=011A
NVUPEINGNZNAPENC
011A00C0
AL,AL
AX=D810
IP=011C
OVUPEIPLNZACPOCY
011C89C8
AX,CX
IP=011E
011E0B0C
OR
CX,[SI]
DS:
0000=20CD
-q
检测点2.1
(2)只能使用目前学过的汇编指令,最多使用4条指令,编程计算2的4次方。
mov
ax,2
AX=2
add
ax,ax
AX=4
AX=8
AX=16
0100movax,2
0103addax,ax
0105addax,ax
0109
0100B80200
AX,0002
AX=0002
010301C0
AX=0004
010501C0
AX=0008
AX=0010
NVUPEIPLNZACPONC
010920881615
AND
[BX+SI+1516],CL
1516=00
检测点2.2
(1)给定段地址为0001H,仅通过变化偏移地址寻址,CPU的寻址范围为0010H到1000FH。
物理地址=SA*16+EA
EA的变化范围为0h~ffffh
物理地址范围为(SA*16+0h)~(SA*16+ffffh)
现在SA=0001h,那么寻址范围为
(0001h*16+0h)~(0001h*16+ffffh)
=0010h~1000fh
(2)有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元。
则SA应满足的条件是:
最小为1001H,最大为2000H。
当段地址给定为
1001H以下和2000H以上,CPU无论怎么变化偏移地址都无法寻到20000H单元。
20000h=SA*16+EA
SA=(20000h-EA)/16=2000h-EA/16
EA取最大值时,SA=2000h-ffffh/16=1001h,SA为最小值
EA取最小值时,SA=2000h-0h/16=2000h,SA为最大值
这里的ffffH/16=fffh是通过WIN自带计算器算的
按位移来算确实应该为fff.fh,这里小数点后的f应该是省略了
单就除法来说,应有商和余数,但此题要求的是地址最大和最小,所以余数忽略了
如果根据位移的算法(段地址*16=16进制左移一位),小数点后应该是不能省略的
我们可以反过来再思考下,如果SA为1000h的话,小数点后省略
SA=1000h,EA取最大ffffh,物理地址为1ffffh,将无法寻到20000H单元
这道题不应看成是单纯的计算题
检测点2.3
下面的3条指令执行后,cpu几次修改IP?
都是在什么时候?
最后IP中的值是多少?
subax,ax
jmpax
答:
一共修改四次
第一次:
读取movax,bx之后
第二次:
读取subax,ax之后
第三次:
读取jmpax之后
第四次:
执行jmpax修改IP
最后IP的值为0000H,因为最后ax中的值为0000H,所以IP中的值也为0000H
实验一查看CPU和内存,用机器指令和汇编指令编程
2实验任务
(1)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
机器码
汇编指令
寄存器
b8204e
movax,4E20H
ax=4E20H
051614
addax,1416H
ax=6236H
bb0020
movBX,2000H
bx=2000H
01d8
addax,bx
ax=8236H
89c3
movbx,ax
bx=8236H
ax=046CH
b81a00
movax,001AH
ax=001AH
bb2600
movbx,0026H
bx=0026H
00d8
addal,bl
ax=0040H
00dc
addah,bl
ax=2640H
00c7
addbh,al
bx=4026H
b400
movah,0
ax=0066H
049c
addal,9CH
ax=0002H
0100movax,4e20
0103addax,1416
0106movbx,2000
0109addax,bx
010Bmovbx,ax
010Daddax,bx
010Fmovax,001a
0112movbx,0026
0115addal,bl
0117addah,bl
0119addbh,al
011Bmovah,0
011Daddal,bl
011Faddal,9c
0121
0100B8204E
AX,4E20
AX=4E20
0103051614
AX,1416
AX=6236
IP=0106
NVUPEIPLNZNAPENC
0106BB0020
BX,2000
BX=2000
010901D8
AX=8236
IP=010B
OVUPEINGNZNAPENC
010B89C3
BX,AX
BX=8236
IP=010D
010D01D8
AX=046C
IP=010F
OVUPEIPLNZNAPECY
010FB81A00
AX,001A
AX=001A
0112BB2600
BX,0026
BX=0026
IP=0115
011500D8
AL,BL
AX=0040
IP=0117
011700DC
AX=2640
IP=0119
N
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 第二 答案