typestar

push y pop en Assembly

La pila crece hacia abajo; último en entrar, primero en salir.

; The stack grows down; push and pop move rsp for you.
        global _start

        section .text
_start:
        mov rax, 3
        mov rbx, 39

        push rax                ; save 3
        push rbx                ; save 39
        pop rax                 ; rax = 39 (last in, first out)
        pop rbx                 ; rbx = 3

        add rax, rbx            ; 42, values swapped and summed
        mov rdi, rax
        mov rax, 60             ; exit code 42
        syscall

Cómo funciona

  1. push escribe y mueve rsp; pop hace el inverso.
  2. Sacar en el mismo orden intercambia los dos valores.
  3. La contabilidad de rsp es del todo implícita aquí.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
17
Caracteres a escribir
389
Tokens
41
Ritmo de tres estrellas
60 tpm

Al ritmo de tres estrellas de 60 tokens por minuto, este intento toma unos 41 segundos.

Escribe este fragmento

Paso 1 de 3 en La pila; paso 19 de 31 en Fundamentos del lenguaje.

← Anterior Siguiente →