Assembly 80x86上的原子位场操作?
80x86是否有用于原子测试和设置单词单个位的指令?如果您是指将位作为单个原子操作进行测试和修改,那么位测试指令(BT、BTS、BTR和BTC)都可以通过使用锁前缀使其原子化 如果您的意思是以原子方式测试位,然后以原子方式将位设置为单独的操作,则可以使用标准原子读取来测试位,并且可以使用LOCK或、LOCK和、LOCK XOR指令来修改位Assembly 80x86上的原子位场操作?,assembly,atomic,bit,operation,x86,Assembly,Atomic,Bit,Operation,X86,80x86是否有用于原子测试和设置单词单个位的指令?如果您是指将位作为单个原子操作进行测试和修改,那么位测试指令(BT、BTS、BTR和BTC)都可以通过使用锁前缀使其原子化 如果您的意思是以原子方式测试位,然后以原子方式将位设置为单独的操作,则可以使用标准原子读取来测试位,并且可以使用LOCK或、LOCK和、LOCK XOR指令来修改位 如果您需要更复杂的操作,例如测试一个位,然后设置另一个位,则必须在重试循环中使用标准的比较和交换CMPXCHG指令。如果您的意思是将一个位作为单个原子操作进行
如果您需要更复杂的操作,例如测试一个位,然后设置另一个位,则必须在重试循环中使用标准的比较和交换CMPXCHG指令。如果您的意思是将一个位作为单个原子操作进行测试和修改,则必须使用位测试指令(BT、BTS、BTR和BTC)通过使用锁前缀,可以使所有这些都成为原子 如果您的意思是以原子方式测试位,然后以原子方式将位设置为单独的操作,则可以使用标准原子读取来测试位,并且可以使用LOCK或、LOCK和、LOCK XOR指令来修改位 如果需要更复杂的操作,例如测试一个位,然后设置另一个位,则必须在重试循环中使用标准的比较和交换CMPXCHG指令