Tp1 : architecture et instructions du 6800 - informatique in

Informatique Industrielle : TP1 : Architecture et instructions du 6800

Télécharger PDF

Travaux Pratiques sur l’Architecture et les Instructions du Microprocesseur 6800

Introduction

Ce TP vise à familiariser les étudiants avec le logiciel Moto6800 et à initier leur pratique du langage assembleur pour le microprocesseur Motorola 6800.

Objectifs

Les objectifs principaux sont :

  • Se familiariser avec l’interface du logiciel Moto6800 et ses fonctionnalités.
  • Débuter avec le langage assembleur en manipulant les registres et instructions de base du 6800.

Matériel Utilisé

Un PC équipé du logiciel Moto6800.

Partie A : Découverte du Logiciel Moto6800

Ouvrez le logiciel Moto6800 et explorez ses différentes fenêtres pour comprendre son fonctionnement.

1) Éditeur Moto6800

Dans la fenêtre principale de l’éditeur, identifiez les éléments suivants :

  • Registres du 6800 : Accumulateurs A et B, registre d’index X, compteur programme (PC), registre d’état.

2) Exécution du Programme

Après avoir écrit un programme dans l’éditeur, observez les changements dans les registres PC et A lors de l’exécution. Le bouton d’exécution passe du rouge au gris. Pour relancer l’exécution ou modifier le programme, utilisez le bouton « Mise à jour ».

Les fenêtres disponibles pour visualisation incluent :

  • Programme : Affichage du code assembleur.
  • RAM (8 Ko) : Espace mémoire modifiable.
  • ROM (32 Ko) : Espace mémoire non modifiable (simulation).
  • PIA : Affichage des registres du périphérique d’interface.

Ces fenêtres peuvent être ouvertes simultanément pour une meilleure analyse.

3) Ouvrir et Enregistrer un Programme

Les actions d’ouverture et d’enregistrement d’un programme se réalisent via les menus déroulants de la fenêtre principale.

Partie B : Manipulation des Registres du 6800

I) Programme de Base

Écrivez le code suivant dans l’éditeur Moto6800 :

LDAA #$25
STAA $0000
LDAB #$05
STAB $0002
END

Après exécution, les valeurs des registres modifiés sont :

  • Accumulateur A : $25
  • Accumulateur B : $05

Les cases mémoire modifiées et leurs adresses sont :

Adresse Contenu
$0000 $25
$0002 $05

II) Ajout d’Instructions

Ajoutez le code suivant avant la pseudo-instruction END :

LDAA #$32
STAA $0002
CLRA

Observations après exécution :

  • Le registre A est chargé avec la valeur $32 puis réinitialisé à $00 par CLRA.
  • La mémoire à l’adresse $0002 contient initialement $05 et est remplacée par $32 avant d’être écrasée par $00.
  • Le registre B reste inchangé.

III) Programme avec Instructions Indexées

Voici un programme utilisant des instructions indexées :

$0000 db $01
$0001 db $02

LDX  #$00D0
LDA  A $00,X
LDA  B $01,X
ABA
STA  A $02,X
INX
CPX  #$00D8
END

Exécution « pas à pas » et résultats :

  • Registre X : Initialement $00D0, puis incrémenté à $00D1, $00D2, ..., $00D7.
  • Accumulateur A : Charge $01 (adresse $00D0), puis $02 (adresse $00D1), puis additionne avec B.
  • Accumulateur B : Charge $02 (adresse $00D1).
  • Résultat après ABA : $03 (car $01 + $02 = $03).
  • Adresse finale de X : $00D7 avant la comparaison.

Cases mémoire modifiées après exécution :

Adresse Contenu
$00D2 $03

Conclusion

Ce TP permet de comprendre les bases de l’assembleur pour le microprocesseur 6800, notamment la manipulation des registres et des instructions d’accès mémoire, ainsi que l’utilisation des opérations arithmétiques et de l’indexation.

FAQ

1. Qu’est-ce que le registre d’état dans le 6800 ?

Le registre d’état (Condition Code Register) contient des flags indiquant le résultat des opérations (comme le carry, zero, overflow, etc.). Il est utilisé pour contrôler le flux du programme.

2. À quoi sert l’instruction INX ?

INX incrémente le registre d’index X de 1. Elle est souvent utilisée pour parcourir des tableaux ou des zones mémoire consécutives.

3. Comment interpréter les valeurs en hexadécimal dans Moto6800 ?

Les valeurs en hexadécimal (comme $25) représentent des données binaires converties en base 16. Par exemple, $25 correspond à 37 en décimal.

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