x64汇编中使用xorps指令时程序崩溃,请求排查故障原因
x64汇编SSE指令
xorps执行崩溃问题排查 我正在学习x64汇编中的SSE指令,尝试修改存储在xmm0中的浮点数符号。为此,我使用可执行文件rodata段中的掩码配合xorps指令实现,生成的汇编代码如下:
mov eax, ds:dword_403000 mov [rbp-4], eax movss xmm0, [rbp-4] xorps xmm0, ds:xmmword_403004 movss [rbp-4], xmm0
但程序执行到xorps指令时崩溃,IDA中显示的错误信息为:
404016: The instruction at 0x404016 referenced memory at 0xFFFFFFFFFFFFFFFF. The memory could not be read (exc.code c0000005, tid 10220)
我已确认掩码存在且大小正确,无法理解为何会出现内存地址为0xFFFFFFFFFFFFFFFF的情况,希望有人能指出问题所在。
补充说明:该程序由我自行开发的编译器直接生成Windows可执行文件,未使用第三方汇编器和链接器。
内容的提问来源于stack exchange,提问作者confused_opossum
相关产品推荐
相关产品推荐

