重学Java 4 进制转换和位运算

news2025/4/24 22:45:10

天赋不好好使用的话,可是会被收回的哦

                                             ——24.1.13

一、进制转换

1.常用的进制

2.十进制和二进制之间的转换

1.十进制转二进制

辗转相除法——循环除以2,取余数,除到商为0为止,除完后,由下往上,得出换算后的数字

2.二进制转十进制

8 4 2 1规则

1 1 0 0

上下相乘再相加

3.二进制转化为八进制

三个为一组

110011 -> 二进制转为八进制,三位一组,不够三位,前面补0

110  011

1*2^2+1*2^1+0*2^0 = 6

0*2^2+1*2^1+1*2^0 = 3

将最终的6和3拼接在一起,成为63

4.二进制转化为十六进制

将二进制数四位为一组进行分组

10011011 -> 二进制转为十六进制,四位为一组,不够四位前面补0

1001 1011

1*2^3+0*2^2+0*2^1+1*2^0 = 9

1*2^3+0*2^2+1*2^1+1*2^0 = 11 = b

将最终的9和b拼接在一起,得到9b

二、位运算符

1.符号的介绍:

① &(与)-> 有假则假

② | (或) -> 有真则真

③ ~(非)-> 取反

④ ^(异或) -> 符号前后结果一样为false,不一样为true

        true ^ false = true

        false ^ true = true

        true ^ true = false

        false ^ false = false

2.  1代表true,0代表false

3. 我们要知道计算机在存储数据的时候都是存储数据的补码,计算也是用的数据的补码

但是我们最终看到的结果是原码换算得来

原码        补码        反码

4.正数的二进制最高位为0,负数的二进制最高位为1

5.如果是正数,正码、反码、补码都一致

        eg、5的原码        补码        反码都一致

                0000 0000 0000 0000 0000 0000 0000 0101        因为是正数,二进制最高位为0

        如果是负数,原码,反码,补码不一样

                反码是原码最高位不变,剩下的0和1互换

                补码是在反码的基础上+1

                根据补码算反码是在补码的基础上-1

        eg、-9

                原码:1000 0000 0000 0000 0000 0000 0000 1001

                反码:1111 1111  1111  1111  1111  1111  1111  0110

                补码:1111 1111  1111  1111  1111  1111  1111  0111

1.左移:<<

运算规则:左移几位就相当于乘以2的几次方

注意:当左移的位数n超过该数据类型的总位数时,相当于左移(n-总位数)位

例如:

2<<2        结果等于8        -2<<2        结果等于-8

快速算法:2*2^2                        -2*2^2

二进制算法

 

2.右移: >> 

运算规则:类似于除以2的n次,如果不能整除,则向下取整

9>>2        结果等于2(9除以2的2次方)

快速算法:9/2^2向下取整

例如:

9>>2        结果等于2          -9>>2        结果等于-3

9/2^2 = 2     向下取整        -9/2^2=-3     向下取整 

 3.无符号右移: >>>

运算规则:往右移动后,左边空出来的位置直接补0,不管最高位是0还是1,空出来的都拿0补

正数:和右移一样

9 >>> 2        结果等于2

负数:右边移出去几位,左边补几个0,结果变为正数

-9 >>> 2        结果为1073741821

笔试题:

8 >>> 32位 -> 相当于没有移动还是8

8 >>> 34位 -> 相当于向右移动两位

4.按位与:&

小技巧:将0看为false,将1看为true

运算规则:对应位都是1才为1,相当于符号左右两边都为true,结果才为true

1 & 1        结果为1

1 & 0        结果为0

0 & 1        结果为0

0 & 0        结果为0

eg、

        5 & 3 -> 1

5.按位或: |

运算规则:对应位只要有1即为1,相当于符号前后只要有一个为true,结果就是true

1 | 1        结果1

1 | 0        结果1

0 | 1        结果1

0 | 0        结果0

eg、

        5 | 3        结果为7

6.按位异或:^

运算规则:对应位一样的为0,不一样的为1

1 ^ 1        结果为0,false

