【软考学习1】数据表示——进制转换,R进制转10进制 和 10进制转R进制

简介: 【软考学习1】数据表示——进制转换,R进制转10进制 和 10进制转R进制


进制转换是软考必考的项目,首先对其进行复习。

进制转换模块可分为两块——R进制转10进制、10进制转R进制

零、使用场景

日常生活中通常使用十进制,但计算机底层都是采用二进制计算,所以会涉及到进制转换。


一、十进制转R进制(短除法)

样例一

除法的计算公式为 被除数 ÷ 除数 = 商 + 余数

比如要将 94 转换为 3 进制,过程如下:

被除数 94 除以 3,商为 31,余数为 1

被除数 31 除以 3,商为 10,余数为 1

被除数 10 除以 3,商为 3,余数为 1

被除数 3 除以 3,商为 1,余数为 0

被除数 1 除以 3,商为 0,余数为 1

所以从下到上,答案就是10111,如下图所示。

样例二

比如要将 68 转换为 6 进制,过程如下:

被除数 68 除以 6,商为 11,余数为 2

被除数 11 除以 6,商为 1,余数为 5

被除数 1 除以 6,商为 0,余数为 1

所以从下到上,答案就是152,如下图所示。

程序验证

结果可以采用 Java 程序验证,相关代码如下。

public static void main(String[] args) {
    // 转换前数字
    Integer number = 94;
    // 转换结果
    String ans = Integer.toString(number,3);
    // 94 转换为 3进制,答案为 10111
    System.out.println(ans);
}

二、R进制转十进制(按权展开法)

将 R 进制数的每一位拆为幂次方形式,幂的底数为 R,指数为 K,K 是数位和小数点的有向距离,左边为正,右边为负。

样例三

16进制数 6A810 进制

第一位 6 ,拆分为 6 乘 162 次方。

第二位 A(即10),拆分为10161 次方。

第三位 8,拆分为 8160 次方。

再将所有结果相加,最终得到 1701 的答案,如下图所示。

样例四

比如13进制数 8B7 转10进制

第一位 8 ,拆分为 8132 次方。

第二位 B(即11),拆分为11 乘 131 次方。

第三位 7,拆分为 7130 次方。

再将所有结果相加,最终得到 1502 的答案,如下图所示。

程序验证

结果可以采用 Java 程序验证,相关代码如下。

public static void main(String[] args) {
    String number = "8B7";
    Integer ans = Integer.parseInt(number,13);
    System.out.println(ans);
}

三、总结

今天对进制转换进行了学习,掌握了 R 进制转 10 进制10进制转 R 进制的方法。


目录
打赏
0
0
0
0
397
分享
相关文章
进制学习3
进制学习3
81 1
计算机基础(2)——进制与进制转换
进制也就是进位计数制,是人为定义的带进位的计数方法。 对于任何一种进制---X进制,就表示每一位置上的数运算时都是逢X进一位。十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一,以此类推,x进制就是逢x进位。
123 2
计算机基础(2)——进制与进制转换
|
5月前
二进制转换为十进制
【10月更文挑战第27天】二进制转换为十进制。
157 8
|
5月前
八进制转换为十进制
【10月更文挑战第27天】八进制转换为十进制。
140 2
|
11月前
进制转换(m 进制 x 转换为 n 进制的数)
进制转换(m 进制 x 转换为 n 进制的数)
120 0
|
11月前
|
【二进制转换】十进制 转 二进制 (含相关题型)
【二进制转换】十进制 转 二进制 (含相关题型)
108 0
【JavaSE专栏25】进制转换的那些事,十进制转R进制、R进制转十进制是什么操作?
【JavaSE专栏25】进制转换的那些事,十进制转R进制、R进制转十进制是什么操作?
190 0
二进制、八进制、十六进制与十进制的相互关系
二进制、八进制、十六进制与十进制的相互关系
进制转换(二进制,八进制,十进制,十六进制)涵盖整数与小数部分,内容的图片全为手写【详细图解】
进制转换(二进制,八进制,十进制,十六进制)涵盖整数与小数部分,内容的图片全为手写【详细图解】
十进制转换为2进制
十进制转换为2进制
156 0
十进制转换为2进制
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等