计算机进制之间的转换(2进制、10进制、8进制、16进制)

您所在的位置:网站首页 205转换成八进制 计算机进制之间的转换(2进制、10进制、8进制、16进制)

计算机进制之间的转换(2进制、10进制、8进制、16进制)

2024-07-10 09:13| 来源: 网络整理| 查看: 265

文章目录 10进制转R进制整数除底取余法10进制整数转2进制10进制整数转8进制10进制整数转16进制 小数乘底取整法10进制小数转2进制10进制小数转8进制10进制小数转16进制 10进制实数转R进制 R进制转10进制按权展开求和 2进制转8进制2进制转16进制

10进制转R进制 整数除底取余法

整数部分的除底取余法UML图如下: 在这里插入图片描述

10进制整数转2进制

例如:将10进制数18转成2进制数(10010)的步骤如下: 在这里插入图片描述 将每次的商变为下次的被除数,并且每次取余数插入到结果的左侧,直到商变为0。最终的结果即为对应的二进制数。 验证二进制结果可以见R进制转10进制部分。

10进制整数转8进制

例如:将10进制数168转成8进制数(250)的步骤如下: 在这里插入图片描述

10进制整数转16进制

例如:将10进制数999转成16进制数(3E7)的步骤如下: 在这里插入图片描述

小数乘底取整法

实数小数部分的乘底取整法UML图如下: 在这里插入图片描述

10进制小数转2进制

例如:将小数0.8125转成2进制数(0.1101)的步骤如下: 在这里插入图片描述

注意是将乘积的整数部分依次插入到结果的右侧。

10进制小数转8进制

例如:将小数0.868转成8进制数并保留5位(67432)步骤如下: 在这里插入图片描述

10进制小数转16进制

例如:将小数0.868转成16进制数并保留5位(DE353)步骤如下: 在这里插入图片描述 注意:十六进制ABCDEF分别代表10、11、12、13、14、15

10进制实数转R进制

知道了十进制整数的转换方法与小数的转换方法,那么实数无非就是将这两种方法转的结果结合起来就可以了。

比如将实数18.8125转成2进制数(10010.1101)的步骤如下: 按照前面说的,先将18整数部分除底取余得到结果10010,然后将小数部分0.8125乘底取整得到结果1101,然后用小数点拼接在一起得(10010.1101)。 具体步骤见前面的部分。 10进制实数转其它进制也是类似,不做介绍了。

R进制转10进制 按权展开求和

其它进制数转到10进制很简单,方法就是按权展开求和。 求值公式如下:                       整 数 部 分                                                          小 数 部 分 N = ± ( S k − 1 × d k − 1 + . . . + S 1 × d 1 + S 0 × d 0 ) + ( S − 1 × d − 1 + . . . + S − i × d − l ) \footnotesize ~~~~~~~~~~~~~~~~~~~~~整数部分~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~小数部分\\ N=±(S_{k-1}×d^{k-1}+...+S_{1}×d^{1}+S_{0}×d^{0})+(S_{-1}×d^{-1}+...+S_{-i}×d^{-l})                      整数部分                                                        小数部分N=±(Sk−1​×dk−1+...+S1​×d1+S0​×d0)+(S−1​×d−1+...+S−i​×d−l) d为底数,k是整数部分的位置量,l是小数部分的位置量,而dk-1则是整数部分的数码的位权,d-l则是小数部分的位权。整数部分和小数部分的结果相加就得出以d为底数转换的十进制数了。

