Vous êtes sur la page 1sur 3

Brochage du 6809 Alimentation VSS – VCC (0 – 5v)

Circuit Reset
Quartz pour l’horloge
Mémoire ROM (programme) et RAM

Architecture interne du 6809

Minimum pour démarrer

1
Les registres internes du 6809 Les registres S et U (registres 16 bits)

Les registres S et U sont des pointeurs de pile (zone mémoire


réservée) qui fonctionnent tous deux identiquement. Ils opèrent en
mode dernier entré-premier sortie (LIFO : Last In – First Out).

Pile (Stack) zone mémoire réservée

Rôles de la pile système pour le µP : elle permet 3 facilités de


Les accumulateurs A, B ou D : programmation :

Les accumulateurs A et B sont des registres de calcul de 8bits dans les sous programmes
lesquels toutes les opérations arithmétiques et logiques peuvent
les interruptions
s’effectuer.
stockage de données temporaires
Certaines instructions regroupent les registres A et B pour former
Le pointeur de pile S (Système) est utilisé automatiquement par le
un seul accumulateur D de 16 bits. Dans ce cas l'accumulateur A
µP ;
représente l'octet de poids fort et l’accumulateur B représente l’octet
poids faible. Le pointeur de pile U (Utilisateur) est géré par le programmeur;

Les registres d'index X et Y (registres 16 bits) Le registre DP (Direct Page)

Les registres X et Y sont dits registres d’index car ils permettent C’est un registre 8 bits utilisé pour l’adressage direct court, il forme
d’adresser tout l’espace mémoire avec en plus la capacité d’être pré- la partie haute de l’adresse. Il est automatiquement remis à 00 par un
décrémenté ou poste-incrémenté. Reset.

2
Le registre PC (Program Counter) Langage assembleur

C'est le registre (16 bits) qui contient toujours l’adresse mémoire où se La forme générale d'une instruction assembleur est composée de
trouve les instructions devant être exécutées. quatre (04) champs :

Le registre de condition CC (CCR : Condition Code Register) Etiquette : Mnémonique Opérandes *commentaire

C’est le registre d’état du 6809. Il comporte 8 bits jouant chacun un Exemple


rôle important pour les instructions de sauts ou de branchements
Loop: LDA #$5C *instruction de chargement
conditionnels.
Ou
*instruction de chargement
Loop:
LDA #$5C

Instructions de chargement de données


L’indicateur C (Carry) indique que l'opération effectuée a généré
1. Instruction de chargement de registre : LDR source
une retenue.
R = A, B, D, X, Y, U, ou S ; source = donnée ou adresse
L’indicateur V (oVerflow) est positionné à « 1 » s’il y’a
dépassement de capacité suite à une opération sur des nombres 2. Instruction de chargement mémoire : STR adr
en complément à 2. R = A, B, D, X, Y, U, ou S ; adr = adresse mémoire

L’indicateur Z (Zero) indique que le résultat de l'opération 3. Instructions d’échange de registres :


effectuée est nul.
TFR R1, R2 *R1 R2 EXG R1, R2 *R1  R2
Le bit N (Negative) indique que le résultat est négatif. C’est la Rem : R1 et R2 doivent avoir la même taille (8 bits ou 16 bits) !!
copie du bit de poids fort du résultat de l’opération effectuée. Les registres 8 bits : A, B, CC ou DP

L’indicateur H (Half-Carry) est un bit de demi-retenue. Entre le Les registres 16 bits : X, Y, U, S, D ou PC


quartet faible et la quartet fort du registre A ou B.

Vous aimerez peut-être aussi