如何将数字0-8变成C 的0-8二进制位置

How can I turn the number 0-8 into the 0-8th binary position in C++?

本文关键字:二进制 位置 变成 数字      更新时间:2023-10-16

我试图使用整数1-8代表二进制位置D0-D7。
我对如何改变这一不知所措。我尝试采取最重要的一点,但这在这种情况下并不能用。
关于此主题的资源有什么想法或指示吗?它是为了在OLED屏幕上解决。

我试图想到C 中的一个巧妙的解决方案。我可以做一个开关桌,但是我认为必须有一种更酷的方法来进行一些操纵!

例如

int x = 7
y = convert(x)
if (y == 0b01000000)
print("Success!!")

谢谢您的所有帮助!

您要寻找的是位移动 - 将变量中的所有位移动到左或向右。C ,以及其他语言,使用<<操作员向左移动位。您可能会发现其他位运算符对您的应用程序有用。

使用此功能可以简单地用1 << (x-1)替换convert(x)。这将整数1至8(包含(更改为0th至7位位置(包括(。