看不懂的位操作0<<n 请大家指点.

[复制链接]
3105|2
 楼主| mjwxx 发表于 2007-1-16 16:35 | 显示全部楼层 |阅读模式
ADC, ck, dc, pc, se
/*进行ADC模块设置,其中X<<n表示第n位设置为X(若X超过一位,则向高位顺延)*/
ADCR=(1<<0)                 | //sel=1,选通道0
      ((fpckl/1000000-1)<<8)| //转换时钟为1M
      (0<<16)               |
      (0<<17)               |
      (1<<21)               |
      (0<<22)               |
      (1<<24)               |  //edgn=0,引脚下降沿触发转换
      (0<<27);               
怎么也不明白0<<n是怎么回事,假如是0移位N次不还是0么.用0去或能有什么效果么????????以上是<<基于嵌入式实时操作系统的程序设计技术>>一书上的例程.我是菜鸟大家不要笑话.请指教
computer00 发表于 2007-1-16 17:06 | 显示全部楼层

你的理解是正确的,实际上它还是0

这样写,只是为了使人看上去更像这位为0.以后修改的时候也更方便,直接把0改成1即可,而不用再添加其它语句。
 楼主| mjwxx 发表于 2007-1-17 08:43 | 显示全部楼层

谢谢COMPUTER00

现在我已经明白了,谢谢.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

92

主题

93

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部