进制转换算法--java实现

首先区分

2进制  只有0和1组成          如:010101
8进制  以0开头,0~7组成        如:012345
10进制 以1~9开头,0~9组成        如:100
16进制 以0X开头,0~9或者a~f组成   如:0x12c

进制相互转换:

十进制转二进制

方法为:十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。

二进制转十进制

方法为:把二进制数按权展开、相加即得十进制数。

二进制转八进制

方法为:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)。

八进制转成二进制

方法为:八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零。

二进制转十六进制

方法为:与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(注意事项,4位二进制转成十六进制是从右到左开始转换,不足时补0)

 

十六进制转二进制

方法为:十六进制数通过除2取余法,得到二进制数,对每个十六进制为4个二进制,不足时在最左边补零。

 

十进制与八进制与十六进制之间的转换

十进制转八进制或者十六进制有两种方法

第一:间接法—把十进制转成二进制,然后再由二进制转成八进制或者十六进制。这里不再做图片用法解释。

第二:把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为止。

八进制或者十六进制转成十进制

方法为:把八进制、十六进制数按权展开、相加即得十进制数。

十六进制与八进制之间的转换

八进制与十六进制之间的转换有两种方法第一种:他们之间的转换可以先转成二进制然后再相互转换。第二种:他们之间的转换可以先转成十进制然后再相互转换。这里就不再进行图片用法解释。

 文转:https://jingyan.baidu.com/article/495ba84109665338b30ede98.html

https://blog.csdn.net/m0_37961948/article/details/80438113

发布了106 篇原创文章 · 获赞 139 · 访问量 40万+

猜你喜欢

转载自blog.csdn.net/mingyuli/article/details/88657921
今日推荐