十进制转换为二进制

  在现实生活当中通常都是使用十进制的数值进行计算。但是在计算机当中,二进制、八进制以及十六进制的使用相比于十进制来说就更加的普遍。
  接下来就和我来看看十进制是如何转化为二进制的吧!

  一.除二取余

  输入一个十进制的数字,一直除以二,将其余数记下来。接下来再用商来除以二,记下余数,直到商变为0结束。再将余数倒着依次排列就能够得到二进制数值了。
代码:

import static java.lang.Math.pow;
class Function{public int n;Function(int n){this.n=n;}public void binaryToDecimal(){int bitNumber = 0;int count = 0;int j = 0;while(n != 0){j = n % 2;n = n / 2;bitNumber += j * pow(10,count);count++;}System.out.println(bitNumber);}
}
public class BinaryConversion1{public static void main(String[] args){Function f = new Function(15);f.binaryToDecimal();}
}

  在考虑到int类型数值的取值有限,可以根据“字符串类型+int类型 = 字符串类型"的特性,可以将方法binaryToDecimal()改写为如下:
binaryToDecimal() :

public void binaryToDecimal(){int i = 0;String s ="";while(n != 0){s = n%2 + s;n /= 2;}System.out.println(s);
}

  二.移位操作符

  利用 >> (右移操作符)来完成每一位的输出。修改binaryToDecimal()如下。
binaryToDecimal() :

public void binaryToDecimal(){int i = 0;for( i = 31; i >= 0; i--){System.out.print((n >> i) & 0x01);}
}

  三.API函数

  API是属于Windows操作系统的,这些API函数是为了程序员提供编程接口而公开的,可以直接调用来使用,提供了很多的便利。
binaryToDecimal() :

public void binaryToDecimal(){String result = Integer.toBinaryString(n);System.out.println(result);
}

十进制转换为十六进制

  十六进制转换其实就是逢 16 进 1。自然所能表示的数字为[ 0 , F ] (全闭),下面就是将转换为二进制的代码( binaryToDecimal() —>binaryToHexaDecimal())稍作修改就能得出十六进制数值了。

  一.除十六取余

  此方法只能通过字符串类型加法特性来完成数值的转换。需要注意的是在 [ A , F]范围当中时,需要先将 [ 10 , 15 ]转换为 [ A , F ],将计算的结果强转为char类型,再进行相加。
binaryToHexaDecimal():

public void binaryToHexaDecimal(){int i = 0;char temp = 0;String s ="";while(n != 0){i = n % 16;if(i > 9){temp = (char) (i + 55);s = temp + s;}else {s = i + s;}n /= 16;}System.out.println("0x"+s);
}

  二.API函数

public void binaryToHexaDecimal(){System.out.println("0x"+Integer.toHexString(n));
}

十进制转换为二、十六进制的方法相关推荐

  1. 将十进制数字转换为二十六进制字母串

    <?php /*** 将十进制数字转换为二十六进制字母串*/ function num2alpha($intNum, $isLower=true) {$num26 = base_convert( ...

  2. 十进制转为二十六进制

    private static StringBuffer DecimalToTwentysix(int n) {StringBuffer result = new StringBuffer();whil ...

  3. C语言 实现十进制转二十六进制

    比如说给出一个十进制数字,如何将他转为以字母为形式的二十六进制呢? 这里提供两个思路方法 方法一:以字母为单位结合光标前移操作 #include <stdio.h> #include &l ...

  4. 总结计算机中十进制数二进制数,计算机中十进制转换为二进制的新方法

    计算机,考试必备! 计算机中十进制转换为二进制的另一方法 -------"定位减权法" 胡燏 (四川建筑职业技术学院计算机系,618000) [摘要]本文从十进制与二进制的特点入手 ...

  5. C语言:十进制转换为二进制的数学方法

    首先我们需要厘清逻辑:十进制如何转换为二进制 我们采用的方法--短除法 以十进制数字10为例 我们的目的是将该十进制的数字转换为二进制的数字 纯数学的方法如下: 10÷2=5余0 5÷2=2余1 2÷ ...

  6. 10进制转换为二十六进制字符串A-Z

    def convert10to26(num): ...: '''10进制转为26进制字母 A-Z, 输入参数10进制数num, 返回26位的字母A-Z 参数type: num: int return: ...

  7. 基于C语言的十进制转二十六进制

    A~Z            <====>1~26 AA~ZZ       <====>27~702 AAA~ZZZ  <====>703~18278 转换公式与其 ...

  8. 通过代码实现将十进制转换成十六进制

    通过代码求50的十六进制 上一篇博客已经介绍了十进制转换成十六进制的方法,因此我们可以得到50的二进制为00110010,十六进制为32.下面我将介绍两种方法求出50的十六进制. 方法一:自动实现 思 ...

  9. php数字和字母互换,PHP实现十进制数字与二十六进制字母串相互转换操作示例

    本文实例讲述了PHP实现十进制数字与二十六进制字母串相互转换操作.分享给大家供大家参考,具体如下: /** * 将十进制数字转换为二十六进制字母串 */ function num2alpha($int ...

最新文章

  1. 桂林机场春运期间新增多条航线航班 实现接力承运无缝衔接
  2. 点云三维重建有关原理
  3. python 数据分析学什么-数据分析培训学习多久?都学什么?
  4. python 元类的call_python3 全栈开发 - 内置函数补充, 反射, 元类,__str__,__del__,exec,type,__call__方法...
  5. iptables 添加,删除,查看,修改
  6. 牛客网编程题01--计算字符串最后一串单词的长度,单词以空格隔开,字符串小于5000
  7. linux c++开发_Linux/Windows下进行C/C++开发的差异
  8. c++ 模板参数做容器参数迭代器报错 vectorT::const_iterator,typename const报错
  9. 数学模型——人口增长模型(基于python)
  10. 强化学习(十一) Prioritized Replay DQN
  11. 菜哥学知识图谱(通过“基于医疗知识图谱的问答系统”)(三)(代码分析)
  12. Boost基础篇——安装
  13. 百度-还可以这样玩!
  14. 视频管理系统源码php,video cms 视频分享管理系统
  15. 三八节送什么礼物比较好?这四款数码好物别错过了!
  16. 侬用洲的移动通信复习资料
  17. UIWebView 使用
  18. ajax thinkphp配合ajax的简单列子
  19. 20189200余超 2018-2019-2 移动平台应用开发实践第十一周作业
  20. BS4爬取电影天堂的下载地址并保存至csv文件

热门文章

  1. C语言 —— 你不得不知道的 scanf 的高级用法
  2. 【krpano】可拖拽相框遮罩
  3. [Linux]termios
  4. MATLAB | MATLAB不会画图?官方团队来教你
  5. 【约束 约束 约束】
  6. 微信小程序获取openid等参数报错errcode:48001 errmsg:'api unauthorized'
  7. impala shell
  8. WARN [AdminClient clientId=adminclient-1] Connection to node -1 (localhost/127.0.0.1:9092) could not
  9. Pixhawk飞控代码(2019.11.28)
  10. 基于MK-MMD度量迁移学习的轴承故障诊断方法研究