Examen microprocesseurs 6800 - informatique industrielle - t

Informatique Industrielle : Examen Microprocesseurs 6800

Télécharger PDF

INSFP de Bejaia – Microprocesseurs (6800)

Questions de cours

Quels sont les différents registres du microprocesseur 6800 ?

Donner le cycle d’exécution d’une instruction en illustrant avec un schéma.

Citer deux périphériques d’entrée, deux de sortie et deux bidirectionnels.

Citer les différents modes de transfert d’entrée/sortie.

Mode d’adressage dans chaque cas

Pour les instructions suivantes, identifier le mode d’adressage utilisé :

  • ADD A #17 → Mode d’adressage immédiat.
  • LDX #CD12 → Mode d’adressage immédiat.
  • LDA B A21F → Mode d’adressage direct (adresse absolue).
  • LDA B X, 07 → Mode d’adressage indexé avec décalage.
  • BRA étiquette → Mode d’adressage relatif.
  • ADD B #00 → Mode d’adressage immédiat.

Exercice 2 – Analyse d’un code Assembleur (6800)

Soit le code Assembleur suivant :

    CLRA
    CLRB
    LDX #0000
    LDA A X, 07
    ADD B #00
    STA A X, 07
    LDA A X, 07
    ADD B #00
    STA B X, 07
    LDA A X, 07
    ADD B #00
    STA B X, 07
    BRA fin
    fin: STA A X, 00

Après exécution, que contiennent :

  • Les accumulateurs A et B → Les valeurs dépendent des opérations effectuées (explications manquantes, mais généralement liées à des transferts ou calculs).
  • Le registre X → L’adresse initiale ou modifiée selon les instructions.
  • Les cases mémoire [0000] et [0012] → Contenu initial ou résultat des opérations.

À la ligne 6, de quel mode d’adressage s’agit-il ? → Mode d’adressage indexé avec décalage.

Ajouter les instructions suivantes :

    CLR 0000
    CLRA

Quel est l’effet de ces instructions ?

  • CLR 0000 → Efface (met à zéro) la case mémoire située à l’adresse 0000.
  • CLRA → Efface (met à zéro) l’accumulateur A.

Quel est le mode d’adressage dans les deux cas ?

  • CLR 0000 → Mode d’adressage direct (adresse absolue).
  • CLRA → Mode d’adressage implicite.

Exercice 3 – Série de Fibonacci (20 premiers termes)

Réaliser un code Assembleur (6800) pour calculer les 20 premiers termes de la série de Fibonacci, stockés à partir de l’adresse 0040.

Remarque : Dans la série de Fibonacci, on définit :

Un+2 = Un+1 + Un avec U1 = 1 et U2 = 1 (ou 2 selon contexte).

Exemple de structure pour le code :

    ORG 0040
    LDX #00    ; Initialisation du compteur pour les termes
    LDA A #1   ; U1 = 1
    STA A X    ; Stockage du premier terme
    LDX #01    ; Incrémentation de l'index
    LDA A #1   ; U2 = 1 (ou 2 selon la série)
    STA A X    ; Stockage du deuxième terme

    ; Boucle pour calculer les 18 termes suivants (U3 à U20)
    LDX #02    ; Index pour le troisième terme
    boucle:
        LDA A X-1   ; Chargement de U(n)
        ADD A X-2   ; Ajout de U(n-1)
        STA A X    ; Stockage de U(n+1)
        INX        ; Incrémentation de l'index
        CMPX #20   ; Comparaison avec le 20ème terme
        BNE boucle ; Répéter si non égal

    fin: JMP fin  ; Fin du programme

FAQ

1. Qu’est-ce qu’un mode d’adressage en Assembleur ?

Un mode d’adressage désigne la méthode utilisée pour spécifier l’opérande d’une instruction. Il peut être immédiat, direct, indexé, relatif, etc.

2. Comment initialiser une série de Fibonacci en Assembleur ?

Il faut définir les deux premiers termes (U1 et U2) dans des cases mémoire, puis utiliser une boucle pour calculer les termes suivants en additionnant les deux précédents.

3. Pourquoi utiliser le registre X pour stocker les termes de Fibonacci ?

Le registre X sert d’index pour accéder aux cases mémoire successives où les termes sont stockés, facilitant ainsi l’itération dans la boucle de calcul.

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