求虐的朋友 发表于 2012-3-8 00:58:29

这个入栈没理解!

assume cs:codesg
codesg segment
    dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
    dw 0,0,0,0,0,0,0,0,0,0
start:
    mov ax,cs   
    mov ss,ax
    mov sp,24h   
    mov ax,0
    mov ds,ax
    mov bx,0
    mov cx,8
s:
    push
    pop cs:   
    add bx,2
    loop s
   
    mov ax,4c00h
    int 21h
codesg ends
end start
这个sp这里指向的是24 怎么回事。有点不懂!

求虐的朋友 发表于 2012-3-8 01:03:44

这个SP为什么是24

莫名其妙 发表于 2012-3-8 09:20:10

本帖最后由 莫名其妙 于 2012-3-8 09:23 编辑

是 24h 不是   24   

24h是16进制的36
   dw 是字形数据占2个字节            第一行的dw 8个字形 = 16字节+   第二行 10个字形占20个字节 =36个字节sp指向栈顶
所以sp=36
so
sp=24h   
页: [1]
查看完整版本: 这个入栈没理解!