[Assembleur i386] Je ne peux pas juste imprimer une somme dans l'assembleur i386

Autres projets et contributions
dcastellacci
newbie
Messages : 8
Inscription : mer. 26 janv. 2022, 19:29

[Assembleur i386] Je ne peux pas juste imprimer une somme dans l'assembleur i386

Message par dcastellacci »

voici mon programme
segment .data

prompt1: db "Enter a number: ", 0 ; don't forget nul terminator
len1: equ $-prompt1
prompt2: db "Enter another number: ", 0
len2: equ $-prompt2
outmsg1: db "You entered: ", 0
len3: equ $-outmsg1



segment .bss

input1: resd 0
input2: resd 0



segment .text
global _start
_start:

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, prompt1
mov edx, len1 ; len
int 80h

mov eax, 3 ; read
mov ebx, 0 ; stdin
mov ecx, input1
;mov edx, 4 ; len
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, outmsg1
mov edx, len3 ; len
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, input1
;mov edx, 4 ; len
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, prompt2
mov edx, len2 ; len
int 80h

mov eax, 3 ; read
mov ebx, 0 ; stdin
mov ecx, input2
;mov edx, 4 ; len
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, outmsg1
mov edx, len3 ; len
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
mov ecx, input2
;mov edx, 4 ; len
int 80h

mov eax, input1 ; eax = dword at input1
mov ebx, input2 ; eax += dword at input2
add eax, ebx
mov ecx, eax
int 80h

mov eax, 4 ; write
mov ebx, 1 ; stdout
;mov edx, 1 ; len
int 80h

;Exiting
mov eax, 1
mov ebx, 0
int 80h

Pouvez-vous m'aider ?


Merci
Didier
Répondre