correction d'un code assembleur

correction d'un code assembleur - ASM - Programmation

Marsh Posté le 13-10-2010 à 18:28:30    

bonjour,
j'ai ce code assembleur qui permet la creation d'un tableau de 10 cases et les remplir avec le chiffre 5.en l'utlisant avec tasm,il s'avère qu'il présente des erreurs.si vous pouvez les corriger et comment je peux modifier ce code pour demander à l'utlisateur de donner des valeurs pour remplir le tableau...Merci d'avance  
voici le code
.MODEL SMALL
.STACK
.DATA  
 
TABLEAU DB 10 DUP (?)  
.CODE  
 
MOV AX,0  
BOUCLE:
MOV TABLEAU[AX],5
INC AX  
CMP AX,9  
JNE BOUCLE  
MOV AX,0
BOUCLE2:
MOV DX,TABLEAU[AX]  
INC AX
CMP AX,9
JNE BOUCLE2
MOV AX,4C00H
INT 21H
END

Reply

Marsh Posté le 13-10-2010 à 18:28:30   

Reply

Marsh Posté le 13-10-2010 à 20:35:39    

marooh a écrit :

bonjour,
...en l'utlisant avec tasm,il s'avère qu'il présente des erreurs
...


Bonsoir,
Ca serait bien que tu nous recopies ce que t'indique tasm comme erreurs, pour que les gens n'aient pas a le deviner....

Reply

Marsh Posté le 13-10-2010 à 21:45:04    

bonsoir,
avec plaisir:
<13>illegal indexing mode
<21>operand types do not match

Reply

Marsh Posté le 14-10-2010 à 12:25:13    

Je devine que la ligne 13 est : MOV TABLEAU[AX],5
 
Avec un assembleur de base, on ne peut pas avoir la syntaxe TABLEAU[AX]
Il faut charger l'adresse de TABLEAU dans un registre, SI par exemple.
Puis il faut additionner AX à cette adresse.
Enfin, il faut copier 5 dans le contenu pointé par SI.
 
Je devine que la ligne 21 est : MOV DX,TABLEAU[AX]
C'est le même problème.
 
Bon courage.


Message édité par olivthill le 14-10-2010 à 12:25:27
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed