C语言学习笔记之进制之间的转换
这一篇主要是对进制之间转换的讲解,方便查看,以防忘记
二进制 逢二进一
八进制 逢八进一 以0开头, 0就是8进制的标志
十进制 逢十进一 以0X 开头 ,0X 就是16进制的标志
十六进制 逢十六进一
日常生活中,我们最熟悉的是十进制,下面通过十进制与其他进制所表示相同的数值可发现其规律
10进制 2进制数 8进制数 16进制数
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
通过上面数据可以发现其进位规律,
而一般八进制进位对应的是二进制3位,十六进制进位对应的是二进制4位,
如八进制对应二进制的,十六进制F对应二进制的
十进制->二进制 除以2逆向取余 小数点后正向乘2,大于一取1 ,乘到最后数值为0 如

二进制 -> 十进制

二进制 1000001=十进制:(2^0)*1+(2^1)*0+(2^2)*0+(2^3)*0+(2^4)*0+(2^5)*0+(2^6)*1=65
十进制 -> 八进制 除以8逆向取余,和十进制->二进制一样,只不过除2变为除8

八进制 -> 十进制

八进制 100=十进制:(8^0)*0+(8^1)*0+(8^2)*1=64
十进制 -> 16进制 除以16逆向取余 和十进制->二进制一样,只不过除2变为除16
16进制 -> 十进制

16进制 100=十进制:(16^0)*0+(16^1)*0+(16^2)*1=256
如果是八进制转化为16进制或者16进制转化为8进制,先转化做二进制,在转化相应进制,小数点后也是如此,小数点算法和上面二进制算法一样


C语言学习笔记之进制之间的转换的更多相关文章
- matlab学习笔记10_6 字符串与数值间的转换以及进制之间的转换
一起来学matlab-matlab学习笔记10 10_6 字符串与数值间的转换以及进制之间的转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合 ...
- JavaScript中进制之间的转换
JavaScript中进制之间的转换 //十进制转其他 var x = 100; alert(x); alert(x.toString(2)); //转2进制 alert(x.toString(8)) ...
- bgcolor RGB 和16进制之间的转换,16进制转RGB,源码
<p>bgcolor RGB 和16进制之间的转换,16进制转RGB,源码例如:<br /> 输入 201,255,201 转换成 #C9FFC9</p> < ...
- js中数值各进制之间的转换
十进制转换为二进制 toString()方法可把一个 Number 对象转换为一个字符串,并返回结果.语法如下: NumberObject.toString(radix); 其中,radix为可选.规 ...
- python中的2、8、16、10进制之间的转换
python除法的坑 众所周知,python除法有两个运算符,一个是/,还有一个是//,那么这两个有什么不同之处呢? 从图片可以得知,使用//返回一个float类型,而使用/返回一个int类型.我们总 ...
- leetcood学习笔记-67-二进制求和
题目描述: 第一次提交: class Solution: def addBinary(self, a: str, b: str) -> str: list_a,list_b=[],[] for ...
- Java基础知识强化106:Java中 int 的各进制之间的转换
1.二.八.十.十六进制之间的转换 下面是示例代码,我们直接通过JDK工具库中的方法实现的,如下: public static Integer valueOf(String s, int radix ...
- java中进制之间的转换
//十进制转其他进制 Integer.toHexString(10); //将10转换为十六进制,返回字符串类型 Integer.toOctalString(10); //将10转为八进制,返回字符串 ...
- day02 进制之间的转换and计算机编码叙述
一. 进制的转好技巧 二进制:0 1 八进制:0 1 2 3 4 5 6 7 十进制:0 1 2 3 4 5 6 7 8 9 十六进制:0 1 2 3 4 5 6 7 8 9 A B C D E ...
随机推荐
- Hadoop基础(一):概论
1.大数据概念 2 大数据特点(4V) 图2-2 大数据特点之大量 图2-3 大数据特点之高速 图2-4 大数据特点之多样 图2-5 大数据特点之低价值密度 3 大数据部门业务流程分析 4 大数据部门 ...
- kafka 监控工具 eagle 的安装(内附高速下载地址)
简介 如图 kafka eagle 是可视化的 kafka 监视系统,用于监控 kafka 集群 环境准备: 需要的内存:1.5G+ 支持的 kafka 版本:0.8.2.x,0.9.x,0.10.x ...
- 用matplotlib绘制图片示例(新)
test /*! * * Twitter Bootstrap * */ /*! * Bootstrap v3.3.7 (http://getbootstrap.com) * Copyright 201 ...
- project facet java 1.8 is not supported解决办法
Right click on project -> Properties -> Search for Project Facets -> Java (Version)
- Ethical Hacking - GAINING ACCESS(15)
CLIENT SIDE ATTACKS Social Engineering Gather info about the user(s). Build a strategy based on the ...
- 一张图就可以完美解决Java面试频次最高、GG最高的题目!快点收藏
如果要问Java面试频次最高的题目,那么我想应该是HashMap相关了. 提到HahMap,必然会问到是否线程安全?然后牵扯出ConcurrentHashMap等,接着提及1.7和1.8实现上的区分, ...
- Linux下Storm2.1.0的伪分布式安装
官方下载网址:http://storm.apache.org/downloads.html 1.第一步我们先从官网下载解压包 2.然后进行解压 3.配置环境变量 在profile里面插入如下格式语句 ...
- java大数据最全课程学习笔记(6)--MapReduce精通(二)--MapReduce框架原理
目前CSDN,博客园,简书同步发表中,更多精彩欢迎访问我的gitee pages 目录 MapReduce精通(二) MapReduce框架原理 MapReduce工作流程 InputFormat数据 ...
- Linux切换用户时报错/.bash_profile: Permission denied,命令行(终端提示符)出现-bash-4.2$
Linux切换用户时报错/.bash_profile: Permission denied,命令行(终端提示符)出现-bash-4.2$ 利用su - 切换用户时,发现有一个用户切时出现如下情况 [r ...
- 最大连续区间(HDU-1540)
HDU1540 线段树最大连续区间. 给定长度为n的数组,m次操作. 操作D,删除给定节点. 操作R,恢复最后一个删除的节点. 操作Q,询问给定节点的最大连续区间 维护三个值,区间的最大左连续区间,最 ...