操作和字节顺序
Operations and endianess
我通过使用 gdb 看到当字节从内存复制到寄存器时它们被反转,如果正在使用的系统采用小端法。
因为,据我所知,x86 汇编指令集不允许操作数都在内存中的操作,我想知道:是否有任何操作直接对小端值执行而不先反转?
这个答案对于有经验的人来说可能有点奇怪,但是提问者要找的东西叫做MOVBE。它确实将数据原样(!)(与他的论点相关)复制到寄存器中。它并非在所有架构上都可用,但仍然是针对此特定问题的最佳解决方案。所以
的答案
I was wondering: is there any operation which is performed directly on little endian values without being reversed first?
是:MOVBE
确实按要求的顺序复制字节。
我通过使用 gdb 看到当字节从内存复制到寄存器时它们被反转,如果正在使用的系统采用小端法。
因为,据我所知,x86 汇编指令集不允许操作数都在内存中的操作,我想知道:是否有任何操作直接对小端值执行而不先反转?
这个答案对于有经验的人来说可能有点奇怪,但是提问者要找的东西叫做MOVBE。它确实将数据原样(!)(与他的论点相关)复制到寄存器中。它并非在所有架构上都可用,但仍然是针对此特定问题的最佳解决方案。所以
的答案I was wondering: is there any operation which is performed directly on little endian values without being reversed first?
是:MOVBE
确实按要求的顺序复制字节。