Mit mov ziel, quelle kopierst du Werte. Rechnen geht mit add, sub, inc (um 1 erhöhen), dec (um 1 verringern), imul (multiplizieren) und idiv (dividieren). Der Befehl xor rax, rax setzt ein Register schnell auf 0.
Das Ziel steht immer links: add rax, 5 bedeutet rax = rax + 5. Ein Befehl kann nicht zwei Speicherstellen gleichzeitig verwenden, ein Operand muss ein Register oder eine Zahl sein.
mov rax, 10
add rax, 5 ; rax = 15
sub rax, 3 ; rax = 12
imul rax, 2 ; rax = 24
inc rax ; rax = 25
dec rax ; rax = 24
xor rbx, rbx ; rbx = 0Merke
- Ziel steht links, Quelle rechts
add,sub,imul,inc,decxor reg, regsetzt ein Register auf 0
Aufgabe
Berechne (7 + 3) * 4 mit Registern.