Debug (comando)Debug (debug.exe) é um comando que foi criado no início dos anos 1980 e acompanhava sistemas operacionais DOS[1] (MS-DOS, PC-DOS, OS/2). O comando continuou a ser incorporado em diversas interfaces e sistemas operacionais posteriores como o Windows 3.1, Windows 95, Windows 98, Windows NT, Windows XP, Windows Vista 32 bits, Windows 7 32 bits, poderia ser acessado pelo shell (command.com ou cmd), porém foi removido do Windows Vista e Windows 7 64 bits, e no Windows 8 32 e 64 bits. Nos sistemas Microsoft Windows ele usualmente era encontrado na pasta %windows%\system32. O comando é tido como especialmente útil para interpretar e monitorar o funcionamento de programas executáveis, bem como encontrar possíveis erros operacionais. Com ele é possível abrir apenas programas .COM (até 64K de memória), além de fazer leitura de disco pelo processo de interrupção da BIOS e interrupção do MS-DOS (que o Windows emulava em modo shell) para examinar o FAT (File Allocation Table) e Boot (setor de inicialização do sistema), sendo possível investigar sua aparência em Assembly (baixo nível). Além exibir a aparência em assembly de praticamente qualquer executável, ele também exibia em formato hexadecimal do arquivo utilizando-se a sintaxe: debug nome_do_executável. Sintaxedebug [[Drive:][caminho] arquivo [parâmetros]] Exemplo: Montador AssemblyAlém de ser um disassembly, o debug tambem monta programas escrevendo diretamente ou em códigos hexa, porém, sendo desenvolvido para arquitetura x86 e ainda na década de 80, ele não entende os modernos mnemônicos que a intel introduziu, nem o recurso MMX de manipulação gráfica da intel. Uma montagem de programa para ler o BOOT do disquete: c:\> debug -a 0B6E:0100 mov ax,0201 0B6E:0103 mov bx,200 0B6E:0106 mov dx,0 0B6E:0109 mov cx,1 0B6E:010C int 13 0B6E:010E int 20 0B6E:0110 -g=100
Funções BásicasApós rodar o comando Debug, estão disponíveis as seguintes funções (principais) -A - a100 (Começar a escrever Assembly a partir do endereço 100h) -D - D100 ( Exibir em formato Hexa, a partir do endereço 100h ) -U - U100 (Exibir em imagem Disassembly a partir do endereço 100h ) -RCX - rcx20 (reservar 20 bytes hexa para o programa mencionado em "N") -N - N arquivo.com ( considerar o nome arquivo.com quando for selecionado gravacao em disco através do recurso "W") -W - W ( gravar conteúdo reservado a partir de 100h com a quantidade definida em "RCX" utilizando o nome mencionado em "N") -G - G=120 (executar o programa a partir do endereço hexa 120h ) -O -Q - ( sair do Debug ) Referências
https://qametrik.com/saiba-qual-a-importancia-do-debug-na-customizacao-abap/ |