`
huangmiao
  • 浏览: 4631 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

位运算符解析 理解(详细说明)

    博客分类:
  • Java
阅读更多

^ 异或  两边的位不同时结果为1,否则为0

简诉:这个可以理解f(a!=b) 如果不同结果为1,否则为0
例子:比如 2 ^ 3 == 10^11  第二位都是1所以第二位的0,,第二位不同所以为1 。最终结果01=1

~ 非      0变1 1变0
简诉:取反。可连接if(!a) 1 变 0 0 变1
例子:比如~2 = 00000000000000000~30个0后面跟10  根据上诉换算出结果-3
 
 & 与   两边位都是1为1,其余是0
简诉:可直接理解为必须(and),在if判断&& 2边都相同才能为1
例子: 2&3 == 10&11 最终结果10 =2
 
 |  或   两边只要有一个为1时等于1,不是的话为0
简诉:可直接理解为或者。在if判断时候|| 只要满足一个就为1!不是为0
例子:2|3 == 10|11 最终结果11 =3
 
<< 左移 移位运算符(可简单理解 左移几位就成为几个2) 
简诉:理解为A乘以2的B次方 
2<<3  10 左移3位的 10000 最终等于16 
 
>> 右移 高位补符号 移位运算符
简诉:理解为A除以2的B次方
16>>3 10000右移三位的 10 最终等于2 
 
>>> 无符号右移,高位补0 移位运算符(负数)
-8 >> 3 1111,1111,1111,1000 (具体是因为16位。0000~0000~0000~1000l,反转得到1111,,1111,1111,0111,在补移位得到值)
              在右移三维得到0001,,1111,1111,1111打印得出最终结果536870911
分享到:
评论

相关推荐

    C/C++编程技巧之前后置递增运算符解析与应用

    内容概要:本文详细解释了 C/C++ 中的前置递增(++i)和后置递增(i++)运算符的行为特点和应用场景。通过对这两种运算符在不同条件下的使用进行对比和举例,帮助开发者理解和掌握两者的细微差别以及各自的优缺点。 ...

    C语言运算符优先级详细列表与说明.docx

    本文将详细介绍C语言中的运算符优先级,并通过具体的例子帮助读者更好地理解和掌握这一知识点。 #### 二、C语言运算符优先级概述 在C语言中,运算符按照其执行顺序被赋予不同的优先级。优先级决定了表达式中运算符...

    C语言运算符优先级.docx

    本篇文章将详细介绍C语言中的运算符优先级,并解释这些优先级如何影响表达式的解析。 #### 重要概念 - **优先级**:表示运算符在表达式中被处理的先后顺序。优先级高的运算符会先于优先级低的运算符进行计算。 - **...

    关于关系运算符如何用

    ### 关系运算符详解 #### 一、引言 ...通过以上内容的学习,我们不仅了解了关系运算符的基本用法,还掌握了如何正确地构建复杂的逻辑表达式以及理解短路运算的概念。这对于编写高效且易于维护的代码至关重要。

    C and C++运算符优先级等级口诀.docx

    以下是对C和C++运算符优先级的详细说明: 1. **括号运算符** (最高优先级,左结合) - `( )`圆括号用于分组计算,无论其内部的运算符优先级如何,都会先进行计算。 - `[ ]`下标运算符,如 `array[index]`,用于...

    解析C语言中自增运算符问题.pdf

    解析C语言中自增运算符问题是非常必要的,它涉及到C语言中的变量、表达式以及函数等基础知识。本文档将深入探讨C语言中自增运算符的各种问题。 首先,自增运算符有前缀和后缀两种形式。前缀自增运算符(++i)表示在...

    C语言运算符

    以上就是关于"C语言运算符"的详细设计内容,它涵盖了表达式求值问题的需求分析、设计要求、设计方案、设计内容、调试分析和使用说明等多个方面,充分展示了如何利用C语言的运算符和栈数据结构来实现一个简单的算术...

    C语言运算符及其优先级汇总表口诀

    根据给定文件的信息,...通过上述分析可以看出,在C语言中正确理解和掌握运算符的优先级对于编写高效、准确的代码至关重要。特别是在处理复杂的表达式时,了解每个运算符的作用范围及其与其他运算符的关系尤为重要。

    C++运算符的优先级以及结合性

    - **结合性**:左结合性意味着位运算符是从左向右解析的。 ##### 16. 逻辑运算符 (`&&`, `||`, `!`) 用于布尔逻辑操作。 - **举例**:`bool x = true && false;` - **结合性**:左结合性意味着逻辑运算符是从左向右...

    c++ 运算符优先级 运算符优先级 备赛

    本文将详细介绍C++中的运算符优先级,并通过具体示例来帮助读者更好地理解这些概念。 #### 第一级别:作用域解析符 - **运算符**: `::` - **描述**: 用于指定作用域内的特定成员。 - **例子**: `Class::age = 2;` ...

    C语言运算符的优先级和结合性一览表

    本文将详细解析C语言中各类运算符的优先级及结合性规则,并通过具体实例进行说明。 #### 一、运算符优先级 C语言中的运算符根据其执行的先后顺序被赋予了不同的优先级。优先级较高的运算符会先于优先级较低的...

    字符串表达式解析求值算法

    `说明.txt`文件可能是算法的详细文档,包含如何使用这个解析器、支持的语法特性、变量和函数的说明等。可能包括了如何定义和引用变量,如何调用内置的Java数学函数,如`Math.sqrt()`、`Math.pow()`等,以及如何处理...

    简单实用的表达式解析器

    `说明.txt` 文件可能提供了关于这个解析器如何工作、如何使用以及可能的扩展点的详细信息。可能包括了如何定义新的变量和函数,以及如何处理复杂的表达式结构。 总的来说,这个项目涉及到的知识点有: 1. **解析...

    java 公式解析源码

    `doc`目录可能包含了API文档,这些文档通过Javadoc等工具生成,可以帮助开发者理解如何使用这个公式解析库,包括类的使用、方法签名、参数和返回值的说明。 `lib`目录可能包含了项目所依赖的外部库。对于公式解析,...

    java解析cobol数据

    4. **位操作**:对于像COMP-3这样的二进制数据,可能需要使用Java的位运算符进行解析。例如,读取一个字节并将其转换为十进制数字,或者将两个半字节组合成一个完整的字节。 5. **数据校验**:在解析过程中,确保...

    C_C++运算符优先级列表.pdf

    ### C/C++ 运算符优先级列表解析 在编程语言C和C++中,运算符的优先级决定了表达式的计算顺序。理解这些运算符及其优先级对于编写正确的程序至关重要。下面将根据提供的资料详细解释C/C++中的运算符、它们的优先级...

    运算符的优先级和结合性 (2).docx

    以下是关于C语言运算符的一些详细说明: 1. **优先级**:运算符的优先级决定了哪些运算会先执行。优先级高的运算符会先进行计算。例如,`()`、`[]`、`.`和`-&gt;`具有最高的优先级,这意味着在表达式中,括号内的内容...

    JAVA 解析计算器

    - "JAVA实现的一个解析计算器,界面和CORE"说明该程序有用户交互部分。这通常会用到Java的Swing或JavaFX库来创建图形用户界面(GUI)。 - GUI元素可能包括数字按钮、运算符按钮、清除按钮、等于按钮以及显示输入和...

    C# 解析二进制文件程序

    以下是对这个" C# 解析二进制文件程序 "的详细说明。 首先,我们需要理解二进制文件的基本概念。二进制文件是计算机存储数据的一种方式,其中每个字节代表一个特定的值。与文本文件(如ASCII)不同,二进制文件不以...

    大数据必学Java基础(十九):运算符总结

    一、运算符汇总说明 Java运算符大致可以分为以下几类: 1. 算术运算符:包括加法(+), 减法(-), 乘法(*), 除法(/), 取余(%)以及自增(++)和自减(--). 2. 关系运算符:用于比较两个值的大小,如等于==(等于), 不等于!...

Global site tag (gtag.js) - Google Analytics