tword、oword 和 yword 操作数的大小是多少? [英] What are the sizes of tword, oword and yword operands?

查看:22
本文介绍了tword、oword 和 yword 操作数的大小是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

NASM/YASM 手册?在相关说明中,这些名称是否有技巧或潜在的想法?有没有办法给更大的字长指定逻辑名称?

What are the sizes of tword, oword and yword operands, as used in the NASM/YASM manual? And on a related note, is there a trick or underlying idea to these names? Is there a way by which bigger word sizes are given logical names?

我知道虽然系统之间的字长可能不同,但 NASM word 是 2 个字节,dword 是两倍(4 个字节),qword 是一个四字(8 个字节),但是……tword 是一个三字(6 个字节)吗?对于 owordyword,我什至想不出合理的含义.

I know that while word sizes may differ between systems, a NASM word is 2 bytes, dword is double that (4 bytes), qword is a quad word (8 bytes), but... is tword a triple word (6 bytes)? And for oword and yword I can't even think of a plausible meaning.

请注意,这可能是一个简单的问题,但我找不到答案.在 NASM 和 YASM 手册中没有解释这些大小,甚至在 DQDTDYRESQ 中也没有解释>、RESTRESY 伪指令.我在某处读到 MASM 使用类似的系统,但也找不到任何相关信息.

Note that it is probably an easy question, but I couldn't find an answer. In the NASM and YASM manuals these sizes are not explained, not even at the DQ, DT, DY, RESQ, REST, RESY pseudo-instructions. I read somewhere that MASM uses a similar system, but could not find anything on that either.

根据答案,这是完整列表:

Based on the answers, this is the complete list:

  • 1 字节(8 位):byteDBRESB
  • 2 字节(16 位):wordDWRESW
  • 4 字节(32 位):dwordDDRESD
  • 8 字节(64 位):qwordDQRESQ
  • 10 字节(80 位):twordDTREST
  • 16 字节(128 位):owordDORESODDQRESDQ
  • 32 字节(256 位):ywordDYRESY
  • 64 字节(512 位):zwordDZRESZ
  • 1 byte (8 bit): byte, DB, RESB
  • 2 bytes (16 bit): word, DW, RESW
  • 4 bytes (32 bit): dword, DD, RESD
  • 8 bytes (64 bit): qword, DQ, RESQ
  • 10 bytes (80 bit): tword, DT, REST
  • 16 bytes (128 bit): oword, DO, RESO, DDQ, RESDQ
  • 32 bytes (256 bit): yword, DY, RESY
  • 64 bytes (512 bit): zword, DZ, RESZ

推荐答案

nasm 源,它看起来像:

  • 'oword'/'DO' 是word"的 8 倍(O 代表octoword"),与 dqword(double-quad")同义;这将是 128 位,对应于 SSE 向量寄存器的大小.
  • 'tword'/'DT' 是 80 位(T 代表ten 字节"),这是 Intel x87 浮点寄存器的完整大小.
  • 'yword'/'DY' 是 256 位,Y 可能是英特尔 AVX 扩展中 256 位向量寄存器的 YMM 名称的助记符.
  • 'zword'/'DZ' 是 512 位,Z 表示英特尔 AVX-512 扩展中 512 位向量寄存器的 ZMM 名称.
  • 'oword'/'DO' is 8 times as big as "word" (O for "octoword"), synonymous with dqword ("double-quad"); that would be 128 bits, corresponding to the size of an SSE vector register.
  • 'tword'/'DT' is 80 bits (T for "ten bytes"), the full size of an Intel x87 floating point register.
  • 'yword'/'DY' is 256 bits, and the Y is presumably mnemonic for the YMM names of the 256-bit vector registers in the Intel AVX extensions.
  • 'zword'/'DZ' is 512 bits, Z for the ZMM names of the 512-bit vector registers in the Intel AVX-512 extensions.

所以,这不完全是一个合乎逻辑的命名约定;它刚刚长大".

So, it's not exactly a logical naming convention; "it just growed".

这篇关于tword、oword 和 yword 操作数的大小是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