• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

C语言这个<<符号不是左移的意思啊?

zzzqiu 2021-03-26 浏览量:645
IO0CLR=(1<<16);  //P1.16置为低电平
IO0CLR 是输出清零寄存器,写入1时,为底电平,写入0时无效。
后面的(1<<16)是在p1.16这个引脚写入1吗?为啥不是1左移16位了 ?这个<<符号不是左移的意思啊
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • <<就是左移运算符呀,(1<<16)是在p1.16这个引脚写入1的。

其他答案 数量:5
  • 1就是0b0000 0000 0000 0000 0001如果左移就溢出了,右移才是0b0001 0000 0000 0000 0000 也就是0x10000

  • 学习单片机,基本的C语言还是要看看的。

  • 这个符号是左移,但整个语句实现功能与寄存器具体功能有关。

  • 在C语言中就是左移啊,1这里就是最低位,就是0位,左移16就到15位上了
    • 发布于2021-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 在C语言中,这个是左移的功能的。但要注意变量类型,不要超过变量最大值了
    • 发布于2021-04-12
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

C语言这个<<符号不是左移的意思啊?