1 ^ 0        结果为1,true

0 ^ 1        结果为1,true

0 ^ 0        结果为0,false

eg、

        5 ^ 3        结果为6

7.按位取反: ~

运算规则:~0就是1  ~1就是0

eg、

        ~10        结果为-11

三、运算符的优先级

1.表达式不要太复杂

2.先算的使用(),记住,如果想让哪个表达式先运行,就加入小括号就可以了

3.运算符优先级如下图,优先级从低到高排列

四、总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1382265.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式-- 3.适配器模式

适配器模式 将一个类的接口转换成客户希望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 角色和职责 请求者&#xff08;client&#xff09;&#xff1a;客户端角色,需要使用适配器的对象&#xff0c;不需要关心适配器内部的实现&#xff0c;…

爬虫—中信证券资管产品抓取

爬虫—中信证券资管产品抓取 中信证券资管产品板块网址&#xff1a;http://www.cs.ecitic.com/newsite/cpzx/jrcpxxgs/zgcp/ 页面截图如下&#xff1a; 目标&#xff1a;抓取上图中红框内的所有资产信息 按F12进入开发者工具模式&#xff0c;在Elements板块下&#xff0c;在…

学习redis有效期和数据类型

1、安装redis和连接redis 参考&#xff1a;ubuntu安装单个redis服务_ubuntu redis单机版安装-CSDN博客 连接redis&#xff1a;redis-cli.exe -h localhost -p 6379 -a 123456 2、Redis数据类型 以下操作我们在图形化界面演示。 2.1、五种常用数据类型介绍 Redis存储的是key…

大创项目推荐 深度学习疲劳检测 驾驶行为检测 - python opencv cnn

文章目录 0 前言1 课题背景2 相关技术2.1 Dlib人脸识别库2.2 疲劳检测算法2.3 YOLOV5算法 3 效果展示3.1 眨眼3.2 打哈欠3.3 使用手机检测3.4 抽烟检测3.5 喝水检测 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; **基于深度学习加…

Sonar Qube基本使用

中文化 Sonar Qube的使用方式很多&#xff0c;Maven可以整合&#xff0c;也可以采用sonar-scanner的方式&#xff0c;再查看Sonar Qube的检测效果 Sonar-scanner实现代码检测 下载Sonar-scanner&#xff1a;https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/…

线性代数——(期末突击)概率统计习题(概率的性质、全概率公式)

目录 概率的性质 题一 全概率公式 题二 题三 概率的性质 有限可加性&#xff1a; 若有限个事件互不相容&#xff0c;则 单调性&#xff1a; 互补性&#xff1a; 加法公式&#xff1a; 可分性&#xff1a; 题一 在某城市中共发行三种报纸&#xff1a;甲、乙、丙。在这个…

[Vue]从数据库中动态加载阿里巴巴矢量图标的两种方式

记录一次在Vue中动态使用阿里巴巴矢量图标库 这是本人第一次使用阿里巴巴的矢量图标库&#xff0c;简单的导入和使用的话网上的教程很多&#xff0c;这里不多赘述&#xff0c;本人的需求是从数据库中加载出来并且显示到页面上&#xff0c;接下来简述一下如何实现。 以下代码均是…

解锁思维潜能,畅享XMind 2024 Mac/win中文版思维导图软件

XMind 2024是一款功能强大的思维导图软件&#xff0c;旨在帮助用户提高工作效率和组织思维。它的核心特点包括多平台同步、强大的协作功能和丰富的导图模板。 首先&#xff0c;XMind 2024支持多平台的无缝同步&#xff0c;用户可以在电脑、手机和平板上随时随地访问和编辑自己…

gpu显卡简介

一、目录 1.基本常用参数 2. nvidia 显卡基本了解(基本简介) 3. 显卡查看算力 4. 显卡算力、驱动版本&#xff08;Driver Version&#xff09;、CUDA Toolkit&#xff08;CUDA Version&#xff09;、PyTorch版本之间的关系 5. 显卡安装流程 6. NVIDIA显卡简介 二、实现 基本常…

