二进制、八进制和十六进制

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liubing8609/article/details/82694745

二进制、八进制和十六进制

进制也就是进位制。进行加法运算时逢X进一(满X进一),进行减法运算时借一当X,这就是X进制,这种进制也就包含X个数字,基数为X。十进制有0~910个数字,基数为10,在加减法运算中,逢十进一,借一当十。

二进制

我们不妨将思维拓展一下,既然可以用0~9共十个数字来表示数值,那么也可以用01两个数字来表示数值,这就是二进制(Binary。例如,数字01101111001000001都是有效的二进制。

在计算机内部,数据都是以二进制的形式存储的,二进制是学习编程必须掌握的基础。本节我们先讲解二进制的概念,下节讲解数据在内存中的存储,让大家学以致用。

二进制加减法和十进制加减法的思想是类似的:

对于十进制,进行加法运算时逢十进一,进行减法运算时借一当十;

对于二进制,进行加法运算时逢二进一,进行减法运算时借一当二。

下面两张示意图详细演示了二进制加减法的运算过程。

1) 二进制加法:1+0=11+1=1011+10=101111+111=1110

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F914100916142.png

二进制加法示意图

2) 二进制减法:1-0=110-1=1101-11=101100-111=101

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F914104043P9.png

二进制减法示意图

八进制

除了二进制,C语言还会使用到八进制。八进制有0~78个数字,基数为8,加法运算时逢八进一,减法运算时借一当八。例如,数字 0157147336700125430 都是有效的八进制。

下面两张图详细演示了八进制加减法的运算过程。

1) 八进制加法:3+4=75+6=1375+42=1372427+567=3216

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F914144329401.png

八进制加法示意图

2) 八进制减法:6-4=252-27=23307-141=1467430-1451=5757

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F914150Q5A4.png

八进制减法示意图

十六进制

除了二进制和八进制,十六进制也经常使用,甚至比八进制还要频繁。十六进制中,用A来表示10B表示11C表示12D表示13E表示14F表示15,因此有 0~F 16个数字,基数为16,加法运算时逢161,减法运算时借116。例如,数字0169ADF419EA3280A3BC00都是有效的十六进制。注意,十六进制中的字母不区分大小写,ABCDEF也可以写作abcdef

下面两张图详细演示了十六进制加减法的运算过程。

1) 十六进制加法:6+7=D18+BA=D2595+792=D272F87+F8A=3F11

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F914153254337.png

十六进制加法示意图

2) 十六进制减法:D-3=A52-2F=23E07-141=CC67CA0-1CB1=5FEF

http://c.biancheng.net/cpp/uploads/allimg/170914/1-1F91416123IP.png

十六进制减法示意图

猜你喜欢

转载自blog.csdn.net/liubing8609/article/details/82694745