关于汇编的两个问题
1、关于栈的问题:比如我们定义的栈的段地址是1000H,栈的大小为64KB,即sp的范围是0000—FFFF。当栈为空是sp指向0000,问:这个sp指向的是栈底下面的单元0000吗?还是栈的第一个单元(如果在栈顶如何压栈呢?)。如果在栈底,当压栈的时候。sp=sp-2。那sp变为什么了呢。-2?不会有这个值吧。?2、我们知道,当游戏在我们电脑上运行的时候,会有一个基址,这个址是不变的。问:当两款游戏的基址相同怎么办?CPU是如何处理的。
既然是栈,那么你就记住,栈的指针永远指向最上边元素的上边,比如,栈为空,那么sp指向栈顶的指针,就是0000,也就是最下边的地址,如果有一个元素了,那么,sp++
至于你说的压栈的时候,不会出现sp=sp-2,那是出栈,不是压栈
二这个-2,是移动2个改类型的存储单元,比如一个整形4字节,那么sp-2移动的是8字节
我说的可能会不对,所以,我不保证什么,还是要看大家的回答
至于你的第二个问题,抱歉,我不知道- - 不错不错,很好很好,谢谢分享
static/image/common/sigline.gif
北京商标注册代理 我来回答第二个问题好了!
windows会为每个进程虚拟一个内存空间,也就是说R3的程序的内存空间是隔离开的A进程不能直接访问B进程的内存 只能调用API请求操作系统"帮忙”修改其他进程的某个内存地址
页:
[1]