Quais são os tamanhos dos operandos tword, oword e yword?
Quais são os tamanhos detword
, oword
eyword
operandos, como usado noNASM/Manual do YASM? E em uma nota relacionada, existe algum truque ou ideia subjacente a esses nomes? Existe uma maneira pela qual tamanhos maiores de palavras recebam nomes lógicos?
Eu sei que enquanto tamanhos de palavras podem diferir entre sistemas, um NASMword
é 2 bytes,dword
é o dobro disso (4 bytes),qword
é uma palavra quádrupla (8 bytes), mas ... étword
a palavra tripla (6 bytes)? E paraoword
eyword
Eu não posso nem pensar em um significado plausível.
Note que é provavelmente uma pergunta fácil, mas não consegui encontrar uma resposta. Nos manuais NASM e YASM estes tamanhos não são explicados, nem mesmo noDQ
, DT
, DY
, RESQ
, REST
, RESY
pseudo-instruções. Eu li em algum lugar que MASM usa um sistema semelhante, mas não consegui encontrar nada sobre isso também.
Edit: Com base nas respostas, esta é a lista completa:
1 byte (8 bits):byte
, DB
, RESB
2 bytes (16 bits):word
, DW
, RESW
4 bytes (32 bits):dword
, DD
, RESD
8 bytes (64 bits):qword
, DQ
, RESQ
10 bytes (80 bits):tword
, DT
, REST
16 bytes (128 bits):oword
, DO
, RESO
, DDQ
, RESDQ
32 bytes (256 bits):yword
, DY
, RESY
64 bytes (512 bits):zword
, DZ
, RESZ