Vous êtes sur la page 1sur 4

Instituto Tecnologico de San Juan Del Rio

DEBUG
Arquitectura de la Computadora

Medina Vega Jose Alberto Garcia Mateos Cesar Adrian 06/03/2013

Osornio Rios Diego Hernandez Palacios Juan Carlos

Introduccion
El DOS viene con un programa llamado DEBUG que es utilizado para probar y depuara programas ejecutables. Una caractersticas de DEBUG es que despliega todo el cdigo del programas y los datos de formato hexadecimal, y cualquier dato que se introduzca a la mamoria tambin esta en formato hexadecimal. Otras Caractersticas del DEBUG es que permite ejecutar un programa en modo de paso sencillo (Un paso a la vez), de manera que se pueda ver el efecto de cada instruccin sobre las localidades de memoria y los registros

Como iniciar DEBUG


Para iniciar el editor DEBUG solo basta con abrir la consola de Windows (Windows incluyo esta funcin en sus SSOO hasta el Window 7 32bits, en la versin de 64bits fue omitido por la inestabilidad que presentaba), solo nos mostrara en pantalla el cursor en el cual podremos ir ingresando los comandos.

Comandos de DEBUG
DEBUG proporciona un conjunto de comando que permiten realizar diferentes operaciones tiles. A D E G N P Q R T U W Ensamblar instrucciones simblicas y pasarlas a cdigo maquina Mostrar el contenido de un rea de memoria Introducir datos en memoria, iniciando en una localidad especifica Correr el programa ejecutable que se encuentra en memoria Nombrar un programa Proceder a ejecutar un conjunto de instrucciones relacionadas Salir de la sesin con DEBUG Mostrar el contenido de uno o ms registros Rastrar la ejecucin de una instruccin Desensamblar cdigo mquina y pasarlo a cdigo simblico Escribir o grabar un programa en disco

Guardar un programa
Para leer un programa, modificarlo y despus guardarlo. *Lea el programa bajo sus nombre: DEBUG n: [Nombre del archivo] *Utilice el comando D para ver el programa en lenguaje mquina y use E para ingresar los cambios *Utilice el comando W (Write, Escribir) para grabar el programa revisado Usar DEBUG para escribe un pequeo programa en lenguaje mquina que ahora quiera guardar *Solicite al programa DEBUG *Utilice A (Ensamblar) y E (ingresar) para crear el programa *Ponga nombre al programa: N [Nombre del archivo].COM (La extensin del archivo debe ser .COM) *Ya que solo usted sabe dnde termina en realidad el programa, indique a DEBUG el tamao del programa en bytes. Ej.: xxxx:0100 xxxx:0102 xxxx:0104 xxxx:0106 MOV AL, 25 MOV BL, 32 ADD AL, BL NOP

Puesto que la ltima instruccin, NOP, es un byte, el tamao del programa es de 7 bytes, desde 100H hasta 106H, inclusive *primero utilice R BX para mostrar el BX, e ingrese 0 para limpiarlo *Ahora use R CX para mostrar el registro CX, DEBUG responde con CX 0000 (valor cero) y usted contesta con el tamao del programa, 7. *Grabe el programa revisado: W `[Enter] LA razn de limpiar BX es porque la longitud del programa est en la pareja BX:CX, aunque CX es adecuado para nuestros propsitos DEBUG muestra un mensaje Writting nnnn bytes. Si el nmero es cero, se ha equivocado al introducir la longitud del programa ; intntelo otra vez. Tenga cuidado con el tamao del programa ya que la ltima instruccin puede ser mayor a un byte.

Hola Mundo en Ensamblador


1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. .model small .stack .data saludo db "Hola mundo!!!", "$" .code main proc mov ax,seg saludo mov ds,ax mov lea int ah,09 dx,saludo 21h ;Inicia proceso ;hmm seg? ;ds = ax = saludo ;Function(print string) ;DX = String terminated by "$" ;Interruptions DOS Functions

;mensaje en pantalla mov int ax,4c00h 21h ;Function (Quit with exit code (EXIT)) ;Interruption DOS Functions ;Termina proceso

main endp end main