文档章节

位运算实现输出数字的二进制

304158
 304158
发布于 2017/09/09 11:52
字数 258
阅读 6
收藏 0
点赞 0
评论 0
#include<stdio.h>
#include<stdlib.h>
#include<Windows.h>
//求出一个数的二进制
//使用&运算
void main(void) 
{
	int num;
	puts("输入整数");
	scanf_s("%d",&num);
	printf("%d\n%p\n",num,&num);
	//创建一个最高位为1的32bit(四字节整数最高位为1 内存为 1000 0000 0000 0000 0000 0000 0000 0000)
	// 整数1位移31位32bit位,的第一位成为1 结构是0000 0000 0000 0000 0000 0000 0000 0001 向前移动 31位1000 0000 0000 0000 0000 0000 0000 0000
	int temp = 1<<31;
	if (num < 0)//如果这个数字是负数处理
	{
		num = ~num+1;//取反+1 负数的内存中存放方式是补码的方式存放 这里求出了他的正数源码
		num = num | temp;//设置这个正数的源码,把其的最高位相或等于1 求出了负数的源码
	}


	for (int i = 1; i <=32;i++)
	{
		if ((temp&num) == 0) 
		{
			printf("0");
		}
		else 
		{
			
			printf("1");			
		}

		if (i%4==0) // %4后等于0输出空格
		{
			printf(" ");
		}
		num <<= 1;//移动输入的数字的最高位,继续比较
	}
	system("pause");
}

 

© 著作权归作者所有

共有 人打赏支持
304158
粉丝 1
博文 98
码字总数 27369
作品 0
大兴安岭
Python核心编程基础教程之Python运算符、运算符优先级、表达式简介--20150717

Python核心编程基础教程之Python运算符、运算符优先级、表达式简介 1.Python运算符与表达式: (1)认识Pyhton运算符1:什么是运算符 在Python运算中,有时候我们需要对一个或者多个数字或者...

暗夜灬Duke
2015/07/17
0
0
剑指Offer学习总结-二进制中1的个数

剑指Offer学习总结-二进制中1的个数 本系列为剑指Offer学习总结,主要是代码案例的分析和实现: 书籍链接:http://product.dangdang.com/24242724.html 原作者博客:http://zhedahht.blog.16...

wwlcsdn000
01/17
0
0
python2

python变量类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) python运算符 Python语言支持以下类型的运算符: 算术运算符...

wy125629
2017/11/09
0
0
php 位移运算符(>右移)

位移运算符 << 位左移 左移运算的实质是将对应的数据的二进制值逐位左移若干位,并在空出的位置上填0,最高位溢出并舍弃。例 如 $a=10; $b=$a<<2; 则$b=40,根据手册描述可以看出位运算可以看...

happy_limit
2013/05/31
0
1
JavaScript的位运算符

重温整数 ECMAScript整数有两种类型,有符号整数(允许用正数和负数)和无符号整数(只允许用正数)。在ECMAScript中,所有整数字面量默认都是有符号整数。 有符号整数,数值范围从-21474836...

前端届的科比
2014/08/16
0
0
Java 位运算(转)

位移动运算符: <<表示左移, 左移一位表示原来的值乘2. 例如:3 <<2(3为int型) 1)把3转换为二进制数字0000 0000 0000 0000 0000 0000 0000 0011, 2)把该数字高位(左侧)的两个零移出,其他的...

SLoan_
2016/11/07
13
0
(转载)位操作基础篇之位操作全面总结

Title: 位操作基础篇之位操作全面总结 Author: MoreWindows E-mail: morewindows@126.com KeyWord: C/C++ 位操作 位操作技巧 判断奇偶 交换两数 变换符号 求绝对值 位操作压缩空间 筛素数 位...

Avner
05/07
0
0
位操作基础篇之位操作全面总结

Title: 位操作基础篇之位操作全面总结 Author: MoreWindows E-mail: morewindows@126.com KeyWord: C/C++ 位操作 位操作技巧 判断奇偶 交换两数 变换符号 求绝对值 位操作压缩空间 筛素数 位...

抢地主
2016/05/03
38
0
JAVA移位运算 << 郏高阳

移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种:<<(左移)、>>(带符号右移)和>>>(无符号右移)。 在移位运算时,byte、short和char类型移位后...

郏高阳
2011/08/30
0
0
【小知识大道理】被忽视的位运算

Bitwise Operation导语 众所周知计算机是基于二进制01进行运算的,理所当然地,位运算相对于各种算术运算更加贴合计算机的二进制语义,运算效率会更快。这样计算机是舒服了,人类读起来就太生...

曲高和寡_健
2017/11/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
1
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0
expect同步文件&expect指定host和要同步的文件&构建文件分发系统&批量远程执行命令

20.31 expect脚本同步文件 expect通过与rsync结合,可以在一台机器上把文件自动同步到多台机器上 编写脚本 [root@linux-5 ~]# cd /usr/local/sbin[root@linux-5 sbin]# vim 4.expect#!/...

影夜Linux
今天
1
0
SpringBoot | 第九章:Mybatis-plus的集成和使用

前言 本章节开始介绍数据访问方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的。目前,绝大部分公司都选择MyBatis框架作为底层数...

oKong
今天
12
0
win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
今天
2
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
今天
2
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 vim 4.expect [root@yong-01 sbin]# vim 4.expect#!/usr/bin/expectset passwd "20655739"spawn rsync -av ro...

lyy549745
今天
1
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
今天
1
0
matplotlib 保存图片时的参数

简单绘图 import matplotlib.pyplot as pltplt.plot(range(10)) 保存为csv格式,放大后依然很清晰 plt.savefig('t1.svg') 普通保存放大后会有点模糊文件大小20多k plt.savefig('t5.p...

阿豪boy
今天
3
0
java 8 复合Lambda 表达式

comparator 比较器复合 //排序Comparator.comparing(Apple::getWeight);List<Apple> list = Stream.of(new Apple(1, "a"), new Apple(2, "b"), new Apple(3, "c")) .collect(......

Canaan_
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部