Microprocesseurs: Définitions et Exercices d'Assembleur

Telechargé par Adolphe Loga Neperien
Exercice 1 :
1- Définition :
Microprocesseur : Un microprocesseur est un processeur dont tous les composants
ont été suffisamment miniaturisés pour être regroupés dans un unique boitier.
Microprocesseur : c’est un circuit intégré complexe, très rapide intégrant un très
grand nombre de fonctions logiques qu’il ne peut exécuter qu’une seule simultanément
Cycle d’instruction : c’est l’intervalle de temps mis par le processeur pour exécuter
une instruction
Interruption : c’est un évènement capable d’interrompre momentanément l’exécution
d’un programme dans le but d’exécuter une autre tache jugée plus importante.
Accumulateur : registre servant pour les opérations arithmétiques et logiques, où l’on
peut stocker l’une des opérandes au début de l’opération et le résultat à la fin d’une
opération
Pile LIFO : c’est une pile(petite partie de la RAM qui permet de sauvegarder le
contenu de certains registres du microprocesseur en cas d’appel d’un sous-
programme) dans laquelle la dernière donnée sauvegardée doit être la première à être
restituée
Décodeur c’est un circuit combinatoire à N entrées et 2N sorties permettant de
sélectionner une puce
2- Mode d’adressage est le moyen utilisé pour aller chercher une donnée en mémoire
Adressage implicite : Dans ce type de mode d'adressage, aucun opérande (registre ou
données) n'est spécifié dans l'instruction. L'opérande est inhérent (joint
inséparablement) à l'instruction. Exemple: CMA (Complement Accumulator ou
accumulateur de complément), Adressage immédiat : Dans ce type d'adressage les 8
bits de données sont directement passées comme opérande. La donnée est
immédiatement déplacée vers le registre.
Exemple: MVI B 1 4
Adressage Direct absolu: Dans ce type d'adressage, l'adresse mémoire directe est
donnée comme opérande. Exemple: LDA C500H
Adressage indirect par registre : Dans ce type d'adressage, les données d'un registre
sont passées à un autre registre. Exemple: MOV B A Pour ce cas, la donnée de A est
passée dans B
Adressage par registre : EX : DCX
Adressage Direct par registre : EX : JMP
3- Caractéristiques d’un microprocesseur :
Fabricant
Le nombre de ligne de données
Le nombre de ligne d’adresse
Sa fréquence d’horloge
Le nombre d’instruction du jeu
Sa capacité d’adressage
4- Différence entre microprocesseur et microcontrôleur : le microcontrôleur
Microprocesseur
microcontrôleur
généraliste
Spécialisé
Bati autour d’un microprocesseur, RAM,
ROM, des circuits d’interfaces et des
circuits spéciaux
5- Parce que la largeur du bus de donnés est de 8 bits
6- Le registre d’états est un ensemble de bits représentant des drapeaux au sein d'un
microprocesseur.
L’indicateur de signe S : il indique par sa valeur logique 1 qu’un nombre est signé
L’indicateur Zéro Z : si Z=1 le résultal d’une opération est nul si non Z=0
L’indicateur half-carry : c’est la retenue auxiliaire ou intermédiaire entre le 4ieme et
le 5ieme bit
L’indicateur de débordement C ou O encore appelé overflow. Si le résultat d’une
opération devient supérieur à 255 sur 8 bits alors C=1
L’indicateur de parité P : Si P =1 alors la somme des bits d’un nombre est paire
Exercice 2 :
Exercice 3 :
1- langage évolué : c’est un langage se rapprochant du langage courant conçu pour
faciliter d’avantage le dialogue homme-machine
Langage assembleur : un langage de bas niveau qui représente le langage machine
sous une forme lisible par un humain. Son fonctionnement est très proche du langage
machine. Il est constitué des mnémoniques
Assembleur : C’est un programme de traduction qui traite chaque ligne du
programme source pour fournir le code machine
Langage machine : le langage de base compréhensible par tous les microprocesseurs,
c’est une suite de 1 et 0
Optocode : c’est le code d’une instruction compréhensible par la machine
Mnémonique est la description littérale d’une instruction en langage assembleur
Jeu d’instructions : est l'ensemble des instructions machines qu'un processeur
d'ordinateur peut exécuter. Ces instructions machines permettent d'effectuer des
opérations élémentaires (addition, ET logique…) ou plus complexes (division, passage
en mode basse consommation…).
2- Voir le jeu d’instructions
3- Ecrire un programme qui compare deux nombres à votre choix situés aux adresses
4150h et 4151h et sauvegarde le plus grand nombre à l’adresse 4152h
MVI C,00
MVI B,02 // Initialisation du registre B avec la valeur 02
MOV B // on charge l’accumulateur avec la valeur 02
STA 4150 // on sauvegarde la valeur de l’accumulateur à l’adresse 4150
MVI B,04 // Initialisation du registre B avec la valeur 04
MOV B // on charge l’accumulateur avec la valeur 04
STA 4151 // on sauvegarde la valeur de l’accumulateur à l’adresse 4151
LDA 4150
MOV B,A
LDA 4151
CMP B
JZ FIN
JC SAVE1
STA 4152
SAVE1 : MOV A,B
STA 4152
FIN : NOP
HLT
4- Ecrire un programme qui fait la multiplication deux nombres à votre choix situés aux
adresses 4250h et 4251h et sauvegarde le résultat à l’adresse 4252h
MVI C,00
MVI B,02 // Initialisation du registre B avec la valeur 02
MOV B // on charge l’accumulateur avec la valeur 02
STA 4250 // on sauvegarde la valeur de l’accumulateur à l’adresse 4150
MVI B,04 // Initialisation du registre B avec la valeur 04
MOV B // on charge l’accumulateur avec la valeur 04
STA 4251 // on sauvegarde la valeur de l’accumulateur à l’adresse 4151
LDA 4250
MOV B,A
LDA 4251
MOV D,A
MVI A,00
LABEL:ADD B
DCR D
JNZ LABEL
JNC LOOP
INR C
LOOP:STA 4252
MOV A,C
STA 4253
HLT
1 / 5 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!