Bonjour,
J'ai (très) récemment décidé de commencer à voire ce qui tournais derrières les compilateurs, les OS, etc ... C'est donc tout naturellement, que je me suis tourné vers l'ASM. Après de nombreux programmes fait en MIPS (Je commence simple), je trouve un simulateur de ALTAIR 8800. Bien décidé à faire mes marques dessus, cela fait 3 jours que je bloque sur une bête multiplication. Le programme s’exécute, mais fait bugger, le logiciel ... Est-ce une erreur de ma part ou est-ce une erreur du simulateur ?
Merci d'avance.
Johnsudaar.
Le code (Je ne savais pas trop comment le formaliser donc bon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 00 0 01 AF XRA // A XOR A (== 0) 02 57 MOV D,A // ON STOCK A DANS D : 1 et 2 => D=0 03 3A LDA // LOADER ADDRESSE 80 04 80 05 00 06 47 MOV A,B// A DANS B 07 5F MOV A,E// A DANS E 08 3A LDA // LOADER ADDRESSE 81 09 81 0A 00 0B BA CMP A,D// ON FAIT A-D 0C CA JZ // JZ SI A-D == 0 (SI A == 0) ON GO TO STOCK 0D 18 0E 00 0F 4F MV C,A// ON MET A DANS C 10 7B MV A,E// ON MET E DANS A 11 80 ADD // A = A + B 12 5F ADC A // ON MET A DANS E 13 79 MV A,C // ON MET C DANS A 14 3D DCR A // A = A - 1 15 C3 JMP // JUMP VERS 0B 16 0B 17 00 18 32 STA // STOCK 19 82 1A 00 1B C3 JMP // ET ON ARRETE 1C 00 1D 00
Partager