Assembly 如何在x86汇编语言中增加字符串中字符的指针?

Assembly 如何在x86汇编语言中增加字符串中字符的指针?,assembly,x86,Assembly,X86,我试图使用一个名为“character”的指针打印字符串“Golf”,指针指向该字符串中的每个字符。当我运行代码时,我得到的唯一结果是打印出字母G四次,我需要程序每次运行时递增字符,直到完成单词。如何取消引用,然后增加指针,以便正确打印每个字符 我没有太多的指针经验,所以任何反馈或批评都非常感谢 下面是代码: INCLUDE Irvine32.inc .data wor BYTE "Golf", 0 character BYTE PTR [wor]

我试图使用一个名为“character”的指针打印字符串“Golf”,指针指向该字符串中的每个字符。当我运行代码时,我得到的唯一结果是打印出字母G四次,我需要程序每次运行时递增字符,直到完成单词。如何取消引用,然后增加指针,以便正确打印每个字符

我没有太多的指针经验,所以任何反馈或批评都非常感谢

下面是代码:

INCLUDE Irvine32.inc

.data
    wor BYTE "Golf", 0
    character BYTE PTR [wor]
    ; global variables

.code
main PROC
    mov ecx, 4
    again:
        mov al, wor
        call WriteChar
        inc character
        loop again
    call Crlf
    call WaitMsg
    exit
main ENDP
END main

这是什么汇编程序?您需要增加一个寄存器,用作偏移量,如
[wor+esi]
。在
字符
标签处递增内存中的字节完全独立于程序正在执行的任何其他操作。