进制的相互转换学习记录

看到朋友的面试题中关于进制转换的题,发现怎么转换的简直懵逼得不能再懵逼了 遂百度一下算法,然后加以实践,在纸上计算一二,并记录下来,以备后习

2进制转10进制

m为数字,n为长度,右边算起,m*2的0次方+m*2的1次方,+...+m*2的n-1次方

二进制数:10111 十进制:23 计算方式

1-----4次方-----1*2*2*2*2
0-----3次方-----0*2*2*2
1-----2次方-----1*2*2
1-----1次方-----1*2
1-----0次方-----1*1

百度经验: 二进制如何转十进制,十进制如何转二进制

2进制转4进制 取二合一

右边算起,00->0,01->1,10->2,11->3 二进制:10111 四进制:113 计算:1(1)01(1)11(3)

倒推可以得出:113= 01 01 11 即 10111

2进制转8进制 取三合一

右边算起,000到111的组合按大小对应0-7

即:000->0,001->1,010->2,011->3,100->4,101->5,110->6,111->7 二进制:10111 八进制:27 计算:10(010->2) 111(7)

百度经验: 二进制如何转换成八进制,八进制如何转成二进制

2进制转16进制 取四合一

右边算起,0000到1111的组合按大小对于0-9,A-Z 可发现规律映射关系 0000<0001<0010<0011<0100<0101<0110<0111<1000<1001<1010<1011<1100<1101<1110<1111 0 < 1 < 2 < 3 < 4 < 5 < 6 < 7 < 8 < 9 < A < B < C < D < E < F 于是 二进制:10111 十六进制:17 计算:1(1) 7(0111)

同理16进制转2进制倒退即可,左边的0抹掉即可

百度经验: 二进制数与十六进制数之间如何互相转换

10进制转换2进制

十进制数:18 转换2进制:10010 计算方式:

18=16+2
-----2的4次方=10000
-----2的1次方=     10
-----------------=10010

10进制转2进制 除2取余法

10进制转4进制 除4取余法

10进制转8进制 除8取余法

10进制转16进制 除16取余法

十进制数:2230 转换8进制:4266 计算方式

2230/8------278------余-----6
278/8---------34------余-----6
34/8------------4------余-----2
4<8 取4

从下往上数即为:4266

10进制转换成2.4.8进制使用取余法即刻,除以对于的进制数,得其余数,从最后的商开始,从下往上数得到结果

其余进制的转换,如8进制转4进制,可以先将其转换为2进制,再将2进制转换为4进制...

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏青玉伏案

在Objective-C中浅谈面向对象

  接触面向对象也有一段时间了,当时是通过C++学习的OOP,后来又接触到了PHP和Java。每种OOP的语言在面向对象上或多或少都会有不同的地方,现在在学习O...

1846
来自专栏机器学习算法工程师

客官,来嘛,谷歌小菜请你尝尝!

作者:柳行刚 编辑:王抒伟 谷歌面试题 等你来挑战 详情往下看 各位,看招 1 题目描述: 一个大小为n的数组,里面的数都属于范围[0, n-1],有不确定的重...

3008
来自专栏轮子工厂

6. 简单又复杂的“运算符”,建议你看一哈

昨天的《5. 很“迷”的字符与字符串》初稿本来很短的,但是我觉得内容太少了,就加了一些,结果好像就变得特别多〒▽〒。

853
来自专栏编程

Python变量与数据类型

1 Python中数据类型 1、整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:,,...

2706
来自专栏诸葛青云的专栏

python入门:进来吧,给自己10分钟,这篇文章带你直接学会python

假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Totur...

370
来自专栏游戏开发那些事

【Cocos2d-x游戏开发】细数Cocos2d-x开发中那些常用的C++11知识

  自从Cocos2d-x3.0开始,Cocos2dx就正式的使用了C++11标准.C++11简洁方便的特性使程序的可拓展性和可维护性大大提高,也提高了代码的书...

1043
来自专栏较真的前端

关于数字的前端面试题

3666
来自专栏五分钟学算法

每天一算:Reverse Linked List II

变换的是2,3,4这三个点,那么我们可以先取出2,用front指针指向2,然后当取出3的时候,我们把3加到2的前面,把front指针前移到3,依次类推,到4后停...

1011
来自专栏转载gongluck的CSDN博客

python笔记:#008#变量的命名

变量的命名 目标 标识符和关键字 变量的命名规则 0.1 标识符和关键字 1.1 标识符 标示符就是程序员定义的 变量名、函数名 名字 需要有 见名知义 的...

3694
来自专栏程序员互动联盟

【编程基础】C++ Primer快速入门之七:运算符

一、表达式的定义 什么是表达式?表达式,是由数字、运算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合(1)。1 + 2是个...

3104

扫码关注云+社区

领取腾讯云代金券