#define SW_RST (1<<5) #define S 一些头文件的定义 如何理解
答案:4 悬赏:40
解决时间 2021-01-11 07:41
- 提问者网友:寂寞梧桐
- 2021-01-11 02:57
#define SW_RST (1<<5) #define S 一些头文件的定义 如何理解
最佳答案
- 二级知识专家网友:掌灯师
- 2021-01-11 04:05
三星 SC2450 CPU 编程用的。
这些是宏定义。表示预编译时对程序里出现的 宏变量 作字符串 替代。例如
#defineRX_CH_OFF (0<<1)[RX 通道 开路,右起第1位 设0,(最右位是0位)]
#defineRX_CH_ON (1<<1)[RX 通道 合上,右起第1位 设1,(最右位是0位)]
预编译时,程序里出现的 所有 RX_CH_OFF用(0<<1)替代。
(0<<1)表示 0x00000000左移1位,其实 还是 0。
但这样写法,阅读上有个好处,例如在出现 按位 运算时 就知道 某位上是0还是1。
(0<<1) | (0<<2) -- 右起 第1位和第2位都是0 (从 0 位起算)。
这些是宏定义。表示预编译时对程序里出现的 宏变量 作字符串 替代。例如
#defineRX_CH_OFF (0<<1)[RX 通道 开路,右起第1位 设0,(最右位是0位)]
#defineRX_CH_ON (1<<1)[RX 通道 合上,右起第1位 设1,(最右位是0位)]
预编译时,程序里出现的 所有 RX_CH_OFF用(0<<1)替代。
(0<<1)表示 0x00000000左移1位,其实 还是 0。
但这样写法,阅读上有个好处,例如在出现 按位 运算时 就知道 某位上是0还是1。
(0<<1) | (0<<2) -- 右起 第1位和第2位都是0 (从 0 位起算)。
全部回答
- 1楼网友:北城痞子
- 2021-01-11 07:19
移位
- 2楼网友:动情书生
- 2021-01-11 06:34
移位,例如(0<<1)一般指int型,为00000000每位向左移,空出的补0,所以为00000000。 (0<<2)为00000000。
- 3楼网友:孤独入客枕
- 2021-01-11 05:01
是移位,表示一些状态用的。
如果多个状态合并可以 用 | 这个是基本的技巧。
如果多个状态合并可以 用 | 这个是基本的技巧。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |