Telecharge

Disponible uniquement sur Etudier
  • Pages : 19 (4507 mots )
  • Téléchargement(s) : 0
  • Publié le : 29 août 2011
Lire le document complet
Aperçu du document
Cours Assembleur 8086

Pierre-Nicolas Clauss
Laboratoire Lorrain de Recherche en Informatique et ses Applications

12 mars 2008

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

1 / 48

Plan

1

Introduction

2

Notions générales

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

2 / 48

IntroductionPlan

1

Introduction Assembleur Machine Processeur Notions générales Instructions Mémoire Interruptions Directives Premier programme Registre d'état Branchements Fonctions
(LORIA) Cours Assembleur 8086 12 mars 2008 3 / 48

2

pierre-nicolas.clauss@loria.fr

Introduction

Assembleur

Plan

1

Introduction Assembleur Machine Processeur Notions générales Instructions MémoireInterruptions Directives Premier programme Registre d'état Branchements Fonctions
(LORIA) Cours Assembleur 8086 12 mars 2008 4 / 48

2

pierre-nicolas.clauss@loria.fr

Introduction

Assembleur

Usages

Pourquoi faire de l'assembleur ? Ecrire un compilateur Environnements embarqués, micro-controlleurs Systèmes temps-réels durs Avantages Meilleure compréhension des langages Meilleurecompréhension des machines

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

5 / 48

Introduction

Machine

Plan

1

Introduction Assembleur Machine Processeur Notions générales Instructions Mémoire Interruptions Directives Premier programme Registre d'état Branchements Fonctions
(LORIA) Cours Assembleur 8086 12 mars 2008 6 / 48

2pierre-nicolas.clauss@loria.fr

Introduction

Machine

La machine

Deux fonctions Calculer : rôle du (micro)-processeur Stocker : rôle de la mémoire Langage spécique Un langage par processeur, appellé jeu d'instructions Une référence commune : le binaire

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

7 / 48

Introduction

Machine

Parler binaire, octalet hexadécimal

Syntaxe Binaire : 0b1010 ou 1010b Octal : 012 ou 12o Hexadécimal : 0xA ou 0Ah Usage Masques de bits Permissions Adresses mémoire

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

8 / 48

Introduction

Machine

Notation des entiers

Positif et négatifs Les entiers positifs sont stockés en binaire par conversion simple Les entiersnégatifs sont stockés en binaire par complément à deux Cette méthode permet des opérations arithmétiques sans corrections Complément à deux Le complément à deux se calcule en deux étapes Par exemple
On inverse d'abord les bits (complément à un) On ajoute 1 au résultat 13 se note 0000 1101 sur 8 bits -13 se note 1111 0011 sur 8 bits

L'opposé d'un entier est son complément à deux. Il se calculeavec le mnemonic neg
pierre-nicolas.clauss@loria.fr (LORIA) Cours Assembleur 8086 12 mars 2008 9 / 48

Introduction

Processeur

Plan

1

Introduction Assembleur Machine Processeur Notions générales Instructions Mémoire Interruptions Directives Premier programme Registre d'état Branchements Fonctions
(LORIA) Cours Assembleur 8086 12 mars 2008 10 / 48

2pierre-nicolas.clauss@loria.fr

Introduction

Processeur

Registres

Mémoires de calcul Les calculs se décomposent en opérations élémentaires Ces opérations ont besoin de stocker des résultats intermédiaires Le processeur contient de petites mémoires appellées registres Registres sur 8086 8 Registres généraux (16 bits)
cs, ds, es et ss ip et ags

4 Registres de segments (16 bits) 2 Registres spéciaux (16 bits)ax, bx, cx, dx, si, di, bp et sp

pierre-nicolas.clauss@loria.fr

(LORIA)

Cours Assembleur 8086

12 mars 2008

11 / 48

Introduction

Processeur

Sous-registres

Décomposition des registres Les registres A, B, C et D se décomposent en deux sous-registres de 8 bits chacun
h (partie haute) et l (partie basse). Par exemple, ax se décompose en ah et al En C, on aurait la...
tracking img