c语言1<<3的结果是多少,具体怎么算的,谢谢
5个回答
展开全部
1的二进制是1,1<<3即二进制1向右移3位变成二进制数1000,即十进制8
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1向左移动3位意思 这回明白了吧 1000=十进制的8
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在不溢出的前提下:左移n,就是1 * 2^n
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c语言的二进制左移运算
左移一位后最右位补0,移几位补几个0;
左移时最高位在c里面丢弃了。
因为汇编里面只有两种移位:不带CY的循环移位 和带CY的循环移位。CY是进位标志位
不带CY的循环移位是假设左移的话,是把最左位放到最右位了。
带CY的把最左位放进CY,CY的原值放最右位。
C语言的左移运算可以理解为先将CY置0,然后执行带CY的循环移位操作。移位后CY的值是原来的最左位,CY里的0被移到最右位
答案是二进制1000 十进制8
望采纳
左移一位后最右位补0,移几位补几个0;
左移时最高位在c里面丢弃了。
因为汇编里面只有两种移位:不带CY的循环移位 和带CY的循环移位。CY是进位标志位
不带CY的循环移位是假设左移的话,是把最左位放到最右位了。
带CY的把最左位放进CY,CY的原值放最右位。
C语言的左移运算可以理解为先将CY置0,然后执行带CY的循环移位操作。移位后CY的值是原来的最左位,CY里的0被移到最右位
答案是二进制1000 十进制8
望采纳
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询