L1 MIASHS - UFR Math´ematiques et Informatique 2014 - 2015
2) Les C-instructions
Les C-instructions agissent sur les registres Det Aet la m´emoire Mpoint´ee par A.
Notation dest = comp ; jump
Exemples
D = D+1 : Ajoute 1 au registre D
M=D: Copie la valeur de Ddans la m´emoire `a l’adresse contenue en A
D;JGT : Copie la valeur de Adans PC si Dest sup´erieur `a 0
D=D+1;JGT : Met D+1 dans Det copie Adans PC si D+1>0
dest peut valoir : M, D, A, MD, AM, AD, AMD ou ˆetre vide.
comp peut valoir : 0, 1, -1, A, D, M, !A, !D, !M, -A, -D, -M, A+1, D+1, M+1, A-1, D-1,
M-1, D+A, D-A, A-D, D+M, D-M, M-D, D|A, D|M, D&A, D&M-D.
jump peut valoir : JGT, JEQ, JGE, JLT, JNE, JLE, JMP ou ˆetre vide.
1) Les A-instructions en binaire
Format : 0 a1a2a3a4a5a6a7a8a9a10 a11 a12 a13 a14 a15
value
2) Les C-instructions en binaire
Format : 1 1 1 a c1c2c3c4c5c6d1d2d3j1j2j3
comp dest jump
c1c2c3c4c5c6Avec a= 0 Avec a= 1
1 0 1 0 1 0 0
1 1 1 1 1 1 1
1 1 1 0 1 0 -1
0 0 1 1 0 0 D
1 1 0 0 0 0 A M
0 0 1 1 0 1 !D
1 1 0 0 0 1 !A !M
0 0 1 1 1 1 -D
1 1 0 0 1 1 -A -M
0 1 1 1 1 1 D+1
1 1 0 1 1 1 A+1 M+1
0 0 1 1 1 0 D-1
1 1 0 0 1 0 A-1 M-1
0 0 0 0 1 0 D+A D+M
0 1 0 0 1 1 D-A D-M
0 0 0 1 1 1 A-D M-D
0 0 0 0 0 0 D&A D&M
0 1 0 1 0 1 D|A D|M
j1j2j3PC = A si ...
0 0 0 - Jamais
0 0 1 JGT ... comp >0
0 1 0 JEQ ... comp = 0
0 1 1 JGE ... comp ≥0
1 0 0 JLT ... comp <0
1 0 1 JNE ... comp 6= 0
1 1 0 JLE ... comp ≤0
1 1 1 JMP Toujours
d1d2d3Le r´esultat de comp est stock´e dans...
000 -nulle part
001 Mla m´emoire (en M[A])
010 Dle registre D
011MD la m´emoire ET le registre D
100 Ale registre A
101AM le registre APUIS la m´emoire
110AD les registres AET D
111AMD les registres Aet DPUIS la m´emoire
2