ad7705 的程序,谁能解释一下这两句什么意思:din =(bit) (x & 0x80);、if (dout==1) x |= 0x01;

ad7705 的程序,谁能解释一下这两句什么意思:din =(bit) (x & 0x80);、if (dout==1) x |= 0x01;,第1张

din =(bit) (x &0x80)是将x &0x80的值转换为bit类型后赋给变量din,

if (dout==1) x |= 0x01表示如何dout==1那么x的值为x和0x01的逻辑或

x在内存中以二进制存储,占1字节即为0b00000000,b后边数字不确定,但只能为0或1,0x80是16进制,在内存中以二进制存储为0b10000000,x和0x80相与,使x的后7位清0;

x |= 0x01:等价于x=x|0x01;使x最后一位置1;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7752830.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-09
下一篇 2023-04-09

发表评论

登录后才能评论

评论列表(0条)

保存