更改8位整数的最后一位

Bla*_*wat 1 matlab bit-manipulation

我想反转8位整数的最右边的位,例如; 如果是的话00010111,我想将其转换为00010110.我该怎么做?

sam*_*gak 5

使用值为1的bitxor(更改最后一位):

newvalue = bitxor(value,1)
Run Code Online (Sandbox Code Playgroud)

您可以指定类型,例如:

newvalue = bitxor(value,1,'int8')
Run Code Online (Sandbox Code Playgroud)