例如:将2进制数(10010.1101)转换成十进制数18.8125,其公式如下:                    2 4              2 3              2 2              2 1              2 0                  2 − 1              2 − 2              2 − 3              2 − 4               位 置 量                      1                0                0                1                0           .          1                  1                  0                  1                   2 进 制 数 N = + ( 1 × 2 4 + 0 × 2 3 + 0 × 2 2 + 1 × 2 1 + 0 × 2 0 ) + ( 1 × 2 − 1 + 1 × 2 − 2 + 0 × 2 − 3 + 1 × 2 − 4 ) = 18.8125 \footnotesize \begin{matrix} ~~~~~~~~~~~~~~~~~~2^4~~~~~~~~~~~~2^3~~~~~~~~~~~~2^2~~~~~~~~~~~~2^1~~~~~~~~~~~~2^0~~~~~~~~~~~~~~~~2^{-1}~~~~~~~~~~~~2^{-2}~~~~~~~~~~~~2^{-3}~~~~~~~~~~~~2^{-4}~~~~~~~~~~~~~位置量\\ ~~~~~~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~0~~~~~~~~~~~~~~0~~~~~~~~~~~~~~1~~~~~~~~~~~~~~0~~~~~~~~~.~~~~~~~~1~~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~~~0~~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~~~~2进制数\\ N=+(1×2^{4}+0×2^{3}+0×2^{2}+1×2^{1}+0×2^{0})+(1×2^{-1}+1×2^{-2}+0×2^{-3}+1×2^{-4})=18.8125 \end{matrix}                   24            23            22            21            20                2−1            2−2            2−3            2−4             位置量                    1              0              0              1              0         .        1                1                0                1                 2进制数N=+(1×24+0×23+0×22+1×21+0×20)+(1×2−1+1×2−2+0×2−3+1×2−4)=18.8125​ 其它进制相应的变换底数即可。

2进制转8进制

由于2进制与8进制存在一种关系:2进制中的3位恰好是8进制中的1位。所以只需要按照每3个二进制位一组,转换成10进制数,即可得到8进制数。 例如:将2进制数(11010)转换成8进制数(32)其步骤如下: 从 右 往 左 每 3 位 一 组 , 最 左 边 的 一 组 位 数 可 能 是 1 到 3 个 不 等                                                         11                                                        010                                     每 3 位 一 组           1 × 2 1 + 1 × 2 0                         0 × 2 2 + 1 × 2 1 + 1 × 2 0                2 进 制 求 10 进 制 数 3                                                           2                                               最 终 八 进 制 数 是 32                                           \footnotesize 从右往左每3位一组,最左边的一组位数可能是1到3个不等~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\ ~~~~~~~~~11~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~010~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~每3位一组\\ ~~~~~~~~~1×2^{1}+1×2^{0}~~~~~~~~~~~~~~~~~~~~~~~0×2^{2}+1×2^{1}+1×2^{0}~~~~~~~~~~~~~~2进制求10进制数\\ 3~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\ 最终八进制数是32~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 从右往左每3位一组,最左边的一组位数可能是1到3个不等                                                      11                                                      010                                   每3位一组         1×21+1×20                       0×22+1×21+1×20              2进制求10进制数3                                                         2                                             最终八进制数是32                                         

2进制转16进制

由于2进制与16进制存在一种关系:2进制中的4位恰好是16进制中的1位。所以只需要按照每4个二进制位一组,转换成10进制数(ABCDEF代表10~15),即可得到16进制数。 例如:将2进制数(11010)转换成16进制数(1A)其步骤如下: 从 右 往 左 每 4 位 一 组 , 最 左 边 的 一 组 位 数 可 能 是 1 到 4 个 不 等                                                                1                                                                       1010                                           每 4 位 一 组                         1 × 2 0                                     1 × 2 3 + 0 × 2 2 + 1 × 2 1 + 0 × 2 0                2 进 制 求 10 进 制 数 1                                                                       10 ( A )                                           最 终 16 进 制 数 是 1 A                                           \footnotesize 从右往左每4位一组,最左边的一组位数可能是1到4个不等~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\ ~~~~~~~~~~~~~~~1~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1010~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~每4位一组\\ ~~~~~~~~~~~~~~~~~~~~~~~1×2^{0}~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1×2^{3}+0×2^{2}+1×2^{1}+0×2^{0}~~~~~~~~~~~~~~2进制求10进制数\\ 1~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10(A)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\\ 最终16进制数是1A~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 从右往左每4位一组,最左边的一组位数可能是1到4个不等                                                             1                                                                     1010                                         每4位一组                       1×20                                   1×23+0×22+1×21+0×20              2进制求10进制数1                                                                     10(A)                                         最终16进制数是1A                                         



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3