懒懒de高贵 发表于 2013-11-25 02:36:28

关于王爽实验3.3的小问题有点混淆一时想不清.请明白人讲解下

题目是这样的·先上图··
接下来我debug输入

接下来请看问题


求同学和老师帮忙讲解下··三克油---{:5_109:}

福禄娃娃 发表于 2013-11-25 02:36:29

你可以先用e命令在debug中改写 1000:0H ~ 1000:3H的数据
e 1000:0 23 11 22 66
接着用a命令往内存中写入汇编代码
a 6000:0   mov ax, 1000h以此类推
然后再用r命令修改cs和ip的值,让代码从6000:0开始执行
最后用t命令单步调试

懒懒de高贵 发表于 2013-11-25 02:44:26

本帖最后由 懒懒de高贵 于 2013-11-25 02:45 编辑

刚才去WC的时候想了下···是不是说CS:IP只是代码段的起始地址·然后开始运行后由ds指定数据段地址然后家上偏移地址读取相应的数据··所以最开始的时候我们要把数据段的相应数据先写进去··然后代码开始执行后才能找到相应的数据··这样理解应该没错吧{:5_94:}

qq348093088 发表于 2013-11-25 09:58:40

mov ax,1000h
mov ds,ax
这个就是把数据段地址1000h放入ds中

ysm 发表于 2013-11-25 12:26:41

跟鱼C版主的意见一致...

vitamin 发表于 2013-11-25 12:42:15

需要a命令在相应位置写入命令。

懒懒de高贵 发表于 2013-11-25 18:34:03

福禄娃娃 发表于 2013-11-25 12:14 static/image/common/back.gif
你可以先用e命令在debug中改写 1000:0H ~ 1000:3H的数据
e 1000:0 23 11 22 66
接着用a命令往内存中写入汇 ...

这里CS和IP的值貌似用R查看后用默认的也行···我当时疏忽了··所以问问为什么要先用E命令先把数据写进去··现在明白了···感谢大家热心的帮助啊··三克油··:lol:
页: [1]
查看完整版本: 关于王爽实验3.3的小问题有点混淆一时想不清.请明白人讲解下