有趣的位运算常识

【算法+数据结构】位运算常识 程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。了解位运算,不仅可以在一些情况下让程序运行效率更高,而且位运算也是学习算法必备的知识之一。 位运算都是基于二进制数进行的。 逻辑与 & 两个位置都为1才为1,否则为0. 比如 12的二进制位为 :1100, 14 的二进制位为 : 1110, 那么与运算的结果为 : 1100. 这里不太好记忆,容易与其他位运算混淆,可以想象成java中的逻辑与运算 1为true,0为false,只有都为true才 阅读详情

Java中,int为32位

0:00000000000000000000000000000000(正0)

那么负零是什么呢?

100000000000000000000000000000000:Integer.MIN_VALUE

 

由于Integer.MAX_VALUE是01111111111111111111111111111111,则

不难知道,Integer.MAX_VALUE+1就是Integer.MIN_VALUE,即Integer(int)是个“环”:

Integer.MIN_VALUE每次+1又会向正数方向走。故是一个环。

 

 

 

一个有趣的“现象”:

11111111111111111111111111111111:-1


推导:

1码:00000000000000000000000000000001

补码:11111111111111111111111111111110

反码:11111111111111111111111111111111

故-1的码为:11111111111111111111111111111111

这样符合-1 + 1 = 0,或者0 - 1 = -1的二进制运算规律。

 

 

 

 

