fc631889534 发表于 2014-2-1 11:14:31

汇编监测点3.2 有点迷糊了 求大神谢谢祝大家新年快乐

汇编监测点3.2 我感觉很懵
大神们想问一下 为什么这两个都是栈

第一题的SP指向是2000H

第二题的SP指向是1000H
我可能是有点迷糊了
是因为前两个指令不同么?
第一题ds=1000H所以SP要指向2000H 第二题相反么?不知道大神有没有懂我的意思的 .0..
祝大家新年快乐 万事如意 身体健康 事业顺利

LinuxDeepin 发表于 2014-2-1 19:19:00

有点不明白你的意思

SP?SP是栈段寄存器
ds是数据段寄存器

建议更详细说明你所想要表达的意思

2004111 发表于 2014-2-2 20:25:21

路过学习学习

fc631889534 发表于 2014-2-3 22:58:19

LinuxDeepin 发表于 2014-2-1 19:19 static/image/common/back.gif
有点不明白你的意思

SP?SP是栈段寄存器


我的疑问就是 这个题不是有2个栈么 第一题 第一个的数据送入第二个为什么不需要在程序里面指向一下第一个栈(答案指向的第二个栈) 就直接 可以送入第二个栈里面

LinuxDeepin 发表于 2014-2-4 08:08:43

fc631889534 发表于 2014-2-3 22:58 static/image/common/back.gif
我的疑问就是 这个题不是有2个栈么 第一题 第一个的数据送入第二个为什么不需要在程序里面指向一下第一 ...

PUSH 分两个步骤,
一、SP - 2
二、将数据送入栈

所以不需要人为的修改 SP

vvqboy 发表于 2014-2-4 08:30:15

这道题的根本目的,是让读者知道,内存中的数据,对内存而言是不区分哪些是栈,哪些是数据区的。
栈和数据区的划分,就是通过SS、CS和DS来决定,你让这段内存是什么,他就是什么。
同一块内存,你用SS指向它,它就是栈,你用CS指向它,它就是代码区,你用DS指向它,它就是数据区。
检测点3.2
1小题和2小题的区别,就是1小题把图3.17左边部分当作数据区,右边部分当作栈。
2小题把图3.17左边部分当作栈,右边部分当作数据区。

fc631889534 发表于 2014-2-4 15:35:08

vvqboy 发表于 2014-2-4 08:30 static/image/common/back.gif
这道题的根本目的,是让读者知道,内存中的数据,对内存而言是不区分哪些是栈,哪些是数据区的。
栈和数据 ...

:lol:谢谢大神 茅厕顿开了

www5956 发表于 2014-5-1 22:15:48

为什么我没有解决呢。!!

www5956 发表于 2014-5-1 22:16:44

0DB4:0111 mov bx,
请问下着段的结果为什么是D6E6呢
而不是e626呢
是62 是26 是E6
物理地址=段地址*16+偏移地址啊
请问是什么原因呢一直都在误解中新手伤不起呀
圣旨在哪不通过检测点无法往下学呀!:cry:cry{:7_149:}{:5_110:}{:5_102:}{:5_100:}
页: [1]
查看完整版本: 汇编监测点3.2 有点迷糊了 求大神谢谢祝大家新年快乐