Untitled
unknown
plain_text
2 years ago
2.4 kB
3
Indexable
section .data prompt1 db "Введите первое число: ", 0 prompt2 db "Введите второе число: ", 0 result1 db "Первое число больше второго.", 0 result2 db "Второе число больше первого.", 0 result3 db "Числа равны.", 0 section .bss num1 resb 4 ; размер первого числа в байтах num2 resb 4 ; размер второго числа в байтах section .text global _start _start: ; Выводим приглашение для ввода первого числа mov eax, 4 mov ebx, 1 mov ecx, prompt1 ; исправлено mov edx, 19 int 0x80 ; Читаем первое число с клавиатуры mov eax, 3 mov ebx, 0 mov ecx, num1 mov edx, 4 ; размер вводимого числа в байтах int 0x80 ; Выводим приглашение для ввода второго числа mov eax, 4 mov ebx, 1 mov ecx, prompt2 ; исправлено mov edx, 19 int 0x80 ; Читаем второе число с клавиатуры mov eax, 3 mov ebx, 0 mov ecx, num2 mov edx, 4 ; размер вводимого числа в байтах, также исправлено int 0x80 ; Сравниваем числа mov eax, DWORD [num1] cmp eax, DWORD [num2] jg print_result1 ; первое число больше второго jl print_result2 ; второе число больше первого je print_result3 ; числа равны - добавлено print_result1: ; Выводим сообщение, что первое число больше второго mov eax, 4 mov ebx, 1 mov ecx, result1 mov edx, 24 int 0x80 jmp exit print_result2: ; Выводим сообщение, что второе число больше первого mov eax, 4 mov ebx, 1 mov ecx, result2 mov edx, 24 int 0x80 jmp exit print_result3: ; Выводим сообщение, что числа равны mov eax, 4 mov ebx, 1 mov ecx, result3 mov edx, 13 int 0x80 exit: ; Завершаем программу mov eax, 1 xor ebx, ebx int 0x80
Editor is loading...
Leave a Comment