eishtein
Messages postés52Date d'inscriptiondimanche 6 décembre 2009StatutMembreDernière intervention23 janvier 2014
-
19 août 2010 à 14:17
eishtein
Messages postés52Date d'inscriptiondimanche 6 décembre 2009StatutMembreDernière intervention23 janvier 2014
-
25 août 2010 à 16:23
bonjour tout le monde;
je me demandais si vous pouvez m'aider à la résolution d'un certain problème au niveau suivant : en fait j'ai un prg en NASM [16 bits] qui est le suivant:
bits 16
org 0x100
segment .data
msg db 'veuillez entrer votre nombre','$'
segment .bss
resultat resb 13
segment .text
mov ax,03
int 10h
mov dx,msg
mov ah,09
int 21h
;appel de la fct:
call convert
call just_do
;fin:
mov ax,4c00h
int 21h
convert:
mov si,1
a:
inc si
cmp byte[msg+si],13
jne a
mov bx,si
mov dl,10
mov al,1
ba:
mul dl
dec si
cmp si,1
jne ba
mov si,bx
mov cx,0
mov ah,0
c:
dec si
xchg cx,si
mov al,byte[resultat+si]
sub al,'0'
add ah,al
xchg si,cx
inc cx
cmp si,1
jne c
mov byte[resultat],al
ret
just_do:
mov al,byte[resultat]
cbw
mov si,ax
mov dx,40
mov cx,50
ac:
mov ah,0Ch
int 10h
inc dx
inc cx
dec si
cmp si,0
jne ac
ret
ce programme a pour but de donner la chance à l'utilisateur de saisir un numéro à partir duquel est défini la longueur d'une ligne qu'on doit afficher.
le problème c'est que quand j'appuie sur la touche "Ctrl+F9" le programme m'envoie un message d'erreur comme quoi il existe une instruction non autorisée et qu'il faut quitter le programme. je vous serais donc très reconnaissant si vous m'aidez à le résoudre
ET MERCI D'AVANCE
eishtein
Messages postés52Date d'inscriptiondimanche 6 décembre 2009StatutMembreDernière intervention23 janvier 2014 21 août 2010 à 14:19
MERCI POUR LA RÉPONSE
l'IDE que j'utilise s'appelle NASMEdit IDE [==> c'est ressemblant à l'environnement connu en DEV-C++ si vous le connaissez déjà] et çà s'assemble aussi sur NASMIDE [qui est l'assembleur traditionnel]