00000000000000000000000000000000 《JavaScript权威指南第4版》中文版出版至今已有三年多的时间。这本《JaVaScript权威指南》连续印刷5次,销售数十万册,成为很多JavaScript学习者的必备宝典。由于其封面上是一只“爪哇犀牛”(封面上印上动物是原书出版公司O'Reilly一贯的风格),读者亲切地称其为“犀牛书”。 立即下载

相关推荐

2024年【MCM/ICM】美国大学生数学建模竞赛优秀论文(免费下载)

美国大学生数学建模竞赛(MCM/ICM)由美国数学及其应用联合会主办,是最高的国际性数学建模竞赛,也是世界范围内最具影响力的数学建模竞赛,一般也指数学建模竞赛。赛题内容涉及经济、管理、环境、资源、生态、医学、安全、等众多领域。竞赛要求三人(本科生和研究生均可参加)为一组,在四天时间内,就指定的问题完成从建立模型、求解、验证到论文撰写的全部工作,体现了参赛选手研究问题、解决方案的能力及团队合作精神。为现今各类数学建模竞赛之鼻祖。

weixin_43608857的博客 1839

~操作符 (整数的原码、反码、补码)(小白简单易懂+手写笔记)

计算机识别的是二进制,整数在内存中的存放也是二进制。 我们先来了解一下整数的二进制。 整数的二进制的表示方式有三种:原码、反码、补码。 原码:直接按数字的正负转换为二进制 反码:原码的符号位不变,其他位按位取反 补码:反码 + 1 PS: 符号位:是指对于有符号的整数,二进制里的最高位就是符号位。 规定:正整数的原码、反码、补码相同。 负整数的原码、反码、补码需要计算。 ...

AwwzJ_0821的博客 3215

BSD盲区检测系统性能要求及试验方法

盲区监测系统BSD通过安装在车辆后方的两颗毫米波雷达实时监测驾驶员视野盲区,当发现视野盲区内出现其它道路使用者时,通过左右后视镜上的警示灯向驾驶员发出报警。

未知艺术家的博客 2356

对指针的初级认识

10是整数,10写成二进制序列是:00000000000000000000000000001010太长,内存中展示不方便,内存中存的是二进制,但是在内存窗口看的是十六进制数字,4个二进制位能转化为1个二进制位,4个0(二进制)转化为一个0(十六进制),1010是10即是a,所以:10的十六进制是:00 00 00 0a,所以是转化为十六进制之后倒着放进去的。&a是地址,也是指针,把a的地址存到pa中,pa一定是个变量,因为存放的是指针,所以pa是指针变量,pa的类型是int *;

m0_60624580的博客 677

YOLO26 vs YOLOv12 vs YOLOv10:工业场景性能实测,速度/精度/部署难度全对比(附完整测试代码)

YOLO26:工业场景全能型选手,无NMS+无DFL设计让部署和推理都省心,小目标精度优势明显,CPU推理速度提升43%,适合大多数生产线场景YOLOv12:中大型目标检测专家,Area Attention在复杂背景下表现出色,适合汽车、家电等大型零部件检测YOLOv10:速度狂魔,GPU上性能领先,轻量化版本适合边缘部署,但小目标精度略逊,适合对实时性要求极高的分拣线场景。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 623

想在 Visual Studio Code 里进行 ABAP 开发,需要安装的扩展列表

安装完毕后,我们可以将 SAP 系统配置为 Visual Studio Code 连接的远程文件系统。为了连接到 SAP 系统,需要启用 ABAP 开发工具 (ADT) ICF 节点,这与 SAP Hana Studio 等工具使用的服务相同。打开 SAP GUI 并连接到目标系统,运行事务 SICF,然后激活 ADT_SRV 服务,如下所示。这启用了允许代码编辑器和 IDE 连接到 SAP 系统的服务。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 3118

位操作符 — &、|、^、~

这里,就可以通过1的二进制数判断出a的最后一位是0还是1,如果是1,按位与后的二进制数最后一位为1,反之为0,我们不难发现,这个所需数和上面第一部分的所需数在每一位上都是相反的,那么我们就可以利用操作符~(按位取反),由于只要第五位改为1,而其它位不变,那么我们可以想象一下,这个a或上一个上面数字可以完成这个改变呢,编写一个代码,实现输入一个整数,输出其存在内存中的二进制1的个数,(即补码中1的个数)那么如何将第五位改回去呢,同样让它和一个数按位与,让所需数的第五位为0,其余位为1,

2301_81337484的博客 1491

AI漫剧全套万能提示词合集

今天给大家整理一套已经跑通爆款漫剧的万能提示词库!覆盖:豆包剧本人设词 + 分镜生成词 + 即梦绘图词 + 动态优化词 + 防翻车固定词直接复制粘贴,新手也能做出稳定、高清、统一、有质感的AI漫剧!你是资深短视频漫剧编剧,擅长制作60秒竖屏爆款AI漫剧,请为我创作一集完整漫剧内容。要求:开头3秒高能抓眼,中段有冲突转折,结尾留强悬念钩子,节奏紧凑、适合短视频流量。首先生成固定统一人物人设:包含脸型、五官、发色、发型、穿搭、身材、气质、画风、光影细节,要求足够精细,保证全程角色不变脸。

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 1872

初学:C语言截断与整型提升。

截断从左侧开始,保留右侧数值。例如:无符号整形a的二进制数为当进行a+1运算时,a+1的二进制数为因为整形变量为四个字节,一个字节两个比特位,一个比特位为2*10^4,此时大于2*10^32就会从左侧开始进行进行截断。截断前截断后此时无符号整形a的值即为0;++在此有个更好的例子来解释1的二进制补码为01111111111111111111111111111111-1的二进制数补码为11111111111111111111111111111111相加即为1。

shanhaimmm的博客 1044

Claude Code 分布式并行开发最佳实践:1中枢+10Worker跨多Git仓库全流程落地

本文介绍了一套基于Claude Code和Git Worktree的分布式并行开发方案,解决多仓库、微服务开发中的核心痛点。方案采用"1个决策中枢+10个并行Worker"架构,中枢负责任务拆解和调度,每个Worker绑定独立仓库实现完全隔离开发。关键优势包括:任务并行效率提升10倍、跨仓库依赖自动编排、版本统一管理、零第三方依赖。文章详细提供了环境准备、架构设计、中枢搭建和初始化脚本等全流程落地指南,特别适合多仓库协同的全栈开发场景。

AI天才研究院 243

【C# + HALCON 机器视觉】HALCON经典算子:光流法运动分析(optical_flow_mg)

摘要:本文面向智能监控人流统计需求,研究C#与HALCON集成开发中optical_flow_mg算子的应用。通过RTSP获取视频流,利用光流法计算运动矢量,结合形态学操作与区域筛选实现行人区域分割,最终完成人流量统计与热力图可视化。详细阐述ROI局部处理等性能优化策略、try-catch异常捕获机制及跨平台集成方案。实验表明,该系统检测准确率达93.6%,单帧处理时间42ms,为公共场所人流量统计提供了完整可行的技术方案。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1441

位运算的一些常识+01tired

前言 题目中出现&,|,^ 的问题 前置知识 &:按位与,都1则1,有0则0 |:按位或,有1则1,都0则0 ^:按位异或,不同为1,相同为0 性质归纳 性质1:a^b<=a+b 性质2:位运算时,每位元素相互独立 例题讲解 例题1:关于异或 例题1 **问题描述:**将n个数任意分成若干组,定义每个组的权值为该组所有数的异或和,求最小权值之和 问题分析 性质:a^b<=a+b 因为 a^b<=a+b,所以任意两个数,不分组比分组更优 即所有数全在一个组时最优 代码如下 #

weixin_43602607的博客 440

定位教程0---定位初介绍

定位教程0---定位算子介绍

Quintin 1万+

Java位运算符及二进制常识

本文简单介绍二进制的基本常识,希望能帮助大家在阅读源码、学习汇编和操作系统等底层原理时能更好地理解内容,与及帮助下那些在学习原码、反码、补码时被很多博客或者资料绕得云里雾里的人们。

刘涛的编程笔记 6803

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

位运算 常识

位运算 12 位运算   C语言是为描述系统设计的,因此它应该具有汇编语言所以完成的一些功能。C语言既有高级语言的特点,又具有低级语言的功能。因而具有广泛的用途和很强的生命力。 12.1 位运算符和位运算 运算符  含义 &    按位与 |    按位或 ^    按位异或 ~    取反 >>   右移 说明: (1)位运算符中除 ~ 外,均为二目运算符,即要求出

20164225的博客 386

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

day004-位运算小常识

day004–位运算小常识 1,进制 ① 常用进制有10进制(89, 23);2进制(1010, 1111);8进制(765,01014);16进制(af,013ed)。计算机直接能存储的数据只有数字;数字以二进制补码的形式存储。 ② 进制之间的转换: print(num) # 转10进制 print(bin(num)) # 转二进制 print(oct(num)) # 转八进制 print(hex(num)) # 转16

lijianmingweibo的博客 138

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Java二进制的符号位在哪一位_Java位运算符及二进制常识

一、位运算 二、位移运算 三、二进制数以Java中最常使用的int类型为例(32位)。 ㈠ 符号位二进制数最左端的数字为符号位:0代表正,1代表负。㈡ 最大与最小⑴ 1是最小的正整数,符号位为0,最后一位为1,其它全部为0。递增:二进制数右端每次加1(逢2进1),一直到31个非符号位的0全部变为1,得到最大的正整数2147483647。⑵ -1是最大的负整数,符号位为1,其它31位也全部为1。递...

weixin_30444697的博客 4808

算法(四)——位运算与位图

文章体量较大,包括基本的位运算操作以及大佬的一些神仙操作,对于学习者来说,掌握常见算法,其他的作为了解即可。如果想要更好的理解,去b搜索左程云大佬

xiaokuer_的博客 1372

位运算所包含的数据储存常识

1.数据在计算机里存储为32位,如何写一个函数以二进制打印int型数据在计算机的存储形式?2.正数与负数的表达方式有什么不一样?3.int型与无符号型数据的存储范围是什么?为什么?4.java中“<<”(">>")和"<<<"(">>>")的区别是什么?

2302_80578762的博客 545

位运算加减乘除,位运算快速幂要点及题目解析

https://blog.youkuaiyun.com/whereisherofrom/category_11492771.html

weixin_61428506的博客 792

Java千问:Java语言位运算符详解

很多编程语言都有位运算符,Java语言也不例外。在Java语言中,提供了7种位运算符,分别是按位与(&)、按位或(|)、按位异或(^)、取反(~)、左移(<<)、带符号右移(>>)和无符号右移(>>>)。这些运算符当中,仅有~是单目运算符,其他运算符均为双目运算符。在讲解这些运算符的使用之前,必须了解一个常识,那就是:位运算符是对long、int、...

穆哥学堂--Java学习园地 5691

C++位运算

常见的位运算: 涉及到位运算的时候,都是将对应的原本的数转换为二进制的数后再操作运算的。 1.与运算(&): 求解的两个数对应位都是1的时候结果位1否则位0;想要知道二进制数中的某一位是否位1的时候,则只需要将其中的二进制数与对应的位数的十进制数相与即可, 如:1223 & 1000 这样得到的结果中只有第一个的值影响。最常用的是取二进制下的最末位,即a&1。这样的技巧可以用于判断奇偶,根据二进制常识,尾数为1则为奇数,反之为偶数。则是当对应的数是偶数的时候则:a & 1得到

zyd2016的博客 1608

浅谈位运算

### 位运算及技巧 操作符: 1. & 与 两位都为1时,结果为1否则为0 ​ 2. | 或 两位都为0时,结果为0否则为1 ​ 3. ^ 异或 两位相同为0,相异为1 ​ 4. ~ 取反 0变1,1变0(所有位,包括符号位) ​ 5. > 右移 整个数组的二进制位向右移若干位,原长度不变,多的舍去,少的补零 不理解?问题不大,等一下上代码,里面有例子,我先说点

Ymy251325的博客 696

C语言绝对值得一看的常识讲解:位运算符的功能篇

之前介绍运算符时提到了位运算符,但是对于位运算符的功能,大家可能没有比较直观的认识,所以这篇文章就和大家详细介绍一下位运算符的功能及代码实现。主要包含按位与、按位或、按位异或、按位取反、左移和右移等运算符。

m0_74950144的博客 259

c/c++中位运算总结

一、无符号数 即没有符号的数。 在c语言中就是 unsigned 类型的。无符号数在计算机中的存储较为简单, 因为没有符号位, 直接将数字化成二进制然后存储在对应的存储器或者寄存器中。 这时寄存器或者存储器的位数就可以表示数值的范围 二、有符号数 即有符号的数, 符号数存储时不仅要将数据部分存入计算机, 还要将符号数字化的存进去。表示方法有: 原码,反码,补码 所谓原码就是二进制定点表示法,即最高...

oldstronger的博客 701
上一篇: Java基础知识之(三)—— java的逻辑操作符和位操作符
下一篇: 刷题的坑
ProLayman
博客等级 码龄10年 105粉丝 192原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值