一.本文所涉及的内容() 二.背景()
先前我运用SQL技术将十进制整数转换成了三十六进制,相关SQL代码可参照SQL进制转换函数。实际上,这一转换原理是基于二进制、八进制、十进制和十六进制之间的转换公式。进制转换是基础数学知识的一部分,然而我发现网络中鲜有文章能够清晰、简洁、明了地阐述这一概念。正因如此,我产生了撰写这篇文章的念头,旨在帮助你消除对进制转换的担忧与恐惧。
[id_2[]82468]
(:进制关系结构图)
本图将分为四个部分进行详细剖析,对每一部分,我们都将采用图文并茂的方式进行深入讲解。
二、八、十六进制转换为十进制;十进制转换为二、八、十六进制;二进制与八、十六进制之间相互转换;八进制与十六进制之间相互转换;三.进制转换的计算方法。
在数值表达中,通过在数字序列后附加特定的字母来标识其采用的数制。其中,字母"B"代表二进制数制,"O"或"Octal"代表八进制数制,"D"或省略表示十进制数制,而"H"则表示十六进制数制。比如,53B等同于53O,等同于43D,等同于2BH。
(一) (二、八、十六进制) → (十进制)
(:其他进制转换为十进制)
计算二进制数时,需从最低位开始,即从右侧向左数。每个位的权值依次为2的0次方、2的1次方、2的2次方,以此类推。将所有位上的数值乘以其对应的权值,然后将这些乘积相加,得到的总和即为该二进制数的十进制表示。
例:将二进制的()B转换为十进制的步骤如下:
1. 第0位 1 x 2^0 = 1;
2. 第1位 1 x 2^1 = 2;
3. 第2位 0 x 2^2 = 0;
4. 第3位 1 x 2^3 = 8;
5. 第4位 0 x 2^4 = 0;
6. 第5位 1 x 2^5 = 32;
进行数值读取,并将所得数值累加,计算过程为1加2加0加8加0加32,总和为43,因此,该数值用十六进制表示即为(43)D。
计算八进制数时,需从最右侧的低位开始,权值依次为8的0次方、8的1次方、8的2次方,以此类推,权值随位数递增。将各数位上的数值与其对应的权值相乘,再将所得乘积相加,得到的总和即为该八进制数的十进制表示。
八进制计数法中,每当数值达到8时,便向前一位进位,而八进制数字则通过0至7这八个数字来表示数值。
例:将八进制的(53)O转换为十进制的步骤如下:
1. 第0位 3 x 8^0 = 3;
2. 第1位 5 x 8^1 = 40;
进行读数操作,将所得数值进行累加,计算得出3加上40等于43,因此(53)O转换为十进制后等于(43)D。
计算方法如下:首先,将十六进制数从右至左依次编号,编号从0开始;接着,第0位的权值是16的0次幂,第1位的权值是16的1次幂,第2位的权值是16的2次幂,以此类推,权值逐渐增大;最后,将各个位上的数值与其对应的权值相乘,并将所有乘积相加,得到的总和即为该十六进制数的十进制表示。
十六进制就是逢16进1,十六进制的16个数为。
例:将十六进制的(2B)H转换为十进制的步骤如下:
1. 第0位 B x 16^0 = 11;
2. 第1位 2 x 16^1 = 32;
进行读数操作,将所得数值进行累加,11与32相加等于43,因此(2B)的十六进制表示为(43)D。
(二) (十进制) → (二、八、十六进制)
(:十进制转换为其它进制)
采取除以2取余的方法,即每次对整数进行除以2的操作,得到的余数即为当前位上的数值,然后继续用商除以2,得到的余数是前一位的数值,如此循环,直至商变为0。在读取结果时,应从最后一个余数开始,依次向前读取,直至第一个余数。
例:将十进制的(43)D转换为二进制的步骤如下:
1. 将商43除以2,商21余数为1;
2. 将商21除以2,商10余数为1;
3. 将商10除以2,商5余数为0;
4. 将商5除以2,商2余数为1;
5. 将商2除以2,商1余数为0;
6. 将商1除以2,商0余数为1;
进行读数时,需注意,由于最低位数字是通过连续除以2所得,故其位于最高位。故应从最低位的余数开始,逆向读取数字,即(43)D转换为()B。
(:图解十进制 → 二进制)
采用除8取余的方法,即每次对整数进行除以8的操作,得到的余数即为当前位上的数值,接着用上一次的商继续除以8,得到的余数则代表前一位的数值,如此循环往复,直至商数变为0。在读取结果时,需从最后一个余数开始,依次向前,直至最前面的余数。
例:将十进制的(796)D转换为八进制的步骤如下:
1. 将商796除以8,商99余数为4;
2. 将商99除以8,商12余数为3;
3. 将商12除以8,商1余数为4;
4. 将商1除以8,商0余数为1;
进行读数时,需注意,该数值的最后一位是通过连续除以8多次计算得出的,故而它位于最高位。在读取数字时,应从最低的余数开始向前进行,因此,1434这个数字实际上等同于(796)D,也即是(1434)O。
(:图解十进制 → 八进制)
采用间接途径,首先将十进制数值转换为二进制形式,接着再将该二进制数值转化为八进制数值。
(:图解十进制 → 八进制)
采用除16取余的方法,具体操作是每次将整数的部分进行除以16,得到的余数即为当前位上的数值,然后继续用商去除以16,得到的新的余数即为下一位的数值。如此循环往复,直至商的值为0。在读取结果时,应从最后一位的余数开始,依次向前读取,直至最前面的余数。
例:将十进制的(796)D转换为十六进制的步骤如下:
对796进行除以16的运算,得到的商为49,余数为12,这与十六进制数C相对应。
2. 将商49除以16,商3余数为1;
3. 将商3除以16,商0余数为3;
进行读数时,需注意,由于最后一位数字是通过连续除以16得来的,所以它代表了最高位。因此,在读取数字时,应从最后的余数开始向前推算,即31C,这等同于十进制中的(796),用十六进制表示即为(31C)H。
(:图解十进制 → 十六进制)
采用间接转换方式,首先将十进制数值转换为二进制形式,接着再将该二进制数值转换成十六进制表示。
(:图解十进制 → 十六进制)
(三) (二进制) ↔ (八、十六进制)
(:二进制转换为其它进制)
操作步骤如下:首先,采用三合一法则,以二进制小数点为界,向左(或向右)每三位进行分组,然后将每组的三位二进制数按照权值相加,最后,保持小数点位置不变,将所得结果依次排列,从而得到所需的八进制数字。若在左侧(右侧)截取三位数字,遇到最高(最低)位数字时,若不足三位,则可在小数点左侧(右侧),也就是整数部分的最高(最低)位,添上0,直至达到三位。
例:将二进制的(.)B转换为八进制的步骤如下:
1. 小数点前111 = 7;
2. 010 = 2;
3. 11补全为011,011 = 3;
4. 小数点后010 = 2;
5. 011 = 3;
6. 1补全为100,100 = 4;
进行数值读取,需从数值的最高位开始向下逐位读取,例如:十进制数(327.234)转换成八进制表示为(327.234)O。
(:图解二进制 → 八进制)
二进制与八进制编码对应表:
二进制
八进制
000
001
010
011
100
101
110
111
操作步骤如下:首先,将八进制数拆分为三个部分;其次,将每一部分转换成对应的二进制数,每个二进制数由三位组成;接着,按照二进制数的权位进行相加;最后,保持小数点的位置不变。
例:将八进制的(327)O转换为二进制的步骤如下:
1. 3 = 011;
2. 2 = 010;
3. 7 = 111;
4. 读数,读数从高位到低位,,即(327)O=()B。
(:图解八进制 → 二进制)
操作步骤如下:首先,采用四合一的方法,即以二进制小数点为界,向左(或向右)每四位进行一次取值,随后将这四位二进制数按照权重进行相加,最后,保持小数点位置不变,将所得结果依次排列,最终得到的数字即为所需的十六进制数。若取左(右)侧四位数字,遇最高(低)位不足四位时,可在小数点左侧(右侧),即整数最高(低)位添设0,直至达到四位。
例:将二进制的()B转换为十六进制的步骤如下:
1. 0111 = 7;
2. 1101 = D;
3. 读数,读数从高位到低位,即()B=(D7)H。
(:图解二进制 → 十六进制)
采取分四步的策略,首先将一个十六进制数字拆分为四个二进制数字,接着按照权重将这些二进制数字相加,以还原出对应的十六进制数值,同时保持小数点的位置不变。
例:将十六进制的(D7)H转换为二进制的步骤如下:
1. D = 1101;
2. 7 = 0111;
3. 读数,读数从高位到低位,即(D7)H=()B。
(:图解十六进制 → 二进制)
(四) (八进制) ↔ (十六进制)
(:八进制与十六进制之间的转换)
转换步骤如下:首先,将八进制数转换成二进制数;接着,将得到的二进制数转换成十六进制数;在整个转换过程中,小数点的位置需要保持不变。
例:将八进制的(327)O转换为十六进制的步骤如下:
1. 3 = 011;
2. 2 = 010;
3. 7 = 111;
4. 0111 = 7;
5. 1101 = D;
进行数值读取,需从最高位至最低位依次读取,例如在D7位置,其对应的十进制值为327,十六进制表示为(D7)H。
(:图解八进制 → 十六进制)
操作步骤包括:首先,将十六进制数值转换成二进制形式;接着,保持小数点的位置不变;最后,将得到的二进制数转换成八进制数。
例:将十六进制的(D7)H转换为八进制的步骤如下:
1. 7 = 0111;
2. D = 1101;
3. 0111 = 7;
4. 010 = 2;
5. 011 = 3;
进行数值读取,需从数值的最高位依次向下,所读数值为327,这表示十六进制中的(D7)等于十进制中的(327)。
(:图解十六进制 → 八进制)
扫一扫在手机端查看
-
Tags : 八进制转十六进制公式
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。


客服1