c语言中移位运算符,c语言移位运算符与运算用法

  c语言中移位运算符,c语言移位运算符与运算用法

  以下所有运算符都是基于二进制的。

  移位运算符左移位运算符移位规则将整数的二进制补码向左移动。左边弃,右边填0;

  例如,使用:

  int a=5;

  int b=a 1;10的二进制补数是00000000000000000000000将10的二进制补码左移一位,右端没有零。0的左端被丢弃,因为它超过了32位。

  在第二行中,因为整个二进制序列左移一位,所以b的值变为10:

  难点和小知识点1。那么,为什么A的值没有变呢?看这个语句,很明显可以得到答案:shift运算符不是赋值运算符,它不能给变量赋值。变量本身的值在没有赋值的情况下是不变的。使用移位运算符类似于使用算术运算符。

  int x=y ^ 2;2.左移运算符具有乘以2的效果,例如代码:

  int a=5;

  int b=a 1;//也就是b=a * 2^1

  int x=12

  int y=x ^ 3;//即y=x * 2 3右移运算符移位规则右移运算有两种:

  逻辑移位的左边用0填充,丢弃算术移位的右边用原值的符号位填充,丢弃的右边用算术右移,比如:

  int num=-1 1;-1的补码是:

  向右逻辑移位,例如:

  int num=-1 1;-1的补码是:

  位运算符逐位和两个形补码,对应的二进制位都是1,那么1,如果对应的二进制位数不一样,那么bit 0。比如:

  根据2位的补码,对应的二进制位有一位是1,就是1。如果所有对应的二进制数都是0,就是0。比如:

  根据按位异或两个形补码,相同时对应的二进制位为0,不同时为1,如:

  总结一下按位异或的小规则:

  int a=5;

  1 . ^ a=0;

  2.0 ^ a=a;建议根据XOR的规则验证小规则,以熟悉XOR运算符。

  来自,

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: