前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >查表法实现十进制转化成其他进制

查表法实现十进制转化成其他进制

作者头像
咕咕星
发布2020-08-19 15:23:26
5000
发布2020-08-19 15:23:26
举报
文章被收录于专栏:咕咕星

首先了解十进制转化成二级制的原理

156的二进制为: 156 % 2 = 78 …… 0 83 % 2 = 39 …… 0 39 % 2 = 19 …… 1 19 % 2 = 9 …… 1 9 % 2 = 4 …… 1 4 % 2 = 2 …… 0 2 % 2 = 1 …… 0 1 % 2 = 0 …… 1 从下到上看即为 10011100

100111000转八进制实际上就是 00-000-000-000-000-000-000-000-010-011-100 倒数第一组数110 的十进制即:4 倒数第二组数011 的十进制即:3 倒数第三组数010 的十进制即:2 从下到上看即为 234

156的八进制为234

同理十六进制的数 0000-0000 0000-0000 0000-0000 1001-1100 倒数第一组数1100的十进制为:12即C 倒数第二组数1001的十进制为:9 9C

倒数第一组数可以看成和1111“与”运算后得出1100,的十进制为12 即为C

然后右移四位

倒数第二组数可以看成和1001“与”原酸后得出1001,的十进制即9

即在代码中定义一个函数实现

代码语言:javascript
复制
public static void change(int num,int base,int move)
	{
		if(num==0)//如果是零输出零,结束
		{
			System.out.println(0);
			return;
		}
		char[] tables ={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
		char[] bottle =new char [32];
		int position =bottle.length;//定义一个局部变量,从数组后面开始存放数据
		while (num!=0)
		{
			int temp =num & base;
			bottle[--position] = tables[temp];
			num = num >>> move;
		}
		for(int x=position;x
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-02-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档