【问题标题】:Assembler IDE with a specific feature [closed]具有特定功能的汇编程序 IDE [关闭]
【发布时间】:2014-03-06 01:04:36
【问题描述】:

我最近深入研究了组装并玩弄了一些emu8086。我玩得很开心,学到了很多东西。 但是我确实错过了一件事,如果我能在我模拟或编译之前看到我写的所有寄存器内容,那就太棒了。是否有任何汇编 IDE 提供此功能? 如果我也可以编写带有 NASM 语法的 8086 程序集,我会更喜欢,但是任何能够减轻我在脑海中跟踪寄存器的负担的通用 x86 程序集都是天赐之物,而且效率也很高!

【问题讨论】:

    标签: assembly nasm x86-16


    【解决方案1】:

    我认为您没有考虑过这一点。粗略地说,如果你能知道寄存器的值,你就不需要程序了。寄存器值会根据输入和其他因素而变化,并且不保证在不同时间在代码中的同一点相同。想想一个循环变量。你想显示什么值?

        call get_int ; this function returns a number entered by the user in eax
        ; so, what's the value of eax here that your IDE should print?
        ; okay let's multiply it by 10 using addition in a loop
        mov edx, eax
        mov ecx, 9   ; ecx is 9 here, no problem
    addloop:
        add eax, edx ; but what's the value of eax here?
        dec ecx      ; or ecx here?
        jnz addloop
        ; what's the result in eax?
    

    【讨论】:

    • 真丢脸!你是对的。实际上循环不会有那么大的问题,可以将整个循环解释为动态解释器中的一条指令,这仍然非常有用。更糟糕的是代码中的一些无序跳转,而故意不保存寄存器。像这样跳来跳去会使解释器更加混乱并使其无用。
    猜你喜欢
    • 2013-09-03
    • 1970-01-01
    • 1970-01-01
    • 2022-12-12
    • 1970-01-01
    • 2011-06-02
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多