Zsh: segmentation fault

islam23 - Modifié le 9 mai 2022 à 18:41
Bonjour,
je veux faire un programme assembleur qui va calculer la somme des nombres paires de N nombres donnés



Voici le programme :


%include "asm_io.asm"
global main

 segment .data

  msg1 : db "le nombre voulu a entrer : ",0
  msg3 : db "le nombre : ",0
  msg4 : db "la somme : ",0
   
 segment .bss

  n_chiffres : resb 8
  somme: resb 8
  tmp: resb 8
  
 segment .text
 
main :

 mov eax,msg1
 call print_string
 call read_int
 mov ecx,eax
 mov [n_chiffres],eax
 
 mov ecx,[n_chiffres]

 boucle :
  mov eax,msg3
  call print_string
  call read_int
  push eax
 loop boucle 
 
;.....................................................................
 
 mov byte[somme],0
 
 boucle1:
  mov ebx,2
  pop eax
  mov [tmp],eax
  div ebx
  cmp edx,0
  je equal

        bcl3:
         sub ecx,1
         cmp ecx,0
         jne boucle1
         jmp fin;
  
 equal:
  mov ebx,[tmp]
  mov eax,[somme]
  add eax,ebx 
  mov [somme],eax
  
  jmp bcl3


 
 fin:
  mov eax,msg4
  call print_string
  mov eax,[somme]
  call print_int
 

mov ebx,0  
mov eax,1
int 0x80