当前位置:网站首页> 体育百科 > 十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

更新时间:2022-10-02 10:31:10

从大学开始系统的接触计算机专业,到现在已经过去十几年了,今天整理一下基础的进制转换,希望给还在上高中的表妹一个入门的引导,早日熟悉这个行业。

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

一、二进制、八进制、十进制和十六进制是如何定义的?

二进制是Binary,简写为B,二进制只有0和1两个值,计算方法是逢二进一。比如01B 01B(其中B是Binary的首字母,即二进制的简写),结果就是10B,因为逢二进一,低位的1相加后得2就向高位进1;

八进制是Octal,简写为O,八进制是指有0~7这8个值的表示法,计算方法是逢8进1。比如17O 23O=42O,因为逢8进一,低位的7 3=10,10在八进制就是12,加上原来高位的1 2,结果就是42O;

十进制是Decimal,简写为D,十进制即咱们日常使用的0~9。咱们日常做的计算都是十进制的,计算方法是逢十进一,比如21D 11D=32D;

十六进制是Hexadecimal,简写为H,十六进制用数字0-9和字母a-f(或其大写A-F)表示0到15,计算方法是逢16进1,比如1DH 25H=42H,因为逢16进一,低位的D相当于十进制的13,而5即可以看成是十进制的5,相加得18,而18-16=2,因此低位的值为2,高位的值即1 2再加上进位1即得4,高位结果就是4,最后结果是42H;

其中计算机采用的是二进制作为基础,在此基础上拓展了八进制、十进制、十六进制等。

二、为什么二进制是基础?

二进制如今主要⽤在电⼦技术的数字电路中。⽐如我们经常使⽤的计算机能够识别的语⾔就是二进制语⾔。数字电路中的⾼、低电平;导通、截⽌;开、关;有、无;真、假等等都是二进制表⽰,二进制的逻辑电路使⽤0和1表⽰。

采用二进制主要有以下几个原因:

1、技术实现简单。计算机是由逻辑电路组成,逻辑电路通常只有两种状态,开关的接通和断开,正好用“0”“1”表示。  

2、运算规则简单,两个二进制数的和、积运算组合简单。二进制数加法和乘法仅各有3条运算规则( 0+0=0,0+1=1,1+1=1 0和0×0=0,0×1=0,1×1=1 )运算规则简单,有利于简化内部结构,提高运算速度。   

3、适合逻辑运算,二进制只有两个数字,和逻辑代数中的“真”“假”相吻合。  

4、易于进行转换,二进制数能很容易地转换成八进制、十六进制,也能转换成十进制。  

三、为什么有了二进制还需要使用八进制、十进制和十六进制?

八进制和⼗六进制在现实主要⽤在电⼦技术、计算机编程等领域,这是为了配合二进制⽽使⽤的。上⾯我们说过二进制是计算机所能识别的最直接语⾔,但是二进制的位数太多,不好记录,这时就需要把二进制转化为八进制或十六进制。举个例子,买一件商品花费1百块钱,可以使用1元的人民币支付,也可以使用1百元的人民币支付,相对来说,使用百元更方便一点。

⼗进制主要在日常⽣活中,⽽二进制、八进制、十六进制主要⽤在电⼦技术⾏业。二进制是数字电路、处理器等最直接的语⾔;

八进制以及十六进制都是进⾏存储记忆,但八进制较少使⽤。十六进制⽤来表⽰处理器⾥的寄存器、存储器的地址、数据。

四、进制之间如何转换?

主要思路:二进制数,八进制数、十六进制数可以采用按权展开法转化为十进制数,十进制转化为R进制要分为两部分【这里R进制是泛指,可以代表二进制、八进制、十六进制等】,其中整数部分要除R取余,直到商为0,小数部分要乘R取余直到得到整数。

1. 十进制转R进制

1.1. 十进制转二进制

(1)十进制整数转二进制

十进制整数转换成二进制采用“除2倒取余法”,即将十进制整数除以2,得到一个商和一个余数;再将商除以2,又得到一个商和一个余数;以此类推,直到商等于零为止。

例题: 175D = ______ B

解析:如下图所示,将175除以2,得余数,直到不能整除,然后再将余数从下至上倒取。得到结果:10101111B。

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

(2)十进制小数转二进制

十进制小数转换成二进制小数采用 “乘2取整,顺序排列” 法。

具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

例题: 0.68D = ______ B(精确到小数点后5位)

解析:如下图所示,0.68乘以2,取整,然后再将小数乘以2,取整,直到达到题目要求精度。得到结果:0.10101B

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

1.2. 十进制转八进制

思路和十进制转二进制一样,参考如下例题:

例题: 10.68D = ______ Q(精确到小数点后3位)

解析:如下图所示,整数部分除以8取余数,直到无法整除。小数部分0.68乘以8,取整,然后再将小数乘以8,取整,直到达到题目要求精度。得到结果:12.534Q

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

1.3. 十进制转十六进制

思路和十进制转二进制一样,参考如下例题:

例题: 25.68D = ______ H(精确到小数点后3位)

解析:如下图所示,整数部分除以16取余数,直到无法整除。小数部分0.68乘以16,取整,然后再将小数乘以16,取整,直到达到题目要求精度。得到结果:19.ae1H

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

2. R进制转十进制

2.1. 二进制转十进制

方法为:把二进制数按权展开、相加即得十进制数。(具体用法如下图)

例题: 1011 0111B = ______ D

解析:1×27 0×26 1×25 1×24 0×23 1×22 1×22 1×20 = 128 0 32 16 0 4 2 1=183

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

2.2. 八进制转十进制

八进制转十进制的方法和二进制转十进制一样。

例题: 302Q = ______ D

302.46Q = ______ D

解析:302Q = 3×8² 0×8¹ 2×8⁰ = 192 0 2 = 194D

302.46Q = 3×8² 0×8¹ 2×8⁰ 4×8⁻¹ 6×8⁻² = 192 0 2 0.5 0.09375= 194.59375D


2.3. 十六进制转十进制

例题: 23daH = ______ D

解析:23daH = 2×163 3×162 d×161 a×160 = 9178D

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

3. 二进制转八进制

二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位。

例题: 1010 0100B = ____Q

解析:1010 0100B = 010 001 100B=244Q

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

4. 二进制转十六进制

二进制转换成八进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。

例题: 1010 0100B = ____H

解析:1010 0100B = 1010 0100 B = a4H

十六进制数怎么转换(二进制、八进制、十进制和十六进制等常用数制及其相互转换)

总结:二进制转八进制或者二进制转换成十六进制,也可以先转换成十进制,再转换成目标进制。