如何把二进制数化成十进制数_二进制数按位进行逻辑运算
首先要理解整数在机器内是如何用补码表示的:原码、补码、反码
按位运算,就是对一个数(常量或变量)的二进制位与另一个数的对应二进制位进行运算。
位运算有:
& 位逻辑与,1&1等于1,1&0等于0,0&1等于0,0&0等于0
| 位逻辑或 ,1|1等于1,1|0等于1,0|1等于1,0|0等于0
^ 位逻辑异或 ,两个二进制位不同,结果为1,否则为0
~ 求反, 使一个数(常量或变量)的每一位变反,即0变1,1变0
>> 右移, 对一个数(常量或变量)的每一位右移
<< 左移, 对一个数(常量或变量)的每一位左移
例2.7.1 按位运算
#include <iostream>
using namespace std;
int main()
{short int a,b,c;a=11; //a的二进制表示 00000000 00001011b=39; //b的二进制表示 00000000 00100111c=-23; //c的二进制表示 11111111 11101001cout<<(a&b)<<endl; // a&b的结果 00000000 00000011cout<<(a|b)<<endl; // a|b的结果 00000000 00101111cout<<(a^b)<<endl; // a^b的结果 00000000 00101100cout<<(~a)<<endl; // ~a的结果 11111111 11110100cout<<(c>>2)<<endl; // c>>2的结果 11111111 11111010cout<<(a<<2)<<endl; //左移一位相当于乘2运算,这里左移了2位 return 0;
}
![](/assets/blank.gif)
计算机内,整数是用补码表示的,能理解补码,就能解读程序的输出结果。
![](/assets/blank.gif)
用移位运算实现整型变量a乘2(a<<2)或除2(a>>1)运算,效率比a*2或a/2运算高。
看看高手是如何活用位运算的
god-jiang:神级运算——位运算zhuanlan.zhihu.com
![](/assets/blank.gif)
如何把二进制数化成十进制数_二进制数按位进行逻辑运算相关推荐
- 如何把二进制数化成十进制数_如何将二进制数1101.1转化成十进制数?计算步骤是怎样的?...
展开全部 1101.1转换32313133353236313431303231363533e78988e69d8331333365633938为10进制为13.5 进制转换是人们利用符号来计数的方法. ...
- 十进制数转换为二进制数
Description 输入一个十进制整数,将其转换为二进制数,并将转换结果输出. Input 多组测试数据,每组输入一个十进制整数. Output 将十进制数转换为二进制数,输出转换结果. Samp ...
- Java中十进制数转二进制数的方法
十进制数转二进制数,跟据不同的开发语言其转换方式有很多,在Java中如果相把一个十进制的整数来转换成二进制那是举手之劳,非常简单,只要用Integer.toBinaryString(int)方法就可以 ...
- 数制转换,使用按权展开法将二进制数转换为十进制数,使用短除法除2取余计算十进制数转换为二进制数
1:数制转换 1.1 问题 1)请将下列数字转换为十进制数: (110010011111)2 .(10110101110)2 2)请将下列十进制数转换为二进制: 156.2608.1043 1.2 方 ...
- #Python# 十进制数转换为二进制数(包含小数)
#Python# 十进制数转换为二进制数(包含小数) 问题描述 问题分析 代码 问题描述 编写程序,输入十进制小数(只考虑正数),把它转换为以字符串形式存储的二进制小数,输出该二进制小数字符串.对于转 ...
- 二进制数与十进制数相互转换 string陷阱(赋值错误) 汉字分为两个字符 string123 string字符串逆转
二进制数与十进制数相互转换: 二进制数(数组)转换成十进制数的函数: BtoO(char str[]) { int lg,sum=0,j=1; lg=strlen(str)-1; for(;lg> ...
- 二进制数转换十进制数(十进制转二进制)
[二进制数转十进制数] 各个位拆开,每一位的数值乘2的次幂(末尾是2的0次幂),然后相加求和 移位操作(左移----乘法) [十进制数转二进制数] 模2取余,将余数从低往上排(自下而上),即为该数的二 ...
- 二进制数转换十进制数;技巧Part1;Python
二进制数转换十进制数:方法及内容如下: 操作方式如图(操作软件是Python) print(int('011001010011110',2)) 输入二进制数,输出十进制数. 其他方法 正整数转成二进制 ...
- 十进制数转换为二进制数以及浮点数存储方法
一.十进制数转换为二进制数 十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并. 1. 十进制整数转换为二进制整数 十进制整数转换为二进 ...
最新文章
- AAC规格分类和下载地址
- php如何实现读取网易有道词典输出单词的xml格式并且转化为html形式
- Python与MySQL
- 七十九、Springboot 整合 Elasticsearch
- 使用Java生成二维码图片(亲测)
- 《SpringMVC从入门到放肆》一、概述
- WPF定时刷新UI界面
- 信息学奥赛一本通(1131:基因相关性)
- 响应式布局这件小事有哪些优点和缺点该怎么设计
- 为什么看别人的网站排名都在第一页?有可能是以下三种原因
- jsp input输入实时校验长度并提示_拆解「输入框」,理解输入反馈的规则逻辑
- Java使用for循环打印菱形
- 苹果4s怎么越狱教程_苹果手机:iPhone 11/XS系列iOS13-13.3越狱教程
- 使用MaxScale实现mysql读写分离
- multiparty 和 busboy
- 乐鑫科技推出基于 ESP32-C3 的 Wi-Fi 单火线智能开关方案
- 【SpringBoot】最通俗易懂的消息服务
- 当前服务器更新维护公告,【已开服】1月17日全部服务器更新维护公告
- 51单片机 ADC0832酒精传感器
- 常见前端九十道面试题及答案-韩烨
热门文章
- 使用docker部署一个直接可用的puppet服务端
- jquery 导航栏目
- CentOS下软件的安装
- android adb启动不了
- innodb_monitor
- 14条最佳JS代码编写技巧
- 设计模式 – 策略模式(Strategy)
- CSP认证201312-5 I’m stuck![C++题解]:dfs、两次dfs
- PAT甲级1065 A+B and C (64bit):[C++题解]爆long long,熟悉计算机存储有符号数原理
- linuv创建文件的命令_ECS实践案例丨逻辑卷的创建和扩容操作指导