Introdução ao Turbo Debugger
Atualizado em 09-Set-2002
- Utilize a versão td50.exe que se encontra no arquivo de instalação
nasmide.zip.
- Abra uma janela DOS no diretório onde se encontra o seu programa fonte,
digamos myfile.asm, montado corretamente pelo nasm, ou seja, foi
criado o arquivo myfile.com, e invoque o td50 nessa
janela.
(V. talvez tenha que alterar o path do seu ambiente DOS para que
ele encontre o td50.exe, digitando na janela DOS um comando do
tipo:
path=f:\nasm;%path%, onde f:\nasm é o
path do diretório onde estão instalados o nasm e o td50.exe (veja detalhes de
instalação no documento: install_problems.html).
- Em File => Open coloque o nome myfile.com e
tecle OK.
- Ignore a mensagem "Program has no symbol table"
- Na 1ª janela, à esquerda, a 1ª linha em azul corresponde à 1ª instrução do
seu programa a ser executada
- Teclando sucessivamente F7 V. executará passo a passo cada instrução do
programa, onde a próxima a ser executada aparece em azul.
- V. pode verificar quais registradores foram alterados pela última
instrução, olhando a 2ª janela logo à direita, e quais flags da CPU foram
alterados, olhando a coluna seguinte (as mudanças aparecem com a cor branca);
- V. pode examinar os valores de dados na memória, na janela horizontal
inferior à esquerda, clicando sobre a mesma e fazendo o scroll da janela até
chegar aos endereços dos dados (acima de 100h, já que as instruções começam em
100h)
- V. pode a qualquer momento examinar saídas no vídeo feitas pelo seu
programa, Clicando em Window => User Screen, e depois
voltando ao Turbo Debuger digitando qualquer tecla.
- Se V. não quiser passar pela execução das rotinas que seu programa chama,
use a tecla F8 em vez de F7
- V. pode reiniciar a execução do programa como se fosse recém carregado
clicando em Run => Program reset
- Breakpoints:
- às vezes é conveniente deixar um programa executar livremente até chegar
numa instrução determinada, a partir da qual V. quer examinar o conteúdo de
registradores ou da memória, executar o programa passo a passo, ou
simplesmente prosseguir (por exemplo quando um programa contém laços e V.
quer analizá-lo no final de cada iteração ou ao sair do laço).
- Nesse caso V. deve clicar na instrução desejada para selecioná-la e:
- clicar em Breakpoints => At, aparecendo então uma
janela já preenchida com o endereço da instrução onde vai ocorrer o
breakpoint. Clique na entrada: OK para fechar esta janela. A linha do
breakpoint ficará selecionada em vermelho.
- Em seguida execute o seu programa teclando F9 (Run) e o
mesmo vai executar livremente até atingir a instrução do breakpoint, que
será a próxima a ser executada, digamos, via F7.
Atualizado em 09-Set-2002