java中位运算和移位运算详解[通俗易懂]

java中位运算和移位运算详解[通俗易懂] 一、位运算(1)按位与&如果两个相应的二进制形式的对应的位数都为1,则结果为1,记为同1为1,否则为0。首先我们看一下对正数的运算  &nbs

大家好,又见面了,我是你们的朋友全栈君。

  一、位运算

(1)按 位 与 &

如果两个相应的二进制形式的对应的位数都为1,则结果为1,记为同1为1,否则为0。首先我们看一下对正数的运算

java中位运算和移位运算详解[通俗易懂]      java中位运算和移位运算详解[通俗易懂]

 

分别看一下正数和负数的具体运算步骤

         java中位运算和移位运算详解[通俗易懂]      java中位运算和移位运算详解[通俗易懂]   

正数直接取二进制运算,负数取反加一得补码再运算,得到的结果符号位为0,不需要做任何操                                                                                                                                    作直接给出结果,后面会讲到如果结果为负数的情况

 

(2)按位或 |

  有1为1,否则为0

java中位运算和移位运算详解[通俗易懂]        java中位运算和移位运算详解[通俗易懂]

 

分别看一下正数和负数的具体运算步骤

java中位运算和移位运算详解[通俗易懂]       java中位运算和移位运算详解[通俗易懂]

讲一下负数求反和补码的直接给结果,当运算结果符号位是1为负数,那就需要进行减1操作,再按位取反,这个时候得到的才是正确的结果

 

(3)异或 ^

相同为0,不同为1

 java中位运算和移位运算详解[通俗易懂]      java中位运算和移位运算详解[通俗易懂]

二、移位运算

(1)左 移 (<< )

 右边空出的位用0填补高位左移溢出则舍弃该高位。计算机中常用补码表示数据,注,用补码计算

 java中位运算和移位运算详解[通俗易懂]      java中位运算和移位运算详解[通俗易懂]

(2)右 移 (>> )

 左边空出的位用0或者1填补。正数用0填补,负数用1填补。注:不同的环境填补方式可能不同;低位右移溢出则舍弃该位。

 java中位运算和移位运算详解[通俗易懂]       

(3)无 符 号 右 移 (>>> )

 无符号右移:正数与右移规则一样,负数的无符号右移,就是相应的补码移位所得,在高位补0即可

 java中位运算和移位运算详解[通俗易懂]       

java中位运算和移位运算详解[通俗易懂]

 

 

         

原文地址:https://www.cnblogs.com/xiuyu/p/8428963.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154880.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java注解定义类型变量_JAVA自定义注解

    JAVA自定义注解注解概念注解是JavaSE5.0版本开始引入的概念,它是对java源代码的说明,是一种元数据(描述数据的数据)。注解和注释的不同注释注释是对代码的说明,给代码的读者看,便于帮读者梳理业务逻辑;在程序代码中经常看到的以@开头的大部分是注解;注解注解也是对代码的说明,需要配合工具(解析它的代码)使用,参与代码的编译,给应用程序看的;注解分类注解以@开头,我们会在应用程序中见到各…

    2022年4月13日
    62
  • 矩阵范数求导规则_矩阵逆的范数和矩阵范数的逆

    矩阵范数求导规则_矩阵逆的范数和矩阵范数的逆矩阵求导及其例题,供自己学习使用

    2022年9月13日
    1
  • xcode armv6 armv7 armv7s arm64

    目前ios的指令集有以下几种:armv6iPhoneiPhone2iPhone3G第一代和第二代iPodToucharmv7iPhone4iPhone4Sarmv7siPhone5iPhone5Carm64iPhone5S 机器对指令集的支持是向下兼容的,因此armv7的指令集是可

    2022年4月7日
    43
  • 对该信源编二进制香农码_编译原理实验一

    对该信源编二进制香农码_编译原理实验一一、实验目的和任务1.理解信源编码的意义;2.熟悉MATLAB程序设计;3.掌握香农编码的方法及计算机实现;4.对给定信源进行香农编码,并计算编码效率;二、实验原理介绍给定某个信源符号的概率分布,通过以下的步骤进行香农编码:1.信源符号按概率从大到小排列;12…….nppp≥≥≥2.确定满足下列不等式的整数码长iK为()()1iiilbpKl…

    2025年8月30日
    4
  • 可爱的穆里尼奥,可爱的切尔西!

    可爱的穆里尼奥,可爱的切尔西!

    2021年7月23日
    213
  • 机器学习之KNN(k近邻)算法详解

    机器学习之KNN(k近邻)算法详解1-1机器学习算法分类一、基本分类:①监督学习(Supervisedlearning)数据集中的每个样本有相应的“正确答案”,根据这些样本做出预测,分有两类:回归问题和分类问题。步骤1:数据集的创建和分类步骤2:训练步骤3:验证步骤4:使用(1)回归问题举例例如:预测房价,根据样本集拟合出一条连续曲线。(2)…

    2022年5月28日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号