Specifications
MICROPROCESSADORES
O DEBUG, TASM E TLINK
3
Luís Miguel Charrua Figueiredo 3 - 4 E.N.I.D.H.
O comando Compare
Este comando (
Compare – C) serve para comparar dois blocos de memória, byte a byte. No caso
de haver diferença o byte correspondente de cada bloco é apresentado. Por exemplo para
comparar DS:0100h e DS:0200h em 8 bytes.
-c 0100 l 8 0200 ; compara um conjunto de 8 bytes a partir da posição 0100h com os que
; começam em 0200h
0CA3:0100 23 20 0CA3:0200
0CA3:0101 81 69 0CA3:0201
0CA3:0102 07 6E 0CA3:0202
0CA3:0103 F4 20 0CA3:0203
0CA3:0104 23 64 0CA3:0204
0CA3:0105 82 72 0CA3:0205
0CA3:0106 07 69 0CA3:0206
0CA3:0107 49 76 0CA3:0207
-
O comando Unassemble
Para efectuar
debugging, um dos comandos mais importantes é o unassemble (U). Este comando
“pega” no código de máquina, e apresenta-o em formato de instruções
assembly.
Este comando é semelhante aos anteriores no que diz respeito aos parâmetros possíveis de
introduzir na linha de comandos.
-U ; apresenta a tradução do conteúdo da memória em mnemónicas assembler
6897:0100 E96B01 JMP 026E
6897:0103 43 INC BX
6897:0104 4C DEC SP
6897:0105 4F DEC DI
6897:0106 43 INC BX
6897:0107 4B DEC BX
O comando
unassemble pode levar a resultados bastante interessantes, por exemplo, se CS:IP for
6897:0100h, olhamos para o programa e vemos que tem a instrução JMP seguido por instruções
que se sabem ser inválidas (ver capítulo com o conjunto de instruções do 8086), assim podemos
dizer que o unassemble apenas intrepreta os códigos hexadecimais e descidifica-os directamente
para instruções
assembly sem verificar a sua validade.










