gpt4 book ai didi

assembly - 字和字操作数的大小是多少?

转载 作者:行者123 更新时间:2023-12-02 00:20:02 27 4
gpt4 key购买 nike

NASM 中使用的 twordowordyword 操作数的大小是多少/YASM manual ?与此相关的是,这些名称是否有什么技巧或潜在的想法?有没有办法为更大的字长赋予逻辑名称?

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

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

<小时/>

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

  • 1 字节(8 位):byteDBRESB
  • 2 字节(16 位):DWRESW
  • 4 字节(32 位):dwordDDRESD
  • 8 字节(64 位):qwordDQRESQ
  • 10 字节(80 位):twordDTREST
  • 16 字节(128 位):owordDORESODDQRESDQ
  • 32 字节(256 位):ywordDYRESY
  • 64 字节(512 位):zwordDZRESZ

最佳答案

查看the nasm source ,看起来像:

  • 'oword'/'DO' 是“word”的 8 倍(O 表示“octoword”),与 dqword(“double-quad”)同义;这将是 128 位,对应于 SSE 向量寄存器的大小。
  • 'tword'/'DT' 为 80 位(T 表示“ten 字节”),即 Intel x87 浮点寄存器的完整大小。
  • “yword”/“DY”为 256 位,Y 可能是 Intel AVX 扩展中 256 位向量寄存器的 YMM 名称的助记符。
  • “zword”/“DZ”为 512 位,Z 表示 Intel AVX-512 扩展中 512 位向量寄存器的 ZMM 名称。

所以,这不完全是一个逻辑命名约定; “它刚刚长大”。

关于assembly - 字和字操作数的大小是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12063840/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com