位运算笔记(韩顺平)

一、原码、反码、补码
  • 二进制的最高位是符号位,0 为正,1 为负
  • 正数的原码、补码、反码 都是一样的
  • 负数的反码 = 它的原码符号位不变,其他按位取反
  • 0的反码和补码都是 0
  • java没有无符号之数,即Java的数都是有符号的
  • 在计算机计算时,都是以补码的方式来计算的
  • 运算结果以原码的方式呈现
二、位运算符
  • 按位与&:两位全为 1,结果为 1,否则为 0
  • 按位或|:两位有一位为 1,结果为 1,否则为 0
  • 按位异或^:两位有一位为 0,一位为 1,结果为 1,否则为 0
  • 按位取反~:0-》1,1-》0
  • 算数右移符 >>: 本质相当于除以 2
  • 算数左移符<<: 本质相当于乘以 2
三、计算

~2 2|3 2^3

相关推荐
短剑重铸之日1 小时前
7天读懂MySQL|Day 5:执行引擎与SQL优化
java·数据库·sql·mysql·架构
酒九鸠玖2 小时前
Java--多线程
java
Dreamboat-L2 小时前
云服务器上部署nginx
java·服务器·nginx
长安er2 小时前
LeetCode215/347/295 堆相关理论与题目
java·数据结构·算法·leetcode·
cici158743 小时前
C#实现三菱PLC通信
java·网络·c#
k***92164 小时前
【C++】继承和多态扩展学习
java·c++·学习
weixin_440730504 小时前
java结构语句学习
java·开发语言·学习
JIngJaneIL4 小时前
基于java+ vue医院管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
Coder_Boy_4 小时前
Spring AI 源码大白话解析
java·人工智能·spring
仙俊红4 小时前
在 Java 中,`==` 和 `equals()` 的区别
java·开发语言·jvm