Operações aritméticas
Uma instrução depois da outra
RAX guarda 10 e RBX guarda 4. Use RBX numa soma e depois subtraia para RAX terminar em 11.
Blocos
Seu programa
2 instruções- 01 MOV
mov rax, 10 - 02 MOV
mov rbx, 4
Resultado
Aguardando suas instruções
Simulador didático · blocos equivalem a instruções Intel/NASM. Não executa Assembly nativo.
Entender melhor
Cada passo parte do resultado anterior: 10 + 4 = 14 e 14 − 3 = 11. RBX continuou com 4.
Este laboratório modela MOV, ADD, SUB, CMP, saltos de igualdade e pilha. Os registradores começam sem valor; a aritmética usa 64 bits sem sinal. Só ZF é representada, e cada execução recomeça do início. Repetições param após 200 passos. Não simula memória, outras flags, chamadas ao Linux ou um processador completo.
Consultar a lição completaEntender melhor · Operações aritméticas
Calcular uma sequência de adições e subtrações entre registradores.
O resultado fica no destino
ADD e SUB podem usar outro registrador como origem. Em ADD RAX, RBX, o novo valor de RAX é a soma dos valores anteriores de RAX e RBX. RBX não é alterado.
Faça uma pequena tabela com os valores após cada linha. Isso evita tentar resolver o programa inteiro de uma só vez. Não pule a inicialização dos registradores.
Números têm limites
Registradores têm tamanho fixo. Se um resultado ultrapassa os bits disponíveis, ele não cresce sem limite: a aritmética é limitada pela largura do operando. As flags (indicadores de estado) ajudam a identificar determinadas condições.
Neste primeiro exemplo, usamos valores positivos pequenos, sem ultrapassar esse limite. Números negativos podem ser representados por complemento de dois, uma convenção que será aprofundada em conteúdos futuros.
Um exemplo, passo a passo
; x86-64 · Intel / NASM · Linux mov rax, 10 ; RAX = 10 mov rbx, 4 ; RBX = 4 add rax, rbx ; RAX = 14, RBX continua 4 sub rax, 3 ; RAX = 11
Entendendo cada passo
- Inicializamos os dois registradores para não depender de valores desconhecidos.
- A soma usa RBX, mas escreve apenas em RAX.
- A subtração parte de 14 e chega a 11. RBX termina com 4.
Acompanhe cada instrução e mantenha separado o valor de cada registrador.
Revisão complementar
O que faz a instrução sub rax, 3?
Marcação opcional, salva apenas neste navegador. Clique novamente para desfazer.