Professional Documents
Culture Documents
DEBUG
"Bug" significa fallo, defecto en un programa; debug" significa depurar
(escrutar y eliminar fallos), Debugger" (depurador).
SINOPSIS
DEBUG.EXE es un ejecutable que, hasta 2001, acompa a todas las
versiones de MS-DOS, a partir de la 2.0, y de Windows.
Se trata de una utilidad interactiva de exploracin de bajo nivel, pero que
tambin puede utilizarse para ciertas funciones. Por ejemplo: ensamblador a
lenguaje mquina. Para utilizarlo basta invocarlo desde MS-DOS o desde
una ventana DOS de Windows.
OPCIONES
Una vez que el programa est en ejecucin, el indicador ("prompt") es un
guin "-", indicando que el "Shell espera recibir rdenes. La opcin ms
sencilla es la interrogacin ?, cuyo resultado es una lista resumida de las
opciones disponibles:
Ensamblar
a (direccin)
Comparar
c (direccin de intervalo)
Volcar
d (intervalo)
Escribir
Llenar
f (lista de intervalos)
Ir
g (=direccin) (direcciones)
Hex
h (valor1, valor2)
Entrada
i (puerto)
Cargar
(nmero)
Mover
m (direccin de intervalo)
Nombre
(direccin)
(unidad)
o (byte de puerto)
Proceder
p (=direccin) (nmero)
Salir
Registrar
r (registrar)
Buscar
s (lista de intervalos)
Desensamblar
sector)
Salida
Seguimiento
(primer
t (=direccin) (valor)
u (intervalo)
Escribir
(nmero)
Asignar memoria expandida
(direccin)
(unidad)
(primer
sector)
xa (#pginas)
xd (identificador)
xm
xs
(L
pgina)
(P
pgina)
ERRORES
Cuando debug no sabe interpretar un comando, muestra un mensaje de
error y un indicador "^" debajo del sitio del comando donde est el error.
COMANDOS
El comando 'h: la instruccin "H <op_1> <op_2> devuelve la suma y
la resta (en hexadecimal) de los dos operandos suministrados.
Donde op1 y op2 significan operandos.
Registro de flags:
NV UP EI PL NZ NA PO NC
Desbordamiento
poner: OV
Direccin(reduccin/incremento)
poner: DN
Interrupcin(activar/desactivar) poner: EI
Signo (negativo / positivo)
quitar: NV
quitar UP
quitar: DI
poner: NG
quitar: PL
Cero (s / no)
poner: ZR
quitar: NZ
poner: AC
quitar: NA
poner: PE
poner: CY
quitar: PO
quitar: NC
Ejemplo 1:
-r
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000
DI=0000 DS=2048 ES=2048 SS=2048 CS=2048 IP=0100 NV UP EI PL NZ
NA PO NC 2048:0100 92 XCHG DX, AX
Ejemplo 2:
-r ax
AX 0000
:01
-r
AX=0001 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000
DI=0000 DS=2048 ES=2048 SS=2048 CS=2048 IP=0100 NV UP EI PL NZ
NA PO NC 2048:0100 92 XCHG DX, AX