笔记 - Java 进制和位运算

简介: 二进制:只有0和1组成的一组数成为二进制数,计算机中的数据都是以二进制形式进行存储的。     通常一个二进制数最高位是1,那么对应的十进制数为负数,如果最高位是0,那么对应的数是正数      八进制:一个二进制数表示成八进制数,将该二进制数从右到左每三位一组,每一组算出对应的十进制数,     每组对应的十进制数连起来就是八进制表现形式。八进制表现形式最高是7      十
二进制:只有0和1组成的一组数成为二进制数,计算机中的数据都是以二进制形式进行存储的。
    通常一个二进制数最高位是1,那么对应的十进制数为负数,如果最高位是0,那么对应的数是正数
    
八进制:一个二进制数表示成八进制数,将该二进制数从右到左每三位一组,每一组算出对应的十进制数,
    每组对应的十进制数连起来就是八进制表现形式。八进制表现形式最高是7
    
十进制:常用的数都是十进制数。

十六进制:0-9,a-f或A-F的表现形式,a-f表示的是10-15
    一个数表现为十六进制,将该数的二进制表现形式从右到左每四位分一组,每一组计算出对应的十进制数,
    如果该组计算出的十进制数大于9,则要用对应的字母表示,然后将每组算出的结果连起来便是该数的十六进制表现形式。

十进制转换成二进制:将一个数连续除以2得到的余数连起来就是该十进制数的二进制表现形式。

二进制转换成十进制:从右到左每位数乘以2的n次幂,第一位乘以2的0次幂,第二位乘以2的1次幂,,,
    以此类推,最后将所有的结果相加得到的结果就是该二进制数对应的十进制数。


& :与运算、有假则假,可参与位运算
    true & true = true;
    true & false = false;
    false & true = false;
    false & false = false;
    
| :或运算、有真则真,可参与位运算
    true | true = true;
    true | false = true;
    false | true = true;
    false | false = false;

^ :异或运算、两边相同结果为假,两边不同结果为真,可参与位运算
    true ^ true = false;
    true ^ false = true;
    false ^ true = true;
    false ^ false = false;
    
&&:与、&&和&的区别:
    &&:两个表达式中,当左边的表达式结果为false时,右边的表达式不会执行
    & :两个表达式都会执行

||:或、|和||的区别
    ||:两个表达式中,当左边的表达式结果为true时,左边的表达式不会执行
    | :两个表达式都会执行

! :非、取反

~ :反码、将一个十进制数的二进制表现形式进行取反,1变0,0变1

位运算:
    位移运算是最快的运算方式,其运算方式是将该数的2进制表现形式进行位移。
    
    左移:<< 左移位数越大,结果越大,
        左移的运算:一个数左移多少位,就是该数乘以2的该位数次幂
    
    右移:>> 右移位数越大,结果越小
        右移的运算:一个数右移多少位就是该数除以2的该位数次幂
        
    无符号右移: >>>
        将一个2进制数右移后,其最高位缺失,需要补位,右移运算时缺失的位取决于原2进制数的最高位
        若原2进制数的最高位是0,则用0来补齐缺失的位,若原2进制数的最高位是1,则用1来进行补齐
        而无符号右移则无视原2进制数的最高位是0还是1,都用0来补齐
      

如何计算出一个负数的二进制表现的十进制值?
    将该负数的二进制减去一再取反得出一个正数的二进制表现形式,该正数的十进制相反数就是该负数的二进制表示的十进制值
    

目录
相关文章
|
4天前
|
前端开发 JavaScript Java
Java构建工具-maven的复习笔记【适用于复习】
这篇文档由「潜意识Java」创作,主要介绍Maven的相关知识。内容涵盖Maven的基本概念、作用、项目导入步骤、依赖管理(包括依赖配置、代码示例、总结)、依赖传递、依赖范围以及依赖的生命周期等七个方面。作者擅长前端开发,秉持“得之坦然,失之淡然”的座右铭。期待您的点赞、关注和收藏,这将是作者持续创作的动力! [个人主页](https://blog.csdn.net/weixin_73355603?spm=1000.2115.3001.5343)
15 3
|
5天前
|
存储 Java
Java基础(二):原码、反码、补码及进制之间的运算
Java基础(二):原码、反码、补码及进制之间的运算
Java基础(二):原码、反码、补码及进制之间的运算
|
4天前
|
存储 Java 开发者
【潜意识Java】深入详细理解分析Java中的toString()方法重写完整笔记总结,超级详细。
本文详细介绍了 Java 中 `toString()` 方法的重写技巧及其重要
30 10
【潜意识Java】深入详细理解分析Java中的toString()方法重写完整笔记总结,超级详细。
|
23天前
|
存储 Java
Java中的位运算
本文介绍了位运算符的基础知识,包括原码、反码、补码的概念,以及常见的位运算符(如移位运算符 `&lt;&lt;`、`&gt;&gt;`、`&gt;&gt;&gt;` 和逻辑运算符 `&`、`|`、`^`、`~`)的使用方法和规则。通过具体的二进制示例,详细解释了这些运算符的工作原理,帮助读者更好地理解位运算在计算机中的应用。
Java中的位运算
|
1月前
|
安全 Java 编译器
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
|
1月前
|
Java 开发工具 Android开发
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
|
2月前
|
Java 编译器 Android开发
Kotlin教程笔记(28) -Kotlin 与 Java 混编
Kotlin教程笔记(28) -Kotlin 与 Java 混编
43 2
|
1月前
|
Java 数据库连接 编译器
Kotlin教程笔记(29) -Kotlin 兼容 Java 遇到的最大的“坑”
Kotlin教程笔记(29) -Kotlin 兼容 Java 遇到的最大的“坑”
71 0
|
2月前
|
Java 开发工具 Android开发
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)

热门文章

最新文章