翻转一个数的二进制后的值
编写函数:
unsigned int reverse_bit(unsigned int value);
这个函数的返回 值value的二进制位模式从左到右翻转后的值。
如:
在32位机器上25这个值包含下列各位:
00000000000000000000000000011001
翻转后:(2550136832)
10011000000000000000000000000000
程序结果返回:
2550136832
unsigned int reverse_bit1(unsigned int value)
{int i = 0;unsigned int ret = 0;for (i = 0; i < 32; i++){ret += (((value >> i) & 1)<<(31-i));}return ret;
}unsigned int reverse_bit2(unsigned int value)
{unsigned int ret = 0;int i = 0;for (i = 0; i < 32; i++){ret <<= 1;ret |= ((value >> i) & 1);}return ret;
}
int main()
{unsigned int num = 0;scanf("%u", &num);printf("%u", reverse_bit1(num));//printf("%u", reverse_bit2(num));system("pause");return 0;
}
转载于:https://blog.51cto.com/10707460/1753165
翻转一个数的二进制后的值相关推荐
- LeetCode 421. 数组中两个数的最大异或值
421. 数组中两个数的最大异或值 Idea 假设选择了数组中的元素ai和aj使得它们达到最大按位异或结果x:x=ai⊕ajx=a_{i}⊕a_{j}x=ai⊕aj,其中⊕表示按位异或运算. 根据 ...
- 通过C语言“求俩个数的二进制不同位的个数”
Hellow,我是jack,今天给大家分享的是C语言实现求俩个数的二进制不同位的个数.话不多说,让我们直接进入正题. 首先,我们应该想到要求俩个不同数的二进制位的不同个数,我们就需要通过或运算符进行实 ...
- arrays中copyof复制两个数组_异或的魅力!图解「数组中两个数的最大异或值」
今天分享的题目来源于 LeetCode 第 421 号问题:数组中两个数的最大异或值.在 异或 这个知识点里面属于一个中高难度的题目. 题目描述 给定一个非空数组,数组中元素为 a0, a1, a2, ...
- 为什么8位二进制的取值范围是-128~127
我的疑惑 一个字节8位,其中最高位表示正数和负数,0表示正数,1表示负数.所以能够表示-128-+127. 01111111可以表示+127.正数这一段没有问题,负数这一段有两个疑问 11111111 ...
- 整数a按位取反(~)后的值为-(a+1)
[理解按位取反(~)前需要知晓的原码.反码.补码规则] 数据在内存中是以有符号数二进制的补码形式存储的.有符号整数的二进制表示中,最高位为符号位(正整数为0,负整数为1),这也是有符号整数名称的由来. ...
- 如何获取某个坍缩后的值在不同坐标系统中的位置
十进制 一个十进制数 372,可以通过如下方式单独取出 3.7.2 三个数 372 % 10 = 2 372 / 10 % 10 = 7 372 / 10 / 10 % 10 = 3 \begin{a ...
- pandas使用fillna函数并设置bfill参数使用列中的后序值填充缺失值
pandas使用fillna函数并设置bfill参数使用列中的后序值填充缺失值(replace missing values with following values in column in da ...
- 为什么不使用volatile,其它线程也能得到当前线程修改后的值,不使用volatile也不存在可见性问题?原来解决可见性问题不一定需要volatile,println也可以
1. 为什么不使用volatile,其它线程也能得到变量修改后的值 实验代码分析: ①初始变量a=true,b=false: ②一个线程判断a或者b是否被改为相应逻辑,如果是,那么输出信息. ③修改a ...
- 数组中两个数的最大异或值 两数异或值一定小于两数相加和
链接:数组中两个数的最大异或值 给你一个整数数组 nums ,返回 nums[i] XOR nums[j] 的最大运算结果,其中 0 ≤ i ≤ j < n . 进阶:你可以在 O(n) 的时间 ...
- C++返回一个数的二进制最右边的一位的实现算法(附完整源码)
C++返回一个数的二进制最右边的一位的实现算法 C++返回一个数的二进制最右边的一位的实现算法完整源码(定义,实现,main函数测试) C++返回一个数的二进制最右边的一位的实现算法完整源码(定义,实 ...
最新文章
- oracle insert忽略重复数据,Oracle’INSERT ALL’忽略重复项
- Eigen/Matlab 使用小结
- 【2018年更新】Sublime text 3安装教程(Linux版本--Ubuntu)
- python函数调用位置_Python: 浅谈函数局部变量快在哪
- 【LeetCode算法题库】Day5:Roman to Integer Longest Common Prefix 3Sum
- 模拟灰度传感器循迹的程序_PLC编程,实例讲解西门子PLC模拟量编程
- 教你如何制作饼干icon教程
- php psot传值_三种方法教你如何用PHP模拟post提交数据
- 喜大普奔:我的个人博客www.yxmblog.top
- 湖北警方打掉一制贩假酒团伙 涉案金额1.6亿元
- function小记
- 黑月教主去水印软件_去除图片/视频去水印!这个软件可以帮助你!
- 问卷调查页面的设计与实现
- 一个屌丝程序猿的人生(四十二)
- Python统计微信消费!生成微信消费账单!真强大!
- 矩阵分析与应用(二)——矩阵微分
- java 阴历阳历转换
- Android 验证码输入框的实现
- windows下安装 Linux Ubuntu20. 04双系统
- PLC构成电梯控制系统特性分析
热门文章
- Atitit.一些公司的开源项目 重大知名开源项目attilax总结
- 国人常用密码TOP100 FROM THISITE
- 2021信创产业分类排行
- 中国指数基金与ETF价格战简史(1)
- Rust: mod文件、main文件调用
- Julia : 1亿条记录读取测试,及几个优化点
- C#:重启后,AssemblyInfo中AssemblyTitle的描述内容显示正常.........
- 机器学习笔记(七):线性回归 | 凌云时刻
- 【生产调度】基于matlab遗传算法求解柔性生产调度(FJSP)问题【含Matlab源码 1780期】
- 【图像隐写】基于matlab高斯模型JPEG图像隐写【含Matlab源码 367期】