汇编 - 可视化寄存器,堆栈等

时间:2017-05-27 17:09:54

标签: debugging dosbox emu8086

Hej,我在emu8086上编写我的程序,并用它进行调试。但是现在我需要使用浮点数,FPU和emu8086不支持它们。我需要一种简单的方法来查看特定内存的位置。例如可视化:“dzielna”,“dzielnik”,寄存器的内容,如ax,bx,..;什么是st(0),st(1)等。你能推荐一个好的程序来形象化吗?

dane1     segment


dzielna     dd 1.3  
dzielnik    dd 6.7
dane1    ends


assume cs:code1, ss:stos1, ds:dane1

stos1    segment stack
dw    400 dup(?)
top1    dw    ?
stos1    ends


code1    segment
.386                        
.387

start1:    mov    ax,seg top1
mov    ss,ax
mov    sp,offset top1

mov ax,dane1
mov ds,ax

finit 
fldpi
fld dword ptr [dzielna]
fld dword ptr [dzielnik]
fsub st(0),st(1)
fstp dword ptr [dzielna]



finish:
    mov ah,4ch
    int 21h


code1    ends




end start1

1 个答案:

答案 0 :(得分:3)

将其可视化的程序称为调试器。由于您在DosBox中运行,因此需要一个可以在那里运行的程序。

如果您可以使用Turbo Assembler - 它有一个调试器TD.exe

Turbo Debugger in action

OpenWatcom还有一个可以在DosBox中运行的调试器

OpenWatcom debugger

并且都允许您显示FPU寄存器。