5/16
Instructions : Manipulations
OP MNEM Nom Effet
01 TSTN Test NUL Si NUL, PC<-YY, sinon PC<-ZZ
02 TSTE Test ERR Si ERR, PC<-YY, sinon PC<-ZZ
10 SET Set ACCU<-YY PC<-ZZ
21 LOAD Load ACCU<-MEM[YY] PC<-ZZ
31 STOR Store MEM[YY]<-ACCU PC<-ZZ
80 GOTO Nothing/Goto PC<-ZZ
À chaque cycle où ACCU est modié, ERR est mis
à VRAI si débordement, FAUX sinon. NUL est mis à
VRAI si ACCU est nul. Résultat tronqué si ERR (ex :
689210+582636=2718456).
6/16
Instructions : Arithmétique
OP MNEM Nom Effet
40 ADD Add ACCU<-ACCU+MEM[YY] PC<-ZZ
41 ADDI Add Imm. ACCU<-ACCU+YY PC<-ZZ
42 ADDM Add Imm. mid. ACCU<-ACCU+YY*100 PC<-ZZ
43 ADDL Add Imm. left ACCU<-ACCU+YY*10000 PC<-ZZ
44 SUB Sub ACCU<-ACCU-MEM[YY] PC<-ZZ
45 SUBI Sub Imm. ACCU<-ACCU-YY PC<-ZZ
46 SUBM Sub Imm. mid. ACCU<-ACCU-YY*100 PC<-ZZ
47 SUBL Sub Imm. left ACCU<-ACCU-YY*10000 PC<-ZZ
Les opérations se font en base 10 (tout est codé en binaire
en interne, mais on a programmé la table d'addition en
base 10). Quand A−Bdéborde (négatif), on obtient
1 000 000 + A−B.
7/16
Instructions : Logique
OP MNEM Nom Effet
50 SHFL Shift left ACCU<-ACCU d´ec. g YY col. PC<-ZZ
51 SHFR Shift right ACCU<-ACCU d´ec. d YY col. PC<-ZZ
52 ROTL Rotate left ACCU<-ACCU rot. g YY col. PC<-ZZ
53 REVE Reverse ACCU<-ACCU `a l’envers PC<-ZZ
Usuellement, on a aussi les opérations AND, OR, XOR et
NOT. Pour un ordinateur qui utilise un codage décimal, ça
n'a pas tellement de sens.
8/16
Instructions : Entrées/Sorties
OP MNEM Nom Effet
90 READ Read input MEM[YY]<-input PC<-ZZ
91 WRIT Write output output<-MEM[YY] PC<-ZZ
00 EJECT Eject (fin de travail) Code de fin : YYZZ
Une entrée lue sur input est consommée (plus présente),
une sortie lue sur output est aichée.
Le code de n est conventionnellement 0000 pour un pro-
gramme qui nit normalement, le reste au choix du pro-
grammeur (par ex., un programme avec pas assez de don-
nées s'arrêterait avec 0001).
Si aucune entrée n'est disponible, READ met ERR à 1 et
renvoie un nombre aléatoire. Sinon, ERR est mis à 0.