C语言例3-32:使用位移位运算符的例子

复制代码
unsigned short a = 0101 ;
         short b = -6 ;
  • a 为无符号八进制整数,对应的二进制数为0000 0000 0100 0001
  • b 为有符号十进制整数,对应的二进制数为1111 1111 1111 1010
!!! 计算机系统中整型数 一律采用补码表示(存储)。

+6的原码 0000 0110

-6的原码 1000 1110

-6的补码 1111 1010

1. 表达式 a << 3

运算结果01010

|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | | 0 | 0 | 1 | 0 | | 0 | 0 | 0 | 0 | | 1 | 0 | 0 | 0 |

2. 表达式 a >> 2

运算结果是020

|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | | 0 | 0 | 0 | 0 | | 0 | 0 | 0 | 1 | | 0 | 0 | 0 | 0 |

3. 表达式 b << 3

运算结果是 -48

|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 1 | 1 | 1 | | 1 | 1 | 1 | 1 | | 1 | 1 | 0 | 1 | | 0 | 0 | 0 | 0 |

相关推荐
岁忧30 分钟前
(LeetCode 面试经典 150 题 ) 11. 盛最多水的容器 (贪心+双指针)
java·c++·算法·leetcode·面试·go
chao_78933 分钟前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
秋说2 小时前
【PTA数据结构 | C语言版】一元多项式求导
c语言·数据结构·算法
Maybyy3 小时前
力扣61.旋转链表
算法·leetcode·链表
谭林杰4 小时前
B树和B+树
数据结构·b树
暮鹤筠4 小时前
[C语言初阶]操作符
c语言·开发语言
卡卡卡卡罗特5 小时前
每日mysql
数据结构·算法
chao_7895 小时前
二分查找篇——搜索旋转排序数组【LeetCode】一次二分查找
数据结构·python·算法·leetcode·二分查找
lifallen6 小时前
Paimon 原子提交实现
java·大数据·数据结构·数据库·后端·算法
lixzest6 小时前
C++ Lambda 表达式详解
服务器·开发语言·c++·算法