noip/信息技术选考 进制转化

来源:互联网 发布:冯巩演技 知乎 编辑:程序博客网 时间:2024/05/16 17:10

R进制化10进制

一句话的概括
按权展开,最低位(最右边)的权是0次方。

整数的转化
以二进制为例:
每一位都乘上2n这里的n称为权,跟当前数位的位置有关系。
对于任何的进制,从右往左数第n+1位的权都是n。
例:
(11010110)2=1×27+1×26+0×25+1×24+0×23+1×22+1×21+0×20=(214)10
最右边的0权是0,因此有0×20;第二位的1,权是1,所以有1×21;第三位权是2,所以有1×22……。

再举几个例子:
八进制转十进制:
(2365)8=2×83+3×82+6×81+5×80=(1269)10
十六进制转十进制:
(4BF)16=4×162+B×161+F×160=(1215)10

小数的转化
小数的转化就是顺延整数转化的方法。
我们知道,小数点左边第一位的权是0,第二位的权是1,……
所以顺推,小数点右边第一位的权就是-1,第二位权是-2,……
(110.011)2=1×22+1×21+0×20+0×21+1×22+1×23=(6.375)10

再举几个例子:
(5.76)8=5×80+7×81+6×82=(5.96875)10
(D.1C)16=D×160+1×161+C×162=(13.109375)10

10进制化R进制

基数
二进制的基数是2,十进制的基数是10,八进制的基数是8。

一句话的概括
整数除以基数取余,小数乘基数取整。

整数的转化
用你需要转化的10进制整数不停地除以基数,记录余数,直到商是0,最后把记录出来的余数倒序排列就是答案了。
这里写图片描述

小数的转化
同样,小数的转化是顺延整数的方法的。整数的转化中是整数不断除以基数,那么小数的转化中是把小数部分取出来之后,不断乘基数,乘完之后记录整数部分,并记录,最后直到乘到的积小数部分为0为止。(如果不能乘到积为0,那么就可以采用保留位数的方法,需要保留几位小数就乘几次)。最后把整数部分顺序排列。
这里写图片描述

原创粉丝点击