二进制、八进制、十进制与十六进制的特征对照表如表所示:
进制 基数 数码 计数规则 数的表示法
十进制 10(D) 0~9 逢十进一 (1234)10 或1234D
二进制 2(B) 0、1 逢二进一 (101)2 或101B
八进制 8(O) 0~7 逢八进一 (3467)8 或3467O
十六进制 16(H) 0~9、A~F
(A=10,B=11,C=12,D=13,E=14,F=15) 逢十六进一 (46AF)16 或46AFH
八进制数:C语言中是在数的前面加数字O表示
十六进制数:C语言中是在数的面前加数字0和字母X即0X或0x来表示
(1)整数部分转换
把要转换的十进制数的整数部分不断除以基数2,并记下余数,直到商为0为止。
(N)10=(123)10
123/2=61 (a0=1) 最低整数位
61/2=30 (a1=1)
30/2=15 (a2=0)
15/2=7 (a3=1)
7/2=3 (a4=1)
3/2=1 (a5=1)
1/2=0 (a6=1) 最高整数位
(N)10=(1111011)2
二进制数、八进制数和十六进制数的转换
(2)小数部分转换
对于被转换的十进制数的小数部分则应不断乘以基数2,并记下其整数部分,直到结果的小数部分为0为止。
(N)10=(0.8125)10
0.8125*2=1.625 (b1=1) 最高小数位
0.625*2=1.25 (b2=1)
0.25*2=0.5 (b3=0)
0.5*2=1.0 (b4=1) 最低小数位
(N)10=(0.1101)2
在十进制的小数部分转换中,有时连续乘以2不一定能使小数部分等于0,这说明该十进制小数不能用有限位二进制小数表示。这时,只要取足够多的位数,使其误差达到所要求的精度就可以了。
(N)10=(123)10
123/8=15 (a0=3) 最低整数位
15/8=1 (a1=7)
1/8=0 (a2=1) 最高整数位
(N)10=(173)8
(N)10=(0.8125)8
0.8125*8=6.5 (b1=6) 最高小数位
0.5*8=4.0 (b2=4) 最低小数位
(N)10=(0.64)8
同理十六进制数也是如此
其实,BCD编码在中国大陆称之为“8421码”,用8421码二进制数与八进制数、十进制数、十六进制数相互转换。
1.二进制数–>八进制数
从小数点开始,分别向左右按3位分组转换成对应的八进制数字字符,最后不满3位的,则需补0
具体方法为:
二进制数: 001 101 101 . 101 010
八进制数: 1 5 5 5 2
(001101101.101010)2=(155.52)8
2.八进制数–>二进制数
将每位八进制数用3位二进制数表示即可。
将八进制数(345.64)8转换成二进制数
具体方法为:
八进制数: 3 4 5 . 6 4
二进制数: 011 100 101 110 100
(345.64)8=(11100101.1101)2
3.二进制数–>十六进制数
从小数点开始,分别向左、右按4位分组转换成对应的十六进制数字字符,最后不满4位的,则需补0.
将二进制数(1101101.10101)2转换成十六进制数
具体方法为:
二进制数: 0101 1101 . 1010 1001
十六进制数: 5 D A 9
(1011101.10101001)2=(5D.A9)16
4.十六进制数–>二进制数
将每位十六进制数用4二进制数表示即可。
将十六进制数(A8D.6C)16 转换成二进制数。
具体方法:
十六进制数: A 9 D . 7 C
二进制数: 1010 1001 1101 0111 1100
(A9D.7C)16=(101010011101.011111)2
分享到:
相关推荐
进制数转换二进制八进制十进制十六进制之间转换方法PPT学习教案.pptx
可实现16进制 十进制 八进制与二进制数之间的相互转换
任意进制数之间的转化,使用栈的来实现,先转化为十进制数,然后目标进制数。
二进制数和十六进制数的相互转换 c6下完美运行通过 #include #include #include #include void convert(char *input, char *output) { int len1 = strlen(input); //输入二进制数位数 int pos = len1 / 4 + 1...
整理的一份关于不同进制数之间的转换方法。
在我们设计的仪表中采用PIC系列单片机,碰到了浮点数的运算问题,查阅其有关资料发现,其浮点数的格式及其与十进制数之间的转换,与我们常用的MCS-51单片机所提供的三字节、四字节浮点数完全不同,本文将说明其...
二进制八进制十进制十六进制之间的转换算法.pdf
总结进制数转换二进制八进制十进制十六进制之间转换方法PPT学习教案.pptx
它是指在不同进制系统之间进行数值表示的转换,例如十进制、 二进制、八进制、十六进制等。下面是计算机各种进制转换的练习题,旨在帮助学习者更好地理解和掌握进制转换的知识。 一、十进制与二进制的转换 1. 十...
进制之间的转换函数,包括: 1.十进制转换为二进制 2.16进制转ASCII码 3.十进制转换为十六进制 4.16进制转ASCII码 5.二进制转换为十进制 6.二进制转换为十进制,定长转换 7.二进制转换为十六进制,定长转换 8.八进制...
用数据结构栈实现的数制转换,将十进制数转换为二进制,八进制,十六进制。
C++写的顺序栈将一个非负的十进制整数N转换为对应的B进制数。 可进行1-16进制之间的数制转换。
设计算法把一个十进制整数转换为二至九进制之间的任意进制数输出。
将一个十进制的数转换为相应的十六进制数,实现不同格式进制数之间的转换。
把一个十进制整数转换为2至9进制之间的任意进制数输出
Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制之间的转换Java SE程序 进制...
"二进制、八进制、十进制、十六进制之间的转换算法" 在计算机科学中,数字系统是计算机处理信息的基础。常见的数字系统有二进制、八进制、十进制和十六进制等。这些数字系统之间的转换是计算机科学中非常重要的一...
ascii 16进制 10进制之间转换 很不错的一个小软件!避免手动查询翻阅的麻烦!
十进制数和二进制数之间的相互转换教案.pdf