Open Marcos-Carros-Amorim opened 1 year ago
;Média entre dois números ;Introdução ao Assembly ;Kaue Klein Matos, Marcos Carros Amorim , FEAP AVARÉ ;Engenharia da Computação, Sistemas Operacionais
SYS_EXIT equ 1 SYS_READ equ 3 SYS_WRITE equ 4 STDIN equ 0 STDOUT equ 1 STDOP equ 2
section .data numero1 db 'Digite o primeiro número: $' numero2 db 'Digite o segundo número: $' result_msg db 'A média é: $'
section .bss num1 resw SYS_EXIT num2 resw SYS_EXIT sum resw SYS_EXIT
section .text global _start
_start: ; Solicita o primeiro número mov eax, SYS_WRITE mov ebx, STDOUT mov ecx, numero1 mov edx, 27 int 0x80
; Lê o primeiro número mov eax, SYS_READ mov ebx, STDIN lea ecx, [num1] mov edx, STDOP int 0x80 ; Solicita o segundo número mov eax, SYS_WRITE mov ebx, STDOUT mov ecx, numero2 mov edx, 26 int 0x80 ; Lê o segundo número mov eax, SYS_READ mov ebx, STDIN lea ecx, [num2] mov edx, STDOP int 0x80 ; Soma os dois números mov ax, [num1] add ax, [num2] mov [sum], ax ; Divide por 2 mov ax, [sum] shr ax, STDOUT mov [sum], ax ; Exibe a mensagem do resultado mov eax, SYS_WRITE mov ebx, STDOUT mov ecx, result_msg mov edx, 13 int 0x80 ; Exibe o resultado mov eax, SYS_WRITE mov ebx, STDOUT lea ecx, [sum] mov edx, STDOP int 0x80 ; Sair mov eax, STDOUT xor ebx, ebx int 0x804
;Média entre dois números ;Introdução ao Assembly ;Kaue Klein Matos, Marcos Carros Amorim , FEAP AVARÉ ;Engenharia da Computação, Sistemas Operacionais
SYS_EXIT equ 1 SYS_READ equ 3 SYS_WRITE equ 4 STDIN equ 0 STDOUT equ 1 STDOP equ 2
section .data numero1 db 'Digite o primeiro número: $' numero2 db 'Digite o segundo número: $' result_msg db 'A média é: $'
section .bss num1 resw SYS_EXIT num2 resw SYS_EXIT sum resw SYS_EXIT
section .text global _start
_start: ; Solicita o primeiro número mov eax, SYS_WRITE mov ebx, STDOUT mov ecx, numero1 mov edx, 27 int 0x80