TP2 MPC [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

Université Abdelhamid Ibn Badis - Mostaganem

Master M1

Département de Génie Electrique

Travaux Pratiques n° 2

Module : CSMP/MPC

Objectifs  Comprendre les modes d’adressage registre, direct (absolu) et indirect simple du p 68000.  Comprendre la directive d’assemblage DC pour le placement des données en mémoire.  Apprendre le rôle les indicateurs d’états (Flags) du registre CCR. Un compte rendu du TP doit être remis en fin de séance. Aucun retard ne sera toléré.

Exercice 1 Exécuter le programme suivant en notant les résultats pour chaque directive et pour chaque instruction. Etiquettes

Instructions

Opérandes

Indicateurs X N Z V C

Start

ORG DC.L

$2000 $11110000

Mémoire à partir de l’adresse $2000

ORG DC.L

$3000 $00000000

Mémoire à partir de l’adresse $3000

ORG DC.L

$20000 $11110000

Mémoire à partir de l’adresse $20000

ORG DC.L

$30000 $00000000

Mémoire à partir de l’adresse $30000

ORG

$2400

………………. ………………. ………………. ……………….

NOP * Vérification du contenu de la mémoire : absolu court NOT.L

$2000

MOVE.W

$2000, $3000

Mémoire à partir de l’adresse $2000 Mémoire à partir de l’adresse $3000

………………. ……………….

* Vérification du contenu de la mémoire : absolu long NOT.L

$20000

MOVE.W

$20000, $30000

Mémoire à partir de l’adresse $20000

……………….

Mémoire à partir de l’adresse $30000 ……………….

MOVE.B TRAP END

-

#9, D0 #15 Start

Quelle est la différence entre l'adressage absolu court et l'adressage absolu long ?

Exercice 2 Editer le programme suivant et répondre aux questions : * Après assemblage et chargement du programme, quelle est le résultat d'exécution des directives suivantes :

1

ORG $2000 DC.B %00100100, $1C, '#' DC.W $AD0, 'D' DC.L 'OK !', $AC289, 'STOP' ORG $2500 DC.W -30, '$FA', $255 DC.L $FF99, -45 DC.B 200, -12, $32 * Exécuter le programme suivant et commenter le résultat de chaque instruction : ORG $1000 data

DC.B 'Bonjour', $21

Start

ORG $3000 LEA LEA

data, A1 data+32, A2

MOVE.L MOVE.L

(A1), D1 D1, (A2)

ADDA.L ADDA.L

#4, A1 #4, A2

MOVE.L MOVE.L

(A1), D1 D1, (A2)

MOVE.B TRAP

#9, D0 #15

END Start

Exercice 4 Ecrire un programme en assembleur qui effectue la somme suivante : S  a  b  c et vérifier l'exécution dans SIM68K. Les nombres a, b et c sont non signés, codés sur 8 bits et stockée en mémoire.

Exercice 5 Ecrire un programme en assembleur 68000 qui effectue le calcul de : p 

bc  9 a

où a, b et c (stockés en mémoire) sont des nombres entiers signés sur 8 bits et p est la partie entière du résultat. Vérifier avec l'exemple suivant : a = -2, b = 3 et c = -6.

2