c语言移位运算符怎么用,按位移位运算符
按位移位运算符
10/18/2018
本文内容
移位运算符按第二个操作数指定的位置数量向左 (<>) 移动第一个操作数 。
语法
shift-expression:
additive-expression
shift-expression << additive-expression
shift-expression >> additive-expression
两个操作数都必须是整数值。 这些运算符执行常用算术转换;结果的类型是转换后左操作数的类型。
对于左移,留空的右位将设置为 0。 对于右移,将根据转换后第一个操作数的类型填充留空的左位。 如果类型是 unsigned,则将留空的左位设置为 0。 否则,将使用符号位的副本填充它们。 对于没有溢出的左移运算符,语句
expr1 << expr2
等效于乘以 2expr2。 对于右移运算符,
expr1 >> expr2
等效于除以 2expr2(如果 expr1 为无符号或具有非负值)。
如果第二个操作数为负,或者右操作数大于或等于提升后的左操作数的宽度(以位为单位),则移位运算的结果不确定的。
由于没有为溢出或下溢情况提供移位运算符执行的转换,因此当移位运算的结果不能用转换后第一个操作数的类型表示时,信息可能丢失。
unsigned int x, y, z;
x = 0x00AA;
y = 0x5500;
z = ( x << 8 ) + ( y >> 8 );
在此示例中,x 将向左移位 8 个位置,y 将向右移位 8 个位置。 移位值(假定 0xAA55)将相加并赋给 z。
将负值向右移位可生成原始值一半的值(向下舍入)。 例如,-253(二进制 11111111 00000011)向右移动 1 位会生成 -127(二进制 11111111 10000001)。 将 + 253 向右移位生成 +126。
右移保留符号位。 当带符号的整数向右移位时,最高有效位将保留。 当无符号的整数右移位时,将清除最高有效位。
请参阅
c语言移位运算符怎么用,按位移位运算符相关推荐
- 【C语言】利用队列的思维理解移位运算符和移位函数
在c语言中,尤其是单片机的C51中,移位运算操作很常见.实现移位操作的方法有两种:一是利用移位运算符,二是利用移位函数. 目录 一.移位运算符 1.左移 2.右移 二.循环移位函数 三.移位运算符和循 ...
- swift:高级运算符(位运算符、溢出运算符、优先级和结合性、运算符重载函数)...
swift:高级运算符 http://www.cocoachina.com/ios/20140612/8794.html 除了基本操作符中所讲的运算符,Swift还有许多复杂的高级运算符,包括了C语和 ...
- C语言学习及应用笔记之一:C运算符优先级及使用问题
C语言中的运算符绝对是C语言学习和使用的一个难点,因为在2011版的标准中,C语言的运算符的数量超过40个,甚至比关键字的数量还要多.这些运算符有单目运算符.双目运算符以及三目运算符,又涉及到左结合和 ...
- c语言 正号运算符 作用,C语言中,哪些运算符具有左结合性,哪些具有右结合性,帮忙总结下,...
1级(左结合) () 圆括号:[]下标运算符:->指向结构体成员运算符:. 结构体成员运算符. 2级(右结合) !逻辑非运算符:~按位取反运算符:++前缀增量运算符:--前缀减量运算符:+正号运 ...
- Python_Task01:变量、运算符、数据类型及位运算
变量.运算符.数据类型及位运算 学习教程 变量.运算符.数据类型 1. 注释 2. 运算符 3. 变量和赋值 4. 数据类型与转换 5. print() 函数 思考题 练习题 位运算 1.原码.反码和 ...
- c语言表达式5 gt 3 gt 1,perl运算符使用介绍与简单应用
perl 5基础教程--运算符 一.算术运算符 :+(加).-(减).*(乘)./(除).**(乘幂).%(取余).-(单目负) (1)乘幂的基数不能为负,如 (-5) ** 2.5 # error: ...
- c语言的按位或,与,非运算符
位运算符 C提供了六种位运算运算符:这些运算符可能只允许整型操作数,即char.short.int和long,无论signed或者unsigned. & 按位AND | 按位OR ^ 按位异或 ...
- python 整数逆位运算_python训练营:注释、运算符、数据类型与位运算
天学习的内容整理成脑图如下,其中带☆的是需要重点掌握的模糊知识点,需要加强训练和记忆. 二.具体学习内容 2.1 注释 2.1.1 多行注释 2.1.2 长字符串注释 2.2 运算符 2.2.1 算术 ...
- C语言(第二章):数据类型、运算符、表达式
.:.:第二章:数据类型.运算符.表达式:.:. 第二章: 数据类型.运算符.表达式 C语言的数据类型 在第一课中,我们已经看到程序中使用的各种变量都应预先加以说明,即先说明,后使用.对变量的说明可以 ...
最新文章
- 接口经常超时?线程池+ FutureTask来解决!
- JSP 第一天:提交表单--获取表单中的数据值
- java图片不动了_JDK 12又来了,我学不动了...
- 03.shard_allocation_和_cluster的routing设置
- [C/C++]C++标准
- sqlite3 学习
- 关于onSaveInstanceState的javadoc的渣渣翻译
- BeautifulSoup_python3
- 在Jenkins平台上运行Jmeter
- WinDbg蓝屏分析入门
- 在Vue中使用Aliplayer,做视频播放或者视频监控
- python 完全背包问题_经典动态规划:完全背包问题
- veeam备份oracle数据库,Veeam Explorer for Oracle v10:即时发布数据库!
- 收到谷歌实习邀请 “比被清华录取还激动”
- 7z文件格式及其源码的分析(三)
- 洛谷 P1049 装箱问题
- BlackHat DEFCON现场秀:阿里安全专家演示“视频水印叠加”和“一分钟越狱iOS 11.4”...
- 伴随着5G,这些机器人也来了!
- 自签名多级证书亲测可用
- 几个非常好用的CMD命令