以下用于添加到内存引用的字节说明符在 NASM 汇编器中有什么作用?

Luc*_*nis 0 assembly nasm

以下代码

section .data

Snippet db "KANGAROO"

section .text

global_start

_start:

mov ebx, Snippet
add byte [ebx], 32
Run Code Online (Sandbox Code Playgroud)

将 32 添加到 BX 中的内存地址所指的数字。但是,add 后的字节说明符是什么?我的书说这意味着我们只向 EBX 中的内存地址写入一个字节。但我不太明白这意味着什么(我是汇编程序的初学者)。将一个字节写入内存地址是什么意思?写入多于一个字节是什么意思?

rcg*_*ldr 6

byte [EBX],或者在微软汇编程序的情况下,byte ptr [EBX] 告诉汇编程序 EBX 是指向字节大小变量的指针。只有在使用立即数作为操作数时才需要像这样定义指针的类型。如果使用寄存器作为操作数,则汇编器假定大小与寄存器相同,例如 mov [ebx],al,或 mov [ebx],ax,或 mov[ebx],eax。