codecamp

进制数转换——非按权展开

今天,小编我来跟大家分享分享进制数转换的知识,提起进制数转换,大家首先想到的就是正乘取整法、倒除取余法法和按权展开法吧。对于非十进制数转换成十进制数,大家用的大概都是按权展开吧,因为这是最容易计算的,只需要所学的十进制算法即可解决,完全没有涉及到其他进制数算法。可是按权展开有一个弊端,就是非十进制数位数较多的时候转换起来计算量比较大。小编我就来给大家分享怎样绕过按权展开直接进行进制数转换。

1、确定被转进制数是几进制
2、确定转换后的进制数是几进制
3、确定转换前后进制数在被转进制数内的关系
4、以十进制为基础建立被转进制数的算法
5、开始转换,整数部分使用倒除取余法,小数部分使用正乘取整法
6、分别对应
7、转换完成。
例1:八进制数6147357321转换为十六进制数【注:选取八进制数和十六进制数之间互转是为了便于验证】
解:1、被转进制数为八进制
2、转换后进制数为十六进制数
3、八进制数对应十进制数中的16为20
4、建立算法:

2*1=2
2*2=4
2*3=6
2*4=10
2*5=12
2*6=14
2*7=16
5、开始转换

倒除取余法
6、分别对应
八进制【十六进制】:3【3】、1【1】、11【9】、15【D】、16【E】
7、转换完成
八进制数6147357321对应的十六进制数为319DDED1
例二:十进制数0.1转换为二进制数
解:步骤如上:

正乘取整法
所以十进制数0.1对应的二进制数为:0.000110011001100110011......
通过进制数转换,我们能发现有趣的等式,如:

123
快来试试吧,更多有趣的等式等待着你去发现哦!


科趣小学堂群组:https://www.w3cschool.cn/group/kdbnxe71.html

电脑端登陆后点击有效,欢迎加入群组哦!

Windows恢复环境的创建和配置
人与竹子
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

寓言故事类

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }