; exportar label de inicio do programa global _start section .data ; seccao data - dados inicializados ; variaveis de 32 bits x: dd 21 section .text ; seccao text - codigo _start: nop ; dummy ; verificar se conteúdo da variável ;x é par ou ímpar, para tal deixa em EAX 1 se x for par e 0 se for ;ímpar. mov eax, [x] ; guarda X em eax mov ecx, 2 ; guarda 2 em ecx div ecx ; divisao de eax por 2, o resultado fica em eax ; e o resto fica em edx cmp edx, 0 ; compara eax com 0 jnz else ; salta para else se for diferente de 0 mov eax, 1 ; guarda 1 em eax jmp end ; salta para end else: mov eax, 0 ; guarda 0 em eax end: ; chamada ao sistema para terminar o programa mov eax, 1 ; codigo de "exit" mov ebx, 0 ; valor retornado ao sistema int 0x80 ; chamada ao sistema