c语言移位运算符C语言按位左移运算规则

c语言移位运算符  时间:2021-06-20  阅读:()

关于C语言的左移(<<)和右移(>>)

左移比较简单,右边补0(移几位就补几个0),左边丢掉。

右移比较复杂,右移分两种: (1)逻辑右移,左边补0(移几位补几位),右边移出去的丢掉。

(2)算术右移,左边补最高位(即原来的最高位是0就补0,是1就补1,因为最高位代表符号,这样可以保证负数不会变成正数),右边丢掉。

c语言,移位运算符>>

右移对符号位的处理和左移不同,对于有符号整数来说,比如int类型,右移会保持符号位不变,例如:10100110 >>5(假设字长为8位),则得到的是 11111101。

总之,在C中,左移是逻辑/算术左移(两者完全相同),右移是算术右移,会保持符号位不变.实际应用中可以根据情况用左/右移做快速的乘/除运算,这样会比循环效率高很多. 所以,short a=0xf245,即a=1111001001000101,经过右移后,b=a>>8;b=1111111111110010,即b=0xfff2。

注意是有符号右移为算术右移!!!

C语言按位左移运算规则

C语言中按位左移的运算符为<<,其规则如下: 对于操作a<<n, 1 按照二进制值每位向高位(书写上是向左)移动n位; 2 最高位(最左边的)n位舍去; 3 最低位(最右边)填加n个0. 简单起见,用char型举例如下: 例一 0x12 << 3 => B00010010 << 3 => B10010 000(这里最高位的三个0被舍去,其它依次左移,最低位补三个0) => 0x90 即0x12 << 3 = 0x90 例二 0x9E << 2 => B10011110 << 2 => B01111000 (最高位10舍去,最低位补两个0)=> 0x78 可以编写如下程序验证: #include?<stdio.h> void?check(char?a,?int?n) { ????printf("0x%hhx?<<?%d?=?0x%hhx ",?a,?n,?a<<n); } int?main() { ????check(0x12,?3); ????check(0x9e,?2); ????return?0; }其运行结果为 0x12?<<?3?=?0x90 0x9e?<<?2?=?0x78可以看到与我们计算结果是相符的。

iON Cloud:新加坡cn2 gia vps/1核/2G内存/25G SSD/250G流量/10M带宽,$35/月

iON Cloud怎么样?iON Cloud升级了新加坡CN2 VPS的带宽和流量最低配的原先带宽5M现在升级为10M,流量也从原先的150G升级为250G。注意,流量也仅计算出站方向。iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠...

咖啡主机22元/月起,美国洛杉矶弹性轻量云主机仅13元/月起,高防云20G防御仅18元/月

咖啡主机怎么样?咖啡主机是一家国人主机销售商,成立于2016年8月,之前云服务器网已经多次分享过他家的云服务器产品了,商家主要销售香港、洛杉矶等地的VPS产品,Cera机房 三网直连去程 回程CUVIP优化 本产品并非原生地区本土IP,线路方面都有CN2直连国内,机器比较稳定。咖啡主机目前推出美国洛杉矶弹性轻量云主机仅13元/月起,高防云20G防御仅18元/月;香港弹性云服务器,香港HKBN CN...

Hostinger 限时外贸美国主机活动 低至月12元且赠送1个COM域名

Hostinger 商家我们可能一些新用户不是太熟悉,因为我们很多新人用户都可能较多的直接从云服务器、独立服务器起步的。而Hostinger商家已经有将近十年的历史的商家,曾经主做低价虚拟主机,也是比较有知名度的,那时候也有接触过,不过一直没有过多的使用。这不这么多年过去,Hostinger商家一直比较稳妥的在运营,最近看到这个商家在改版UI后且产品上也在活动策划比较多。目前Hostinger在进...

c语言移位运算符为你推荐
时间刻度Microsoft Project 时间刻度怎么更改ico监管BTCB是什么?怎么用电脑发短信谁知道怎样能用电脑给手机发短信shoujiao求【叫兽】的简介qq管家官网在qq电脑管家官网有个可以登录qq的。登录上了可以加速么?java程序员招聘Java程序员,一般招聘都要求些啥东兴证券网站东兴证券超强版下载,东兴证券超强版v6下载官方网站,东兴证券软件下载微盟价格微盟渠道代理政策是怎么样的?mpeg4格式什么是MPEG4视频格式listview的优化android中listview的数据的同步与异步加载有什么区别,效果有什么不同?
东莞虚拟主机 域名抢注 重庆vps租用 512m tightvnc 主机合租 商务主机 骨干网络 亚马逊香港官网 免费美国空间 重庆双线服务器托管 双线机房 备案空间 starry 什么是web服务器 西安主机 阿里云邮箱登陆地址 深圳域名 xuni 登陆qq空间 更多