gpt4 book ai didi

c - 原子位测试和设置 (BTS) 的内在汇编

转载 作者:太空宇宙 更新时间:2023-11-04 08:42:37 29 4
gpt4 key购买 nike

struct node* address; //format <addr,flagBit1,flagBit2>

我想使用 BTS 自动设置 flagBit1少量。

编辑

我想盲目地设置这个位而不关心它之前是否设置过

我可以按照 Using bts assembly instruction with gcc compiler 中的建议使用汇编代码来完成此操作

但是有没有我可以使用的可移植跨不同架构的内在函数?

例如,gcc Atomic Builtins__sync_fetch_and_or .这和防弹少年团有相同的属性吗?

最佳答案

对于位的盲目设置,sync_fetch_and_orsync_or_and_fetch 似乎都同样好,结果被丢弃,编译器知道要优化它。在 x86 上,gcc 不会使用 bts,而是简单地执行 lock 或 ,这应该没问题。

关于c - 原子位测试和设置 (BTS) 的内在汇编,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22974382/

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