VB上位机如何获取一个字节的每个位是0还是1

 我来答
网海1书生
科技发烧友

2017-06-02 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12315 获赞数:26246

向TA提问 私信TA
展开全部
把这个字节值
与1进行And运算,如果结果为1,则第1位为1,否则就是0;
与2(即2进制数10)进行And运算,如果结果为2,则第2位为1,否则就是0;
与4(即2进制数100)进行And运算,如果结果为4,则第3位为1,否则就是0;
与8(即2进制数1000)进行And运算,如果结果为8,则第4位为1,否则就是0;
与16(即2进制数10000)进行And运算,如果结果为16,则第5位为1,否则就是0;
与32(即2进制数100000)进行And运算,如果结果为32,则第6位为1,否则就是0;
与64(即2进制数1000000)进行And运算,如果结果为64,则第7位为1,否则就是0;
与128(即2进制数10000000)进行And运算,如果结果为128,则第8位为1,否则就是0。
简言之就是把每一位都与1进行And运算,如果该位运算结果仍是1,那么该位就肯定是1,因为只有1和1进行And运算结果才是1,而0和1或者0和0运算结果都是0。
或者也可以把这个数与2进行除法运算,如果有余数(即1),则说明第1位为1,否则就是0,然后再继续把商与2进行除法运算,有余数则第2位为1,否则为0,依此类推,直到最后数值为1或0,无法继续除2为止。
说白了,其实就是把这个数转换为二进制数的形式,然后哪个位是1哪个位是0就一目了然了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式