所以我有一个16位数.假设它的变量名是Bits.我想让Bits [2:0] = 001,100和000,而不改变其他任何东西.我不知道该怎么做,因为我能想到的是ORing我希望与1成为1的位,但我不知道如何清除其他位以使它们为0.如果有人有建议,我很感激.谢谢!
要清除某些位,请清除要&反转的位.然后你可以|在你想要的位.
在这种情况下,你要零出低三位(111二进制或7十进制),所以我们&用~7清除这些位.
Bits = (Bits & ~7) | 1; // set lower three bits of Bits to 001
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7036 次 |
| 最近记录: |