鱼C论坛

 找回密码
 立即注册
查看: 2934|回复: 2

[汇编作业] 汇编作业3.1解答

[复制链接]
发表于 2015-11-2 21:04:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 chengzhi 于 2015-11-2 21:06 编辑

检测点3.1:

易错点1

易错点1




答案认真算都可以算对的:
mov ax,[0000] AX=2662H
mov bx,[0001] BX=E626H
mov ax,bx AX=E626H
mov ax,[0000] AX=2662H
mov bx,[0002] BX=D6E6H
add ax,bx AX=FD48H
add ax,[0004] AX=2C14H
mov ax,0 AX=0000H
mov al,[0002] AX=00E6H
mov bx,0 BX=0000H
mov bl,[000C] BX=0026H
add al,bl AX=000CH

2.注意ds的设置,和相应的偏移地址是[]中的,而不是ip中的偏移地址,不要相互混淆就可以写出指令
要注意每次执行指令后ip增加的字节数
注意jmp后修改了cs和ip为:off0:0100 = 物理地址 = 10000H
答案如下:
mov ax,6622H CS = 2000H IP = 3H  DS = 0 AX=6622H  
jmp 0ff0:0100 CS=0ff0H IP=0100H DS = 0 AX = 6622H
mov ax,2000H CS=0ff0H IP=0103H DS = 0 AX = 2000H
mov ds,ax CS=0ff0H IP=0105H DS=2000H AX = 2000H
mov ax,[0008] CS=0ff0H IP=0108H DS=2000H AX = C389H
mov ax,[0002] CS=0ff0H IP=010BH DS=2000H AX = EA66H
希望能帮助大家

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-11-3 21:54:17 | 显示全部楼层
本帖最后由 zph888 于 2015-11-4 07:13 编辑

1)d 0:0 1f表示查内存中0-31范围的,即32字节的内容
2)DS为1,表示DS的段地址为0001,只有当偏移地址达到10H(十进制为16)时,才能这样表达:0001:0    F,而在小于16时只能表达为0000:0   F,所以当0001:0000时,指向第17个字节地址。
3)看来我们初学者要学会:物理地址与段地址,偏移地址的转换,才能理解给出的条件的原由。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2015-11-4 12:56:07 | 显示全部楼层
zph888 发表于 2015-11-3 21:54
1)d 0:0 1f表示查内存中0-31范围的,即32字节的内容
2)DS为1,表示DS的段地址为0001,只有当偏移地址达 ...

对的,基础是最重要的东西,一点都不为过,以前太年轻了,好好打基础吧:smile
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-19 04:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表