小编Tom*_*Tom的帖子

如何将所有1加载到mmx寄存器中?为什么这不起作用?

当我搜索时,64/32位的东西上除了意见问题之外似乎找不到任何东西.

__asm__ {
  mov rbx, 0xFFFFffffFFFFffffull
  movq mm2, rbx 
}
Run Code Online (Sandbox Code Playgroud)

在这两条指令之后,mm2寄存器根据我的xcode调试器保存值0x30500004ffffffff(这是C++中的内联asm).现在我是x86程序集的新手,我的汇编类是用MIPS教的,我之前用过它,但我想这不行,因为我正在编译(这是一个photoshop插件的一部分)在32位模式和rbx( 64位版本的ebx,bx等,对吗?)技术上可能并不存在.我尝试了其他方法来获得所有的1,如加载0xfffffffful到mm2和另一个寄存器和乘法,但这似乎也没有用.

我正在修改我的插件与一些SIMD指令,但我似乎无法弄明白或找到任何不会让我的眼睛受伤的文档.任何帮助深表感谢!

x86 x86-64 simd inline-assembly

3
推荐指数
1
解决办法
856
查看次数

标签 统计

inline-assembly ×1

simd ×1

x86 ×1

x86-64 ×1