>> a = 255
a =
255
>> bitset(a,1,0)
ans =
254
这里第一位设置为 0,因此我们得到 11111110 相当于 254
>> bitset(a,[1,2],0)
ans =
254 253
此处第 1 位和第 2 位分别设置为 0。因此我们得到 11111110 相当于 254 11111101相当于253
如何得到 11111100 等于 252?
最佳答案
申请bitset
两次:
bitset(bitset(a, 1, 0), 2, 0)
应用程序的顺序并不重要。
或者,您可以使用 bitset
相当于应用正确的 bitand
序列。 , bitor
和 bitcmp
操作。
既然您有兴趣关闭多个位,您可以这样做
bitand(bitset(a, 1, 0), bitset(a, 2, 0))
关于matlab - 如何使用MATLAB中的bitset函数同时修改多个位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51069987/