我正在查看英特尔数据表:英特尔® 64 和 IA-32 架构软件开发人员手册 ,但我找不到两者之间的区别
- MOVDQA:移动对齐的双四字
- MOVAPS:移动对齐打包单精度
在英特尔数据表中,我可以找到两条指令:
该指令可用于从 128 位内存位置加载 XMM 寄存器,将 XMM 寄存器的内容存储到 128 位内存位置,或在两个 XMM 寄存器之间移动数据。
唯一的区别是:
要将双四字移入或移出未对齐的内存位置,请使用 MOVDQU 指令。
和
要将压缩的单精度浮点值移入或移出未对齐的内存位置,请使用 MOVUPS 指令。
但是我找不到两个不同指令的原因?
那么任何人都可以解释其中的区别吗?