gpt4 book ai didi

multithreading - 在 x86 上,如果 [mem] 不是 32 位对齐, "lock inc [mem]"还能正常工作吗?

转载 作者:行者123 更新时间:2023-12-04 04:27:13 25 4
gpt4 key购买 nike

在 x86 上,如果 mem 是 32 位对齐的,那么 mov 操作保证是原子的。

如果 [mem] 不是 32 位对齐,可以 lock inc [mem]窗台工作正常吗?

工作正常:提供原子性而不是获得部分值(value)。

最佳答案

Intel Instruction Set Reference对于 x86 和 x64,没有提及 INC 指令的对齐要求。所有内容均引用 LOCK是:

This instruction can be used with a LOCK prefix to allow the instruction to be executed atomically.


LOCK前缀文档指出:

The integrity of the LOCK prefix is not affected by the alignment of the memory field. Memory locking is observed for arbitrarily misaligned fields.

关于multithreading - 在 x86 上,如果 [mem] 不是 32 位对齐, "lock inc [mem]"还能正常工作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11662624/

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