Chinaunix

标题: 不好意思 我是汇编菜鸟 请教NASM问题(内有代码) [打印本页]

作者: 317316abcd    时间: 2007-07-12 19:46
标题: 不好意思 我是汇编菜鸟 请教NASM问题(内有代码)
_szPMMessage:                        db        "In Protect Mode now. ^-^", 0Ah, 0Ah, 0        ; 进入保护模式后显示此字符串
szPMMessage                equ        _szPMMessage        - $$
push        szPMMessage
;------------------------------------------------------------------------
; 显示一个字符串
; ------------------------------------------------------------------------
DispStr:
        push        ebp
        mov        ebp, esp
        push        ebx
        push        esi
        push        edi

        mov        esi, [ebp + 8]        ; pszInfo
        mov        edi, [dwDispPos]
        mov        ah, 0Fh
.1:
        lodsb
        test        al, al
        jz        .2
        cmp        al, 0Ah        ; 是回车吗?
        jnz        .3
       push        eax
        mov        eax, edi
        mov        bl, 160
        div        bl
        and        eax, 0FFh
        inc        eax
        mov        bl, 160
        mul        bl
        mov        edi, eax
        pop        eax  
      
        jmp        .1
.3:
        mov        [gs:edi], ax
        add        edi, 2
        jmp        .1

.2:
        mov        [dwDispPos], edi

        pop        edi
        pop        esi
        pop        ebx
        pop        ebp
        ret
; DispStr 结束------------------------------------------------------------


请问mov        esi, [ebp + 8]什么意思  push  szPMMessage 后栈顶是什么  还有中间段红字是什么意思..
作者: mik    时间: 2007-07-12 22:04
你是看不明这些指令,还是不明白它表达的内容是什么?
作者: 317316abcd    时间: 2007-07-13 00:25
看不明白指令....
作者: PCOS    时间: 2007-08-01 16:49
[EBP+8]的值传送到ESI寄存器,后面的自己找本罗云彬老师的网上教程自学啦!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2