Каковы размеры операндов tword
, oword
и yword
, которые используются в NASM/Руководство YASM? И по соответствующей заметке, есть ли трюк или основная идея этих имен? Есть ли способ, которым большие размерные слова задают логические имена?
Я знаю, что, хотя размеры слов могут различаться между системами, NASM word
составляет 2 байта, dword
- это двойное значение (4 байта), qword
- квадратное слово (8 байтов), но... tword
тройное слово (6 байтов)? А для oword
и yword
я даже не думаю о правдоподобном значении.
Обратите внимание, что это, вероятно, простой вопрос, но я не мог найти ответ. В руководствах NASM и YASM эти размеры не объясняются даже в псевдо-инструкциях DQ
, DT
, DY
, RESQ
, REST
, RESY
. Я где-то читал, что MASM использует подобную систему, но ничего не мог найти.
Изменить: на основе ответов это полный список:
- 1 байт (8 бит):
byte
,DB
,RESB
- 2 байта (16 бит):
word
,DW
,RESW
- 4 байта (32 бит):
dword
,DD
,RESD
- 8 байт (64 бит):
qword
,DQ
,RESQ
- 10 байт (80 бит):
tword
,DT
,REST
- 16 байт (128 бит):
oword
,DO
,RESO
,DDQ
,RESDQ
- 32 байта (256 бит):
yword
,DY
,RESY
- 64 байта (512 бит):
zword
,DZ
,RESZ