Vous êtes sur la page 1sur 8

Universit Sidi Mohamed Ben Abdallah

Ecole Suprieur de Technologie de Fs


Filire informatique -1 Anne

Compte
rendu
ARCHITE
CTURE
DES
ORDINAT
EURS
TP1 :
DEBUG

Se familiariser avec les


Ecrire des exemples pour
de debug.

Ralis par :
ALFREDO JAIRO ANDRE DUARTE

Encadr par :
Mr.Amine Omor

2014 - 2015

Objectif
s

commandes de debug.
mieux apprendre lutilit

Avoir la diffrence entre coder avec debug et avec un programme assembleur


classique.

Introduction
DEBUG est un programme inclus dans le systme d'exploitation DOS de Microsoft et
IBM PC, permet de suivre l'excution d'un programme crit en langage assembleur, en bloc
ou une instruction la fois. Ce qui est important pour trouver ce qui ne marche pas dans un
programme.
Plus particulirement, DEBUG permet d'examiner et de changer le contenu de la mmoire,
entrer un programme et l'excuter.
L'objectif de ce TP est de bien comprendre la programmation avec l'utilitaire DEBUG, plus
particulirement comment:
- entrer et sortir de DEBUG,
- entrer, excuter et dboguer des programmes,
- examiner et changer le contenu des registres et de la mmoire,
- manipuler les commandes les plus importantes de DEBUG.

Activit 1
Implmentation
et utilisation
et 2

Pour entrer dans debug il suffit de taper debug linvite de commande aprs toucher entre
dons clavier, Pour sortir du DEBUG vers DOS, taper q'. Debug accepte majuscules et
minuscules.
La commande R permet d'afficher le contenu de tous les registres.
Remarque que chaque fois que je tape R avec AX il me donne la possibilit de changer le
contenu de AX, jai chang le contenu de AX avec valeurs de 7AC2 jusqu 4, avec le valeur
6ABC5 il a donn erreur parce que il y a plus de 4 bit et les registres gnraux recevant
seulement valeurs avec 4 bit .

Activit 3

La raison des messages des erreurs affiches cest que on donne valeurs avec bits differents
aux taille des chaque registre.
Ex :
MOV BX, 9CBCF4 : il y a erreur parce que on donne valeurs de 24 bits que est plus grande
que le registre BX de taille 16 bits qui doit laccueillir.
MOV SI, CH : les registres ne sont pas de mme taille.
Les diffrents modes dadressage utilise montrent qui existe plusieurs faon de adresser un
registre.

JAI OBSERVE QUE LE COMMANDE U 100 10D MONTRE LES OPERATIONS DE


DEPLACEMENT REALISEZ .
Le commande U 100 10D montre les oprations de dplacement ralises entres
les adresses CS :100 et CS :10D.
Le commande R montre les contenu des tous les registres et le commande G
montre le rsultat de lexcution du programme.
Le commande G=100 10A excute le programme depuis ladresse CS :100
jusquau point darrt CS :10A .
Les commandes G, G = CS :100 ET G = 100 ne sont pas diffrents, sauf si ils
excutent un programme avec la prcision.

Chaque fois que la commande T est tape le programme permet de suivre lexcution du
programme instruction par instruction ou un bloc dinstruction la fois.
La premire instruction dplace 1 dans le registre AX.
La deuxime stocke ladresse 203 dans le registre dindex DI.

La troisime stocke dans le registre BX le contenu de ladresse


La quatrime stocke dans le registre CX le contenu de ladresse se trouvant dans le registre
DI.
La cinquime fait laddition entre AX et BX le rsultat sera stock dans le registre AX.

Activit 4

Tapent le commande F 100 11F CD, F 120 13F FB et D 100 13F observe deux lignes avec
une suite de CD et deux ligne avec une suite de FB , F 100 11f CD charge 11f fois la mmoire
avec la donne et la commande D 100 13f on affiche cette donne 13f fois.

Le code machine du programme de lactivit 3 dons le segment


de code de la mmoire.

Code ASCII de mon nom e prnom en minuscules.

Remplacions les digits 6 de chaque octet pour le 4 je remarque que certaines caractres du
nom e prnom sont modifier pour lettre majuscule.

Aprs excution du programme on remarque que la somme des donnes se trouve dans le
registre BX = 002C.

Activit 5

Lutilisation dun registre ex : BX ne peut stocker quun mot, avec la convention Little
Endian on peut vrifier que pour une adresse contenant une donne dun octet, le registre
rcupre aussi la donne de ladresse suivante qui sera stock dans la partie haute du
registre BX. Bien entendu la donne de la premire adresse sera stock dans la partie basse
du registre utilis ici BX.

Activit 6

En tous les instrutions les 8 bits du registre flags ne changent pas.

Activit 7

Avec la commande H on fait la somme de deux nombres.

Avec la commande F 360 36f AB on a bien remplie une zone mmoire avec la donne AB qui
va de ladresse 360 36f. On peut le vrifier avec la commande D 360 lf.