Cours pour apprendre la programmation Assembleur Perfectionnement
Cours pour apprendre la programmation Assembleur Perfectionnement
1. Médium d’entrée
2. Médium de sortie
3. Unité de calcul (arithmétique et logique)
- Définition : L’unité de calcul, souvent appelée UAL pour Unité Arithmétique et Logique, sert à exécuter les opérations logiques et arithmétiques sur des opérandes fournis par l’unité de contrôle.
4. Unité de contrôle
- Définition : Partie de l’UCT (Unité Centrale de Traitement) qui interprète les instructions et choisit des actions en conséquence.
- Fonctionnement
o Lit les instructions en mémoire, les décode et envoie les signaux aux autres éléments de l’ordinateur pour qu’une instruction soit exécutée.
o Elle reçoit aussi des résultats de l’unité de calcul pour compléter l’exécution des instructions qui permettent des choix.
Cours pour apprendre la programmation Assembleur Perfectionnement
Table des matières :
STRUCTURE “VON NEUMANN” : 5 CRITERES ESSENTIELS QUI DEFINISSENT UN
ORDINATEUR 6
1. Médium d’entrée . 6
2. Médium de sortie 6
3. Unité de calcul (arithmétique et logique) 6
4. Unité de contrôle . 6
5. Unité de mémoire 7
VARIETE DE TYPES D’ORGANISATIONS DE MEMOIRE . 8
AUTRES CARACTERISTIQUES 9
L’horloge 9
Les bus 9
Les registres . 10
Les registres . 11
L’EXECUTION D’UN PROGRAMME . 13
INSTRUCTIONS ET DONNEES . 15
DEUX GRANDS TYPES DE MICROPROCESSEURS . 16
CISC (Complex instruction-set computer) 16
RISC (Reduced instruction-set computer) 16
LE CODAGE DE L’INFORMATION 17
Conversion : Binaire -> Décimal 17
Conversion : Décimal -> Binaire 18
Conversion : Binaire -> Hexadécimal 19
Conversion : Hexadécimal -> Binaire 19
Conversion : Hexadécimal -> Décimal . 19
Conversion : Décimal -> Hexadécimal . 19
La représentation de l’information 20
L’arithmétique réelle . 20
LE LANGAGE D’ASSEMBLAGE . 24
Généralités 24
Une instruction en langage assembleur . 25
Un programme en Assembleur . 26
ARITHMÉTIQUE EN COMPLÉMENT . 27
ADRESSAGE DES OPÉRANDES 28
Généralité . 28
Adressage immédiat 28
Adressage direct . 28
Adressage base (non-utilisé) 29
Adressage indexé 29
Adressage indirect . 30
Adressage direct sur la pile . 30
Adressage indexé sur la pile 31
Adressage indirect sur la pile 31
Adressage indirect indexé sur la pile 32
LES SOUS-PROGRAMMES 33
Généralités 33
La pile . 33
Les paramètres . 34
Identificateurs 36
Constantes 36
Instructions et directives . 36
Format des instructions . 36
Liste d’assemblage . 37
ASSEMBLEUR : DIRECTIVES 38
Directives qui engendrent une réservation de mémoire . 38
Directives qui n’engendrent pas de réservation de mémoire . 38
ASSEMBLEUR : INSTRUCTIONS . 39
Instructions unaires simples . 39
Instructions de chargement et de rangement 39
Instructions arithmétiques 39
Instructions d’entrée-sortie . 40
Instructions logiques 41
Instructions de branchement 41
Instructions liées aux sous-programmes 42
Instructions non-réalisées . 43
DOCUMENTATION DES PROGRAMMES . 44
Généralité . 44
Structures de base 44
Guide d’utilisation . 45
La documentation externe 46
La documentation interne . 46
MISE AU POINT DES PROGRAMMES 48
Principes . 48
Outils . 48
LE SYSTEME D’EXPLOITATION DE PEP/8 . 49
Généralités 49
La pile système et le tampon d’entrée-sortie . 49
Le chargeur (Loader) 50
SYSTEME D’INTERRUPTION DU PROCESSEUR (TRAPS) 52
Généralités 52
Le traitement d’une interruption . 53
Exemple d’interruptions sur un processeur réel (MC68000) 53
Le mécanisme . 55
L’instruction RETTR 56
Le traitement des interruptions : trap . 57
Vérification du mode d’adressage : assertAd 58
Calcul de l’adresse de l’opérande : setAddr 60
Traitement des instructions NOP : opcode24-28 62
Traitement de l’instruction DECI : opcode30 . 63
Traitement de l’instruction DECO : opcode38 . 67
Traitement de l’instruction STRO : opcode40 69
Exemple de traitement d’une instruction causant une interruption . 70
ANNEXE A : GLOSSAIRE . 87
ANNEXE B : EXEMPLE D’UNE DOCUMENTATION INTERNE 88
ANNEXE C : L’ORIGINE DU CHARGEUR 93
Les systèmes moniteurs : Le traitement par lots . 93
Réduction des délais de chargement et de compilation 95
Cours pour apprendre la programmation Assembleur Perfectionnement
