【C语言】移位操作符

目录

一、基础知识补充

二、移位操作符(仅针对整形)

左移操作符:左边丢弃,右边补齐 

右移操作符


一、基础知识补充

整数的二进制的三种形式:原码、反码、补码

规则如下:

1.正整数的原码、反码、补码相同

2.负整数的原码、反码、补码需要进行计算

7

00000000000000000000000000000111 ——原码

00000000000000000000000000000111 ——反码

00000000000000000000000000000111 ——补码

-7

10000000000000000000000000000111 ——原码  (1表示为负数)

111111111111111111111111111111111000 ——反码  (原码的符号位不变,其他位按位取反)

111111111111111111111111111111111001 ——补码    (反码+1就是补码)

整数在内存中存放的是补码,打印的是原码。所以是对补码进行处理

二、移位操作符(仅针对整形

左移操作符:左边丢弃,右边补齐

(1)正数

 (2)负数

 结果a=-2,b=-4

 右移操作符

(1)算数移位:右边丢弃,左边补原符号位(正数补0,负数补1)

(2)逻辑移位:左边丢弃,右边补0

具体情况 看编译器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值