sirliu 发表于 2011-5-2 19:04:45

求关于汇编指令操作对象限制的文章。

本帖最后由 loop 于 2011-5-19 16:33 编辑

来发此贴的原因是:我学到栈那里,涉及到调用 PUSH 和 POP ,要调用PUSH或POP指令之前,都要对 SS 和 SP 里的内容进行修改(小鱼的汇编视频里曾提到过MOV 指令不能直接从存储器里传送数据给段寄存器),我知道要修改 SS 的内容必须用如下指令:.
.
.
mov ax,xxxxh
mov ss,ax
.
.
.
由于视频和书籍都没有对如何修改 IP 或者 SP 进行明确说明,或者说没有指出 MOV 指令可以直接从存储器里传送数据给 IP 和 SP。
导致我在做题时以为 SP和 SS 一样,需要间接的对其修改,于是用了以下代码:.
.
.
mov ax,xxxxh
mov ss,ax
mov ax,xxxxh      ;;;      
mov sp,ax         ;;;这两行其实可以用mov sp,xxxxh替代
.
.
.因此,我迫切希望看到关于"汇编指令操作对象限制"或”怎样修改寄存器数据“的文章,这样就可以达到举一反三的学习效果,不至于做了很多无用功。
         
            注:网上那些”汇编指令详解“、“汇编指令速查手册”和”汇编指令查询“类工具(包括本站的”汇编金手指“)等都没有关于这方面的说明与介绍,各位就不要 Ctrl + V 了。

china0008 发表于 2011-5-3 10:49:37

ipsp都是 普通的偏移寄存器sp可以直接使用mov传送数值 mov sp xxxx,就是设置站顶嘛。ip的值很多跳转指令是修改他的。用jmp xxxx 也可以嘛   

另外:看了你的注:其实汇编金手指 中对指令的解释 有关于操作对象的说明。

kithon 发表于 2011-5-3 11:07:55

这个提议好

Y.H 发表于 2011-5-3 18:02:59

视频中没有说吗??? 我刚看了下 说是没说 但是 小甲鱼 在视频中有动手写了了 这样的指令 mov ax,xxxh
   mov ss,ax
   mov sp,xxxh
只能说你没有认真看而已
页: [1]
查看完整版本: 求关于汇编指令操作对象限制的文章。