seccas | Voici deux code a priori identiques, si ce n'est la chaine de caractères qui diffère :
ORG 100h
SECTION .DATA
message DB 'Hello, World !','$'
SECTION .TEXT
MOV AX,0900h
MOV DX,message
INT 21h
MOV AX,4C00h
INT 21h |
ORG 100h
SECTION .DATA
message DB 'Tapez un caractere !','$'
SECTION .TEXT
MOV AX,0900h
MOV DX,message
INT 21h
MOV AX,4C00h
INT 21h |
Seulement, voila : le premier se compile et fonctionne (il affiche "Hello, World !" ), mais le deuxième se compile, puis à l'excution affiche plein de caractères incompréhensibles, puis fait planter la fenêtre DOS.
Voici les différentes hypothèses que j'ai envisagé, dont aucune ne s'est avérée exacte :
- caractères accentués : il n'y en a pas
- erreur de frappe dans le reste du code : non, un simple changement dans la chaine de caractère suffit à observer la différence
- problème de "taille", j'ai essayé de remplacer DB par DW mais ça ne change rien
Alors, quel est votre avis ?
Je précise que je débute dans la programmation en assembleur. |