global PrintValue
section .note.GNU-stack noexec nowrite
section .data
x: dq 2
y: dq 4
z: dq 6
section .text
PrintValue:
; 1. Первое слагаемое: 42 * x^2 * y * z
mov rax, [x]
imul rax, [x]
imul rax, 42
imul rax, [y]
imul rax, [z]
mov rbx, rax
; 2. Второе слагаемое: 30 * x * (x + 2y) / (6x - y)
mov rax, [y]
imul rax, 2
add rax, [x]
imul rax, [x]
imul rax, 30
mov rcx, [x]
imul rcx, 6
sub rcx, [y]
cqo
idiv rcx
add rbx, rax
; 3. Третье слагаемое: 2x - y^2
mov rax, [x]
imul rax, 2
mov rcx, [y]
imul rcx, [y]
sub rax, rcx
add rbx, rax
; Возврат результата
mov rax, rbx
ret