binary - 以 1 开头的 8 位数字的紧凑公式
问题描述
我是新手,有点迷茫,找不到解决方案。我需要在十六进制中找到一个公式,它表示所有以 1 开头的 8 位数字。我需要这个来检查它是否是我的激光的第一个字节。(起始字节用 1 标记)。
首先我刚刚写了: if.. == 0x80 但现在我意识到这只是 10000000。我如何找到一个公式而不写下所有以 1 开头的数字?
感谢任何提示!
解决方案
你可以bitwise AND operator
这样使用:
if(myByte & 0x80) {
// leftmost bit of myByte is set
}
推荐阅读
- c++ - CTAD 无法在部分专业化中使用 SFINAE 推断模板参数
- asp.net - 使用 web.config 设置特定文件夹的权限
- javascript - 如何使用 JavaScript 变量的值更新虚拟 html 元素的样式属性?
- python - 一旦目标匹配,如何停止生成器?
- javascript - React.js:处理事件和函数声明与函数表达式
- javascript - 尽管用户取消操作并且没有进行 ajax 调用,但进度条仍在加载
- gulp - Gulp Watch 仅用于在线时间处理?我的意思是手表更改我需要继续打开 ssh 窗口?
- spring-boot - 解析HTTP请求参数
- javascript - node.js/express 中的字符串限制
- javascript - 为什么 safari,ie 和 yandex 不加载空白页面而不是响应应用程序