C语言移位符>>与ASR算术右移等价

做个实验,看看C语言的右移到底是

(1)LSR逻辑右移,不复制符号位

(2)ASR算术右移,保留并复制符号位。

S32 a=0x81234567; /-2128394905

S32 result1=(a>>16);  //

S16 result2=(a>>16); 

S16 rrsult3=a/65536; //65536就是2的16次方

结果

result1 是0xffff8123

result2是0x8123

result3是0x8124

可见C语言右移就是算术右移,保留并复制符号位


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部