typestar

Tamaños de datos en Assembly

db, dw, dq: bytes, palabras, quadwords, declarados y medidos.

; db, dw, dd, dq declare initialized bytes through quadwords.
        global _start

        section .data
tag:    db "v2", 10             ; three bytes
small:  dw 300                  ; two bytes
wide:   dq 1000000              ; eight bytes
taglen: equ $ - small - 10      ; equ computes at assemble time

        section .text
_start:
        mov rax, 1
        mov rdi, 1
        mov rsi, tag
        mov rdx, 3
        syscall

        movzx rdi, word [small] ; load 300 -> exit 300 mod 256 = 44
        mov rax, 60
        syscall

Cómo funciona

  1. Cada directiva reserva e inicializa su propio ancho.
  2. movzx carga la palabra de 16 bits sin basura de signo.
  3. Los códigos de salida son un byte: 300 sale como 300 mod 256 = 44.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
20
Caracteres a escribir
448
Tokens
60
Ritmo de tres estrellas
55 tpm

Al ritmo de tres estrellas de 55 tokens por minuto, este intento toma unos 65 segundos.

Escribe este fragmento

Paso 1 de 4 en Datos; paso 7 de 31 en Fundamentos del lenguaje.

← Anterior Siguiente →