什么是进制以及进制的转换
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、什么是进制
十进制就是逢十进一:0~9
二进制就是逢二进一:0~1
十六进制。。。:0~9、A~F(可以理解成10~15)
生活中用到进制的例子:
一周七天:七进制
一年十二个月:十二进制
一小时六十分钟:六十进制
电脑中的数据: 二进制
进制的转换
八进制转十进制:八进制0235转为十进制157十六进制转十进制也差不多
83 8281 80
↓↓↓↓
0 2 3 5
0+2×64+3×8+5×1
157
十进制转八进制:十进制27转为八进制33 十进制转六十进制也差不多
8|27 3
8|4 3
反正记住一般,低进制转高进制,就乘加,高进制转低进制,就取余,
除十六进制,我们经常用的就是这四种进制
二进制到十六进制转换
方法:从右向左,四位一段,分别转化,不够四位的补零
意思就是一位十六进制用四位二进制数表示,如果不够四位,前面用零补齐
比如116 = 00012十六进制的1和二进制1 表示形式就是1,不过一般用前面的那种方法表示便于运算
例:01011102→(0010,1110) 左补一个零,便于运算
(2 ,E )16
十六进制转二进制
D2C16= (13 ,2 ,12)16
(1101,0010,1100) = 1101001011002中间那段四位二进制数前面补的两个0不能掉而八进制就是三位一段,类似上方,不过就是三位一段
例:
01011102= (000,101,110) 第一段三位二进制数左补两个零
(0, 5, 6) 0568
321= (3,2,1)
(011,010,001) 110100012
不存在十六进制与八进制的直接相互转化,都是以二进制or 十进制等为中间进制来进行转换的
如:D2C16= 1101001011002= 64548
二进制与十进制的相互转化,不需要让二进制以多位为一段,只需要一位一位的算就好
其他进制也一样
关于小数的转换:
0.6875转换二进制
0 . 6875
× 2
1. 3750
× 2
0.7500 (这里为什么是0.7500,因为一直都是乘的小数点后面的数)
× 2
1.5000
× 2
2.0000
最终二进制为0.101122
提示:转换时有可能是无限循环小数。此时,只需保留到一定的位数即可。如十进制数0.4
二进制转换十进制(小数)
1101.111012= 1×23+1×22+0×21+1×20+1×2-1+1×2-2+1×2-3+0×2-4+1×2-5= 13.9062510
十六进制转二进制(小数)
101110.1011112
(0010 1110 .1011 1100)2
↓↓↓↓
(2 E B C)16
最终结果:2E.BC16
将二进制数转换为八进制数与转换成十六进制数类似,只是改为每三位二进制数为一段,不足三位,则最高位前补零,然后写出对应的八进制数即可
输出输入控制符
%d %i------------------两个都是十进制的控制符
%o %#o-------------------八进制
%X %x----------------------十六进制