Tp n° 2 programmation en assembleur sous emu8086 - téléchar

Informatique Industrielle : TP N° 2 Programmation en assembleur sous emu8086

Télécharger PDF

TP N° 2 : Programmation en Assembleur 8086 avec Emu8086

1. Objectifs

Prise en main d’Emu8086.

Écriture d’un premier programme en assembleur 8086.

2. Présentation d’Emu8086

Pour faciliter l’apprentissage de l’assembleur x86, nous utilisons un émulateur logiciel simulant un processeur 8086. Bien que son utilisation ne soit pas obligatoire (les programmes fonctionnent sur des processeurs modernes comme l’Intel Core i7), cet outil offre un environnement avancé pour comprendre le fonctionnement des mécanismes du processeur.

Emu8086 se compose de deux modes principaux :

  • Mode éditeur : un éditeur de texte classique avec colorisation syntaxique du code assembleur.
  • Mode exécution : deux fenêtres s’ouvrent après compilation et exécution (bouton RUN).

Structure d’un programme en assembleur 8086

Un programme standard dans Emu8086 suit cette structure :

org 100h
.DATA
<Déclaration des variables>
.CODE
Instr1
Instr2
...
Instrn

Fonctionnalités de l’émulateur

La fenêtre « émulateur » contient quatre zones principales :

  1. Boutons de contrôle : permet d’exécuter le programme en mode pas à pas (single step), de le recharger (reload) ou de le lancer automatiquement (run) avec ajustement du délai entre chaque instruction.
  2. Visualisation des registres : affiche les valeurs hexadécimales des registres en temps réel pendant l’exécution du programme.
  3. Représentation de la mémoire : montre les octets mémoires (adresse en hexadécimal, valeur hexadécimale, décimale et ASCII).
  4. Code exécuté : affiche le code machine final sans étiquettes ni noms de variables, tel qu’il sera interprété par le processeur.

Exercice 1 : Calcul de la somme de deux variables

Voici un exemple de programme qui calcule la somme des deux variables a et b, puis enregistre le résultat dans c :

org 100h
.DATA
a dw 25
b dw 13
c dw ?

.CODE
mov ax, a
add ax, b
mov c, ax
mov ax, 4ch
int 21h

Exercice 2 : Programmes pour opérations arithmétiques

Écrire un programme en assembleur pour chaque opération demandée :

  1. Calcul de la somme de trois variables : s = a + b + c
  2. Multiplication de deux variables : m = a * b
  3. Division entière de deux variables : d = a div b

FAQ

Pourquoi utiliser Emu8086 pour apprendre l’assembleur ?

Emu8086 simplifie la compréhension des mécanismes internes d’un processeur 8086 grâce à sa visualisation des registres et de la mémoire en temps réel.

Comment exécuter un programme dans Emu8086 ?

Appuyer sur le bouton RUN pour compiler et exécuter le programme. Deux fenêtres s’ouvrent alors pour afficher le code source et les résultats de l’exécution.

Que signifie dw dans une déclaration de variable ?

dw est l’abréviation de « define word » (définir un mot), indiquant que la variable occupe 2 octets en mémoire.

Cela peut vous intéresser :

Partagez vos remarques, questions , propositions d'amélioration ou d'autres cours à ajouter dans notre site

Enregistrer un commentaire (0)
Plus récente Plus ancienne