二进制、八进制、十进制与十六进制的特征对照表如表所示:
进制 基数 数码 计数规则 数的表示法
十进制 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
分享到:
相关推荐
本文将从基本概念到进制数转换规则,详细解释二进制、八进制、十进制、十六进制之间的转换方法。 一、基本概念 在计算机科学中,最小的数据单位是位(bit),它是计算机内部的基本存储单位,一个位可以存储0或1两...
* 十进制与二进制之间的转换 + 十进制转换为二进制:除以 2 直到商为 0,逆序取余数 + 二进制转换为十进制:乘以 2 的幂次方 * 十进制与八进制之间的转换 + 十进制转换为八进制:除以 8 直到商为 0,逆序取余数 ...
二进制与八进制之间的转换可以使用取三合一法,即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,得到的数就是一位八位二进制数,然后,按顺序进行排列,小数点的位置不变,...
### 不同进制数之间的转换 #### 进制转换概览 ...通过以上示例和步骤,我们可以清楚地看到如何在不同进制之间进行有效的转换。这些转换是计算机科学基础的重要组成部分,也是理解和实现数据表示的关键技能。
本文将深入探讨这四种进制系统以及它们之间的相互转换方法。 **一、进制系统** 1. **二进制(Binary)**: 是最基本的进制系统,只有两个数字,0和1。计算机内部所有的数据都是以二进制形式存储和处理的,因为它的...
本文将详细探讨浮点数与十进制数之间的转换原理及其在实际应用中的重要性。 首先,浮点数是一种表示实数的方式,特别适合于科学计算,因为它可以表示广泛的数值范围,并且精度相对较高。在计算机内部,浮点数通常...
在计算机编程中,经常需要进行二进制与十六进制之间的转换,以便于数据处理和存储。给定的代码是用C语言实现的一个程序,用于将输入的二进制数转换为对应的十六进制数。下面详细解释这个程序的关键点: 1. `convert...
本课程设计的重点是探讨如何在汇编语言中实现二进制数与十进制数之间的转换。 首先,我们要理解二进制数系统,它是计算机内部运算的基础。二进制数由0和1组成,每一位代表2的幂次。例如,二进制数1011表示1*2^3 + 0...
任意进制数之间的转化,使用栈的来实现,先转化为十进制数,然后目标进制数。
本实验旨在通过汇编语言来实现八进制数与十进制数之间的相互转换,加深对这两种基本数制的理解,并熟练掌握汇编语言的基本编程技巧。 #### 实验目的 1. **掌握汇编语言的基本语法和编程技术**:通过实验进一步熟悉...
在实际应用中,浮点数和十六进制数之间的转换也常常出现在各种编程语言中,例如C、C++、Python等。程序员需要了解这些转换的原理和方法,以便正确处理数值数据。因此,这样一个转换工具不仅提供了一个实用的功能,也...
在我们设计的仪表中采用PIC系列单片机,碰到了浮点数的运算问题,查阅其有关资料发现,其浮点数的格式及其与十进制数之间的转换,与我们常用的MCS-51单片机所提供的三字节、四字节浮点数完全不同,本文将说明其...
本文将详细介绍不同数字进制之间的转换方法,包括二进制、八进制、十进制与十六进制等常见进制之间的相互转换。通过具体的算法实现和实例分析,帮助读者深入理解进制转换的基本原理及其在计算机科学中的应用。 ####...
无论是在硬件设计、软件开发还是数据分析中,我们经常需要在不同进制之间进行转换。这个“任意进制之间的转换源代码”显然是一个C++编写的程序,因为它是用VC6.0(Visual C++ 6.0)开发的,VC6.0是Microsoft公司推出...
进制转换主要包括二进制、八进制、十进制和十六进制之间的互相转换。下面我们将详细讨论这些进制转换的方法。 1. 十进制到二进制的转换:使用“短除法”,即将十进制数连续除以2,每次得到的余数从下往上组成二进制...
在实际工作中,我们有时会使用工具来进行这些转换,如提到的"ASCII及进制转换 V4.0.exe",它提供了一个便捷的界面,帮助用户快速进行ASCII、16进制和10进制之间的转换,避免了手动查询和计算的繁琐。这样的工具对于...
下面将详细阐述各种进制之间的相互转换方法。 一、二进制(Binary)与十进制(Decimal)转换 1. 二进制转十进制:可以采用按权展开法,即将每个二进制位乘以其权重(2的n次方),然后将所有结果相加得到十进制数。...
本资源是一个详细的二进制十进制数转换表,提供了从0到155之间的十进制数和对应的二进制数。该表格按照顺序排列,方便用户快速查找和转换。 在计算机科学和信息技术领域,二进制数和十进制数是两种常用的数制。二...
在计算机科学中,将一个十进制整数转换为其他任意进制(如二进制、八进制、十六进制或介于二至九之间的任何其他进制)是常见的编程任务。这种转换通常用于数据表示、计算以及理解计算机内部工作原理。下面我们将详细...