NASM CODE, modify the code below Write an assembly program for the processor family x86-32 that reads three signed interger numbers from the standard input and writes the greatest of them on the console. Use the C functions scanf and printf for the management of data input and data output. section .data msg db "The largest number is: %d", 0xa,0 v1 equ -47 v2 equ 32 v3 equ 21 num1 times 4 db 0 num2 times 4 db 0 num3 times 4 db 0 section .text extern printf global main ;must be declared for using gcc main: ;tell linker entry point mov dword [num1], v1 mov dword [num2], v2 mov dword [num3], v3 mov ecx, [num1] cmp ecx, [num2] jg check_third_num mov ecx, [num2] check_third_num: cmp ecx, [num3] jg _exit mov ecx, [num3] _exit: ;Print the greatest number push ecx push msg call printf ;Exit process mov eax, 1 int 80h
NASM CODE, modify the code below
Write an assembly program for the processor family x86-32 that reads three signed interger numbers from the standard input and writes the greatest of them on the console. Use the C functions scanf and printf for the management of data input and data output.
section .data
msg db "The largest number is: %d", 0xa,0
v1 equ -47
v2 equ 32
v3 equ 21
num1 times 4 db 0
num2 times 4 db 0
num3 times 4 db 0
section .text
extern printf
global main ;must be declared for using gcc
main: ;tell linker entry point
mov dword [num1], v1
mov dword [num2], v2
mov dword [num3], v3
mov ecx, [num1]
cmp ecx, [num2]
jg check_third_num
mov ecx, [num2]
check_third_num:
cmp ecx, [num3]
jg _exit
mov ecx, [num3]
_exit:
;Print the greatest number
push ecx
push msg
call printf
;Exit process
mov eax, 1
int 80h
Step by step
Solved in 2 steps