fork download
  1. section .data
  2. a dw 10 ; Переменная a равна 10
  3. b dw 20 ; Переменная b равна 20
  4. c dw 30 ; Переменная c равна 30
  5. d dw 40 ; Переменная d равна 40
  6.  
  7. section .text
  8. global _start
  9.  
  10. _start:
  11. mov ax, [a] ; Загружаем значение a в регистр AX
  12. add ax, [b] ; Прибавляем к AX значение b
  13. sub ax, [c] ; Вычитаем из AX значение c
  14. mul word [d] ; Умножаем AX на значение d
  15.  
  16. ; Вывод результата
  17. movzx ebx, ax ; Копируем результат в EBX
  18. mov eax, 1 ; Системный вызов write
  19. mov ecx, msg ; Указатель на сообщение
  20. mov edx, 8 ; Длина сообщения
  21. int 0x80 ; Выполняем системный вызов
  22.  
  23. ; Завершение программы
  24. mov eax, 1 ; Системный вызов exit
  25. xor ebx, ebx ; Код возврата 0
  26. int 0x80 ; Выполняем системный вызов
  27.  
  28. section .bss
  29. result resb 3 ; Резервируем место под результат
  30.  
  31. section .rodata
  32. msg db "Результат: ", 0xA, 0xD ; Сообщение для вывода
Success #stdin #stdout 0s 5276KB
stdin
Standard input is empty
stdout
Standard output is empty