Android14实战:打破音频默认重采样的限制(五十二)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型

在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型 0. 背景1. 安装依赖2. 开发 main.py3. 运行 main.py 0. 背景 看了一些文章之后&#xff0c;今天尝试在 Windows 11 上通过 Autoawq 启动 Mixtral 8*7B 大语言模型。 1. 安装依赖 pip install torch torchvision …

nmealib库编译提示 undefined reference to `ceil‘

一、问题描述 下载了nmealib库文件&#xff0c;默认工程进行编译&#xff0c;报错&#xff0c;提示如下&#xff1a; gcc -I include -c src/generate.c -o build/nmea_gcc/generate.o gcc -I include -c src/generator.c -o build/nmea_gcc/generator.o ar rsc lib/libnm…

2024年AMC8模拟考试实测流程、注意事项和常见问题

和往年的AMC8比赛一样&#xff0c;在正式比赛的前一周左右会开放两天的模拟考试时间&#xff0c;AMC8的主办方建议所有的参赛选手重视且参加模拟考试&#xff0c;以测试设备、熟悉流程&#xff0c;避免将来正式考试不小心违规&#xff0c;或者设备不给力。 2024年的AMC8模拟考…

ChatGPT能帮助我们人类做什么

一、ChatGPT可以在多个方面帮助人类&#xff1a; 回答问题&#xff1a; ChatGPT可以回答各种问题&#xff0c;提供信息和解释概念。 创造性写作&#xff1a; 它可以生成文章、故事、诗歌等创意性文本。 学术辅助&#xff1a; ChatGPT可以辅助学术研究&#xff0c;提供解释、背…

远程开发之vacode插件Remote - SSH

远程开发之vacode插件Remote - SSH vscode插件(Remote - SSH)ssh config自定义配置跳板机ssh-agent配置(使ForwardAgent配置生效, 免密拉代码)拷贝公钥到服务器(实现免密登录服务器) 通过vscode的Remote - SSH插件, 实现远程服务器进行像本地操作一样使用远程服务器, 亦可进行像…

前端重置密码报错记录

昨天晚上&#xff0c;我写了重置密码的前端&#xff0c;测试的时候报错 今天上午&#xff0c;我继续试图解决这个问题&#xff0c;我仔细检查了一遍&#xff0c;前端没有问题 可以正常接收输入的数据并且提交 但是后端接收到的数据为空&#xff0c;后端接口也没有问题 但后端收…

sklearn岭回归

文章目录 基本原理sklearn实现 基本原理 最小二乘法的判定条件是 min ⁡ w ∥ X w − y ∥ 2 2 \min_w\Vert Xw-y\Vert_2^2 wmin​∥Xw−y∥22​ 其中&#xff0c; min ⁡ w F ( w ) \min_w F(w) minw​F(w)表示 F ( w ) F(w) F(w)最小时的 w w w&#xff1b; w w w是拟合参数…

阿里云高性能云服务器_云主机_云服务器详解

阿里云高性能云服务器60%单实例最大性能提升&#xff0c;35Gbps内网带宽&#xff0c;网络增强&通用型云服务器、本地SSD型云服务器、大数据型云服务器、GPU异构型云服务器&#xff0c;阿里云百科aliyunbaike.com分享阿里云高性能云服务器&#xff1a; 阿里云高性能云服务器…

【计算机组成原理】高速缓冲存储器 Cache 的常用替换算法(Replacement Algorithm)

替换算法 Replacement Algorithm 缓存替换算法用于确定在缓存满时需要替换哪些缓存块以便为新的数据腾出空间。 先进先出 First-In-First-Out FIFO算法将最早进入缓存的块替换出去。这种算法实现较为简单&#xff0c;但可能导致早被访问的数据被频繁替换&#xff0c;而近期使…

电子学会C/C++编程等级考试2021年09月(四级)真题解析

C/C++编程(1~8级)全部真题・点这里 第1题:最佳路径 如下所示的由正整数数字构成的三角形: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,和最大的路径称为最佳路径。你的任务就是求出最佳路径…