各种进制的介绍及它们之间的转换 ,最重要的一点,一个很大的十进制数在转化为二进制时可以借助于十六进制或者八进制,然后再转化为二进制。
C语言中的八进制 十六进制的表示方法,有3点应特别注意,第一点,八进制十六进制在C语言中的表达方式 。第二点, 在转义字符中的应用。第三点,有没有正负。
第六章 二进制、八进制、十六进制
6.0 前言
6.2 二、八、十六进制数转换到十进制数
6.2.3 八进制数的表达方法
6.2.5 十六进制数转换成十进制数
6.3 十进制数转换到二、八、十六进制数
6.4 二、十六进制数互相转换
6.6 通过调试查看变量的值
这是一节“前不着村后不着店”的课。不同进制之间的转换纯粹是数学上的计算。不过,你不必担心会有么复杂,无非是乘或除的计算。
生活中其实很多地方的计数方法都多少有点不同进制的影子。
比如我们最常用的10进制,其实起源于人有10个指头。如果我们的祖先始终没有摆脱手脚不分的境况,我想我们现在一定是在使用20进制。
至于二进制 没有袜子称为0只袜子,有一只袜子称为1只袜子,但若有两袜子,则我们常说的是:1双袜子。
生活中还有:七进制,比如星期。十六进制,比如小时或“一打”,六十进制,比如分钟或角度
6.1 为什么需要八进制和十六进制?
编程中,我们常用的还是10进制 必竟C/C++是高级语言。
比如:
int a = 100,b = 99;
不过,由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决问题。
但,二进制数太长了。比如int 类型占用4个字节,32位。比如100,用int类型的二进制数表达将是:
0000 0000 0000 0000 0110 0100
面对这么长的数进行思考或操作,没有人会喜欢。因此,C,C++ 没有提供在代码直接写二进制数的方法。
用16进制或8进制可以解决这个问题。因为,进制越大,数的表达长度也就越短。不过,为什么偏偏是16或8进制,而不其它的,诸如9或20进制呢?
2、8、16,分别是2的1次方,3次方,4次方。这一点使得三种进制之间可以非常直接地