寄存器写值

群人天 2014-01-08 04:16:21
我看到写进寄存器的操作是这样
表达式14 >> 2的值为3,因为14(即二进制的00001110)向右移2位等于3(即二进制的00000011)
表达式8 >> 2的值为2,因为8(即二进制的00001000)向右移2位等于2(即二进制的00000010)
表达式14 << 2的值为56,因为14(即二进制的00001110)向左移2位等于56(即二进制的00111000)

现在我想问:14 << 7是多少??我的理解是,14(00001110)左移7位(00000000).但是实际的好像不是!!!!!
...全文
113 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
群人天 2014-01-08
  • 打赏
  • 举报
回复
谢谢楼上两位大师,原来还有这样的规定
熊熊大叔 2014-01-08
  • 打赏
  • 举报
回复
缺省是32位的, 左移7位不会越界的
pathletboy 2014-01-08
  • 打赏
  • 举报
回复
你要分是8位的还是16位的还是32位的,16位和32位的话1792没错,14*(2的7次方),8位的话,会丢弃高位,结果为0。
群人天 2014-01-08
  • 打赏
  • 举报
回复
这是我用百度搜索出来的答案,也不知道对不对,求大神们指教下,谢谢

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