C语言中移位问题

b=-25b>>3是多少呢有没有具体说明的~~谢谢大家~~... b=-25
b>>3 是多少呢 有没有具体说明的 ~~谢谢大家~~
展开
 我来答
一剑出血
高粉答主

2012-01-19 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5.7万
采纳率:78%
帮助的人:1.7亿
展开全部
如果b声明为整型,则b = -25 = 11111111 11111111 11111111 11100110
对于整型是带符号位右移的,因此右移3位后为11111111 11111111 11111111 11111100,也就是-4。
更多追问追答
追问
额 11111111 11111111 11111111 11111100 这个是-4 是不是因为 取反加1? 求补码呢 而
10000000 00000000 00000000 00000011 +1的话是
10000000 00000000 00000000 00000100 么 进位规则是 2进一吗
追答
二进制,当然逢二进一。
anan640925
2012-01-19 · TA获得超过5421个赞
知道大有可为答主
回答量:4868
采纳率:51%
帮助的人:1105万
展开全部
假如b是单字节的话,二进制就是11100111
右移三位,也就是00011100
追问
何为单字节 额 是个4字节的吧 int b=-25  b>>3 答案是-4 我完全看不懂怎么出来的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
radio680
2012-01-19 · TA获得超过133个赞
知道答主
回答量:162
采纳率:0%
帮助的人:107万
展开全部
t,r都是结构变量,C语言规定只能引用结构体成员而不能直接用结构体变量赋值,所以不能这样. t=t>>1; //要把t整体移动一位怎么移,移了过后又是什么此
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式