进制转换--(2-8)为什么2的3次方=8,所以三位变一位

简介: 进制转换--(2-8)为什么2的3次方=8,所以三位变一位

我们知道2进制到8进制的转换是三位变一位,因为2的3次方=8,可是反过来,为什么2的3次方=8,就是三位变一位呢?

首先看下

二进制的概念,基数R=2的进位计数制称为二进制,二进制数中只有0和1两个基本数字符号。

八进制的概念,基数R=8的进位计数制称为八进制。八进制有0、1、…、7共8个基本数字符号。

也就是

一位2进制数可以表示0, 1共两个数字

一位8进制数可以表示0, 1, 2, 3, 4, 5, 6, 7共八个数字

然后,三位2进制数也可以表示八个数字 0, 1, 2, 3, 4, 5, 6, 7,如下表所示

二进制 ..八进制


000,.      .0

001,.     ..1

010,..   .  2

011,..     .3

100,...     4

101,.     ..5

110,...     6

111,..     .7



所以可以用 三位2进制数表示一位8进制数。反之一位8进制数表示三位2进制数。

同理,2进制到16进制的转换,四位变一位,反之,16进制到2进制的转换是一位变4位。


相关文章
|
C语言
C语言之回文数的求解。回文数一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
C语言之回文数的求解。回文数一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
200 0
|
3月前
|
C语言 Python
一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。
81 3
|
2月前
【编程基础知识】正数负数的二进制位运算(左移 右移 无符号右移)
正数和负数需转换成二进制后进行移位运算。左移低位补0,不影响符号位;右移符号位跟随移动,最高位还原为原符号位;无符号右移高位补0,适用于负数处理。
133 0
|
2月前
|
C++
Leetcode第十三题(罗马数字转整数)
这篇文章介绍了LeetCode第13题“罗马数字转整数”的解题方法,通过一个C++的类`Solution`中的`romanToInt`函数来实现,该函数使用哈希表和遍历字符串的方法,根据罗马数字的规则将输入的罗马数字字符串转换为对应的整数值。
56 0
|
6月前
|
C语言
【C语言刷题系列】交换整数的奇数位和偶数位
【C语言刷题系列】交换整数的奇数位和偶数位
LeetCode:13、罗马数字转整数
LeetCode:13、罗马数字转整数
|
7月前
leetcode-13:罗马数字转整数
leetcode-13:罗马数字转整数
42 0
|
7月前
打印2进制位数的奇数位和偶数位
打印2进制位数的奇数位和偶数位
wustojc求三位整数的逆序数
wustojc求三位整数的逆序数
59 0
|
算法 安全 测试技术
LeetCode - #13 罗马数字转整数
不积跬步,无以至千里;不积小流,无以成江海,Swift社区 伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。