按位计算器
对整数执行按位操作(AND、OR、XOR、NOT)和位移位操作,并通过交互式可视化位图显示每个位的位置。
检测到广告拦截,导致我们无法展示广告
MiniWebtool 依靠广告收入免费提供服务。如果这个工具帮到了你,欢迎开通 Premium(无广告 + 更快),或将 MiniWebtool.com 加入白名单后刷新页面。
- 或升级 Premium(无广告)
- 允许 MiniWebtool.com 显示广告,然后刷新
按位计算器
欢迎使用按位计算器,这是一个功能强大的在线工具,用于执行带有交互式可视化位图的整数按位运算。无论您是处理底层代码的软件开发人员、学习二进制算术的计算机科学学生,还是优化算法的工程师,此计算器都能通过分步位级分析帮助您理解并可视化按位 AND、OR、XOR 运算。
什么是按位运算?
按位运算直接作用于数字的二进制表示,分别处理每个位(0 或 1)。这些运算是计算机科学的基础,广泛用于系统编程、密码学、图形、网络和性能优化。
按位 AND (&)
AND 运算比较两个数字的每一位,只有当两个位都为 1 时才返回 1。
| A | B | A AND B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
常见用途:
- 掩码特定位(例如,使用
n & 0xF提取低 4 位) - 检查位是否设置(例如,
n & (1 << k)) - 清除位(例如,使用
n & ~(1 << k)清除第 k 位) - 检查数字是否为偶数 (
n & 1 == 0)
按位 OR (|)
OR 运算比较每一位,当至少有一个位为 1 时返回 1。
| A | B | A OR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
常见用途:
- 设置特定位(例如,使用
n | (1 << k)设置第 k 位) - 组合标志或权限
- 合并位模式
按位 XOR (^)
XOR(异或)运算在位不同时返回 1。
| A | B | A XOR B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
常见用途:
- 切换位(例如,使用
n ^ (1 << k)切换第 k 位) - 在不使用临时变量的情况下交换值 (
a ^= b; b ^= a; a ^= b;) - 简单加密和校验和
- 在数组中查找唯一元素(其中所有其他元素出现两次)
- 错误检测和校正
为什么使用此计算器?
可视化位图
与仅显示结果的普通计算器不同,我们的工具显示交互式的逐位图,准确显示每个位置是如何计算的。这种可视化方法使理解按位运算变得直观且具有教育意义。
多种数字格式
以最适合您使用场景的格式输入数字:
- 十进制: 标准 Base-10 数字(例如,42, 255)
- 二进制: 使用 0 和 1 的 Base-2(例如,101010, 11111111)
- 十六进制: 使用 0-9 和 A-F 的 Base-16(例如,2A, FF)
可配置位宽
选择与您的应用相匹配的位宽:
- 自动: 自动使用所需的最小位数
- 8位: 用于字节级运算(0-255 无符号)
- 16位: 用于短整数(0-65535 无符号)
- 32位: 许多语言中的标准整数大小
- 64位: 用于大整数和现代系统
如何使用此计算器
- 选择输入格式: 从下拉菜单中选择二进制、十进制或十六进制。
- 输入您的数字: 在输入框中输入两个整数。
- 选择位宽: 选择特定的宽度或保持为“自动”。
- 选择运算: 点击 AND、OR、XOR 或“计算全部”。
- 分析结果: 查看所有三种格式的结果以及可视化位图。
实际案例
示例 1:检查权限
权限标志:读取=4,写入=2,执行=1
- 用户权限 = 6(读取 + 写入 = 二进制 110)
- 检查读取:
6 & 4 = 4(为真,拥有读取权限) - 检查执行:
6 & 1 = 0(为假,没有执行权限)
示例 2:切换功能标志
切换值 5 中的第 2 位:
- 5 XOR 4 = 0101 XOR 0100 = 0001 = 1(第 2 位之前是开启的,现在关闭)
- 1 XOR 4 = 0001 XOR 0100 = 0101 = 5(第 2 位之前是关闭的,现在开启)
示例 3:屏蔽低位半字节 (Nibble)
从 0xAB 中提取低 4 位:
- 0xAB & 0x0F = 10101011 & 00001111 = 00001011 = 0x0B = 11
常见问题解答
什么是按位 AND 运算?
按位 AND 比较两个数字的每一位,只有当两个位都为 1 时才返回 1。例如,5 AND 3:0101 AND 0011 = 0001(十进制 1)。它通常用于掩码特定位、检查位是否设置以及清除位。
什么是按位 OR 运算?
按位 OR 比较两个数字的每一位,当至少有一个位为 1 时返回 1。例如,5 OR 3:0101 OR 0011 = 0111(十进制 7)。它通常用于设置特定位和组合标志。
什么是按位 XOR 运算?
按位 XOR(异或)比较每一位,当位不同时返回 1。例如,5 XOR 3:0101 XOR 0011 = 0110(十进制 6)。XOR 用于加密、切换位、在不使用临时变量的情况下交换值以及错误检测。
什么是位移位运算?
位移位运算将数字中的所有位向左或向右移动指定的位数。左移 (<<) 乘以 2 的幂,而右移 (>>) 除以 2 的幂。例如,5 << 2 将 0101 左移 2 位得到 10100(十进制 20)。
按位算术中的 NOT 运算是什么?
按位 NOT 反转每一位:0 变为 1,1 变为 0。结果取决于位宽。对于 8 位数字,NOT 5 (00000101) = 250 (11111010)。这也被称为反码。
相关运算
如需位移位运算(左移、右移)和按位 NOT,请访问我们的位移计算器。
其他资源
要了解有关按位运算的更多信息:
引用此内容、页面或工具为:
"按位计算器" 于 https://MiniWebtool.com/zh-cn/按位计算器/,来自 MiniWebtool,https://MiniWebtool.com/
由 miniwebtool 团队开发。更新日期:2025年12月26日
您还可以尝试我们的 AI数学解题器 GPT,通过自然语言问答解决您的数学问题。