Exercices décalage à droite et décalage à gauche - informati

Informatique Industrielle : Exercices Décalage à droite et décalage à gauche

Télécharger PDF

Obtenir le pack complet des cours, TDs, TPs et projets sur Informatique Industrielle : Microprocesseur & Microcontrôleur!

Vous souhaitez maîtriser les microprocesseurs et Microcontrôleurs ? Ne cherchez plus, nous avons le pack parfait pour vous.

pack complet des cours, TDs, TPs et projets sur Informatique Industrielle : Microprocesseur & Microcontrôleur

Accédez à une collection complète des supports de cours, des travaux dirigés (TD) corrigés, des travaux pratiques (TP) et des projets.

Obtenir le pack maintenant

1/9 N. ROUSSAFI Décalages Décalage à droite et décalage à gauche Rappel : En assembleur 1. RLF f,d : Rotation logique à gauche (décalage circulaire à gauche) de la variable stockée à l’adresse f. Résultat dans f si d = 1 ou dans w si d = 0. 2. RRF f,d : Rotation logique à droite (décalage circulaire à droite) de la variable stockée à l’adresse f. Résultat dans f si d = 1 ou dans w si d = 0. En mikroC 1. X = X<<1 : un décalage simple (non rotatif) à gauche 2. X = X>>1 : un décalage simple (non rotatif) à droite

2/9 N. ROUSSAFI Décalages Introduction : Dans les exercices suivants, on va utiliser le montage suivant : Pour les programmes en assembleur on va utiliser la structure suivante :

3/9 N. ROUSSAFI Décalages Remarque : On peut modifier le délai en modifiant les valeurs qu’on donne cptr1, cptr2 et cptr3. 4/9 N. ROUSSAFI Décalages

Exercice 1

On désire réaliser le jeu de lumière suivant : C RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 LEDS 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 → led allumée 0 → led éteinte La dernière ligne n’est pas affichée. Mais, elle peut être utilisée pour la programmation. 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC 5/9 N. ROUSSAFI Décalages

Exercice 2

On désire réaliser le jeu de lumière suivant : C RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 LEDS 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 → led allumée 0 → led éteinte La dernière ligne n’est pas affichée. Mais, elle peut être utilisée pour la programmation. 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC 6/9 N. ROUSSAFI Décalages

Exercice 3

On désire réaliser le jeu de lumière qui regroupe les 2 jeux précédents selon le tableau suivant : RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 1 → led allumée 0 → led éteinte 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC 7/9 N. ROUSSAFI Décalages

Exercice 4

On désire réaliser le jeu de lumière suivant : C RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 → led allumée 0 → led éteinte La dernière ligne n’est pas affichée. Mais, elle peut être utilisée pour la programmation. 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC 8/9 N. ROUSSAFI Décalages

Exercice 5

On désire réaliser le jeu de lumière suivant : C RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 → led allumée 0 → led atteinte La dernière ligne n’est pas affichée. Mais, elle peut être utilisée pour la programmation. 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC 9/9 N. ROUSSAFI Décalages

Exercice 6

On désire réaliser le jeu de lumière qui regroupe les 2 jeux précédents selon le tableau suivant : RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 → led allumée 0 → led atteinte 1. Ecrire un programme en assembleur 2. Ecrire un programme en mikroC

Partagez vos remarques, questions ou propositions d'amélioration ici...

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

Publicité 1

Publicité 2