精华内容
下载资源
问答
  • 二进制数与八进制数相互转换的方法
    2021-02-12 19:18:57

    Java程序二进制数与八进制相互转换

    在此程序中,您将学习使用Java中的函数将二进制数转换为八进制数,反之亦然。

    示例1:将二进制转换为八进制的程序

    在此程序中,我们将首先将二进制数字转换为十进制。然后,十进制数字转换为八进制。

    public class BinaryOctal {

    public static void main(String[] args) {

    long binary = 101001;

    int octal = convertBinarytoOctal(binary);

    System.out.printf("%d 二进制 = %d 八进制", binary, octal);

    }

    public static int convertBinarytoOctal(long binaryNumber)

    {

    int octalNumber = 0, decimalNumber = 0, i = 0;

    while(binaryNumber != 0)

    {

    decimalNumber += (binaryNumber % 10) * Math.pow(2, i);

    ++i;

    binaryNumber /= 10;

    }

    i = 1;

    while (decimalNumber != 0)

    {

    octalNumber += (decimalNumber % 8) * i;

    decimalNumber /= 8;

    i *= 10;

    }

    return octalNumber;

    }

    }

    运行该程序时,输出为:101001 二进制 = 51 八进制

    此转换发生为:二进制到十进制

    1 * 25 + 0 * 24 + 1 * 23 + 0 * 22 + 0 * 21 + 1 * 20 = 41

    十进制到八进制

    8 | 418 | 5 -- 1

    8 | 0 -- 5

    (51)

    示例2:将八进制转换为二进制的程序

    在此程序中,首先将八进制数从十进制转换为十进制。然后,将十进制数转换为二进制数。

    public class OctalBinary {

    public static void main(String[] args) {

    int octal = 67;

    long binary = convertOctalToBinary(octal);

    System.out.printf("%d in octal = %d 二进制", octal, binary);

    }

    public static long convertOctalToBinary(int octalNumber)

    {

    int decimalNumber = 0, i = 0;

    long binaryNumber = 0;

    while(octalNumber != 0)

    {

    decimalNumber += (octalNumber % 10) * Math.pow(8, i);

    ++i;

    octalNumber/=10;

    }

    i = 1;

    while (decimalNumber != 0)

    {

    binaryNumber += (decimalNumber % 2) * i;

    decimalNumber /= 2;

    i *= 10;

    }

    return binaryNumber;

    }

    }

    运行该程序时,输出为:67 in octal = 110111 二进制

    此转换发生为:八进制到十进制

    6 * 81 + 7 * 80 = 55

    十进制到二进制

    2 | 552 | 27 -- 1

    2 | 13 -- 1

    2 | 6  -- 1

    2 | 3  -- 0

    2 | 1  -- 1

    2 | 0  -- 1

    (110111)

    更多相关内容
  • 本文主要介绍的是VB的十进制,八进制,十六进制,二进制相互转换大全
  • 二进制与八进制的互相转换二进制与转换类似,区别在于需要操作的是三位一组而不是四位。表2-2列出了二进制与八进制的等效表示。二进制八进制算法为了把换算为二进制,将每一个八进制数字替换成表2-2中对应的三...

    二进制与八进制的互相转换和二进制与的转换类似,区别在于需要操作的是三位一组而不是四位。表2-2列出了二进制与八进制的等效表示。

    二进制转八进制算法

    为了把换算为二进制,将每一个八进制数字替换成表2-2中对应的三位。例如,八进制123换算成结果就是001010011:

    b4971db67fa43598a8daf6e72b156fa7.png

    表2-2 二进制/八进制换算表

    34154e75f80b2971f5a8925cf88f2e8d.png

    为了将一个换算为八进制,只需将二进制串划分成每三个位一组(如果需要的话,在前面补零),然后查表2-2,将三位一组的位串替换为相应的字即可。

    如果需要将八进制数换算为,只需将八进制数换算为二进制,然后再换算为十六进制即可。

    八进制化为十进制:

    例:将八进制数12转换成

    9c724136cafb83e9f2c631d573130b7c.png

    八进制化为二进制:

    规则:按照顺序,每1位改写成等值的3位,次序不变。

    例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2

    八进制化为

    先将八进制化为二进制,再将二进制化为十六进制。

    例:(712)8 = (1110 0101 0)2 = (1CA)16

    转换为八进制

    二进制化为八进制:

    部份从最低有效位开始,以3位一组,最高有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换完毕就是八进制的整数。

    小数部份从最高有效位开始,以3位一组,最低有效位不足3位时以0补齐,每一组均可转换成一个八进制的值,转换完毕就是八进制的小数。

    例:(11001111.01111)2 = (011 001 111.011 110)2 = (317.36)8

    十六进制化为八进制:

    先用1化4方法,将化为二进制;再用3并1方法,将二进制化为8制。

    例: (1CA)16 = (111001010)2 = (712)8

    说明:小数点前的高位零和小数点后的低位零可以去除。

    化八进制

    方法1:采用除8取余法。

    例:将115转化为

    8| 115…… 3

    8| 14 …… 6

    8| 1 …… 1

    结果:(115)10 = (163)8

    方法2:先采用十进制化二进制的方法,再将二进制数化为八进制数

    例:(115)10 = (1110011)2 = (163)8

    展开全文
  • 文章目录1.1 常见的进制1.2 进制间如何转换1.3 十进制转换成其它进制1.4 其它进制转换成十进制1.5 二进制转换、十六进制(第一种方法)1.6 二进制转换、十六进制(第二种方法)1.7 、十六进制转换二进制(第...

    1.1 常见的进制

    二进制

    01:就是01的组合
    0201
    

    八进制

    01:就是07的组合
    0201234567
    

    十进制

    01:就是09的组合
    020123456789
    

    十六进制

    01:就是0-9和A-F间的组合,A等于10,B等于11,C等于12,D等于13,E等于14,F等于15
    020123456789、a、b、c、d、e、f
    

    1.2 进制间如何转换

    问:二进制、八进制、十进制、十六进制能否直接进行互相转换。
    答:可以( 这是站在直接给出答案的角度来回答的),如下图所示:
    在这里插入图片描述
    进制之间如何进行互相转换呢?这个我们就要从换算步骤来说,如下所示:
    在这里插入图片描述

    ## 01:十进制转换二、八、十六进制
    	一步到位,可以直接转换。
    
    ## 02:二、八、十六进制转换成十进制
    	一步到位,可以直接转换。
    
    ## 03:二进制转换成八、十六进制:
          A:第一种方法:(初次好理解)
            a:先转换成十进制(02)
            b:再由十进制转换成八、十六进制(01)
                
          B:第二种方法:(推荐)
            a:先分组,从右往左,二转八是三位一组,二转十六是四位一组。不够在左侧用零填充。
            b:各组内按二转10出结果,最后结果是各组的结果相拼接。
    
    ## 04:八、十六进制转换成成二进制
          A:第一种方法:(初次好理解)
            a:先转换成十进制(02)
            b:再由十进制转换成二、十六进制(01)
                
          B:第二种方法:(推荐)
            a:拆分,例如:将76进行拆分,拆分后就是7和6
            b:各位转换成二进制:就是将7和6分别转换成二进制
            c:各位二进制的结果进行拼接
    

    1.3 十进制转换二、八、十六进制

    这里是将十进制(整数)转换成二进制、八进制、16进制,以25为例。思维图如下所示:
    在这里插入图片描述

    十进制转换成2进制

    在这里插入图片描述

    十进制转换成8进制

    在这里插入图片描述

    十进制转换成16进制

    在这里插入图片描述

    1.4 二、八、十六进制转换成十进制

    注意:这里将其它进制(二、八、十六)转换成十进制。
    在这里插入图片描述

    二进制转换成十进制:以 1101101110 为例

    在这里插入图片描述

    八进制转换成十进制:以 76 为例

    在这里插入图片描述

    16进制转换成十进制:以 19ad 为例

    在这里插入图片描述

    1.5 二进制转换成八、十六进制(第一种方法)

    注意:这里是将二进制转换成八、十六进制,我们先将其转换成十进制、再由十进制转换成八进制和十六进制。如下图所示:
    在这里插入图片描述

    二进制转换成八进制:11001

    在这里插入图片描述

    二进制转换成十六进制:11001

    在这里插入图片描述

    1.6 二进制转换成八、十六进制(第二种方法)

    注意:这里我们是就不是先将其转换成十进制后,再转换成八进制和十六进制。我们采用的方法是:先分组(二转八3位一组,二转十六4位一组,从右往左,不够用0补充),接着进行各组内计算(二转十的方法),最后结果是各组的结果进行拼接。

    二转八

    二      进    制:1101110
    分组(三位一组)(001)(101)(110)   # 从右往左分
    组  内  计 算 一 :(001)(401)(420)   # 二转十
    组  内  计 算 二 :1     5    6      # 各组内相加
    八     进      制:156               # 各组按顺序拼接
    

    二转十六

    二    进    制:1101110
    分组(四位一组)(0110)(1110)   # 从右往左分
    组  内  计算一:(0420)(8420)   # 二转十
    组  内  计算二:6      14      # 各组内相加
    十  六  进  制:6e             # 各组按顺序拼接,10至15等于a至f
    

    总结

    可以看出在换算的过程中,也转换成了十进制
    

    1.7 八、十六进制转换成二进制(第一种方法)

    注意:这里是将八、十六进制转换成二进制、如下图所示:
    在这里插入图片描述

    八进制转换成二进制:以 76 为例

    在这里插入图片描述

    16进制转换成二进制:以 19ad 为例

    在这里插入图片描述

    1.8 八、十六进制转换成二进制(第二种方法)

    注意:这里我们是就不是先将其转换成十进制后,再转换成二进制了。而是:先对其进行拆分(例如:将76拆分后就是7和6),接着将7和6分别转换成二进制,最后将7的二进制和6的二进制进行拼接。

    八转二

    八     进     制:156
    拆            分:1           5           6                  # 拆分后的各位是不是也是个十进制
    各 位 转换成二进制:(421)001   (421)101    (421)110
    拼            接:1101110
    

    十六转二

    十  六   进   制:6e
    拆            分:6              e                           # 拆分后的各位是不是也是个十进制,只不过e你得看成是14
    各 位 转换成二进制: (8421)0110   8421(1110)
    拼            接:1101110
    

    总结

    可以看出在换算的过程中,也转换成了十进制,就是将拆分后的各位看成十进制
    
    展开全文
  • 一、十进制与二进制之间的转换 1、十进制转二进制 方法为:十进制除2取余法,即十进制除2,余数为...方法为:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转...

    一、十进制与二进制之间的转换

    1、十进制转二进制

     

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

     

    (具体用法如下图)

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

    2、二进制转十进制

     

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

     

    (具体用法如下图)

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

     

    二、二进制与八进制之间的转换

    1、二进制转八进制

     

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

     

    (具体用法如下图)

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

    2、八进制转二进制

     

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

     

     

    三、二进制与十六进制之间的转换

     

    1、二进制转十六进制

     

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

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

    2、十六进制转二进制

     

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

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

     

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

     

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

     

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

     

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

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

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

     

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

     

    一篇文章带你看懂二进制、八进制、十进制、十六进制数据转换

     

     

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

     

    八进制与十六进制之间的转换有两种方法

     

    第一种:他们之间的转换可以先转成二进制然后再相互转换。

     

    第二种:他们之间的转换可以先转成十进制然后再相互转换。

     

    这里就不再进行图片用法解释。

     

     

     

    展开全文
  • 1.十进制转化二进制数 十进制15 上图中箭头的方向即为二进制数中从低位到高位(从右往左)的顺序, 二进制数为:0000 0000 0000 0000 0000 0000 0000 1111 2.十进制数转化八进制数 十进制:15 ...
  • 2、二进制与八进制之间的转换 3、二进制与十六进制之间的转换 ############################################################################################################################################...
  • C 语言实例 – 八进制与进制相互转换八进制与进制相互转换。实例 - 二进制转换为八进制#include #include int convertBinarytoOctal(long long binaryNumber);int main(){long long binaryNumber;printf("输入一...
  • j--)//二进制字符串转为十进制 { int number = s[j] - '0'; n += number*pow(2, s.length() - j - 1); } } 十六进制转为二进制字符串 void HextoTwo(int num,string &ret) { int remainder; ...
  • 二进制八进制、十六进制转换为十进制 二进制八进制和十六进制向十进制转换都非常容易,就是“按权相加”。所谓“权”,也即“位权”。 假设当前数字是 N 进制,那么: 对于整数部分,从右往左看,第 i 位的...
  • 一、二进制转换八进制 规则:从低位开始,将二进制数每三位一组,转成对应的八进制数即可。 案例:请将 ob11010101 转成八进制 ob11(3)010(2)101(5) => 0325 二、二进制转换成十六进制 规则:从低位开始...
  • C语言:八进制与二进制相互转换

    千次阅读 2021-11-24 20:28:02
    问题:八进制与进制相互转换。 代码1:二进制转换为八进制 #include <stdio.h> #include <math.h> int convertBinarytoOctal(long long binaryNumber); int main() { long long binaryNumber; ...
  • 一、二进制和十进制之间的相互转换 十进制转二进制:整数部分和小数部分分别转换,然后再合并,十进制整数转换为二进制整数的方法为“除2取余”;十进制小数转化二进制小数为“乘2取整”。(整数部分按从下往上的...
  • 进制转换二进制八进制、十六进制、十进制之间的转换 不同进制之间的转换在编程中经常会用到,尤其是C语言。 将二进制八进制、十六进制转换为十进制 二进制八进制和十六进制向十进制转换都非常容易,就是...
  • 二进制进制八进制十六进制相互转换: 不同进制之间的转换是计算机学科同学必学的,网上有很多这方面的知识,今天搬运过来整理一下,大家分享,希望大家一起进步。 二进制转换: 1、十进制到二进制: 除2取余数...
  • 把其他进制整数转换二进制 把其他进制整数转换八进制 取整函数(取整为十进制) 把其他进制整数转换成十六进制 浮点数转换函数 举例 bin(20) oct(20)
  • 可实现16进制 十进制 八进制与二进制数之间的相互转换
  • 不同进制之间的相互转换 练一练手: 二进制转十进制 十进制原理: 为了方便学习二进制,我们先来看一下十进制的原理,十进制的特点就是有10个符号来表示一个数字,分别是0123456789;就比如这个数字235...
  • 再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。   例如:10=1010(二进制)   用10...
  • 题目:八进制数和十进制数相互转换。 初始条件: 理论:学完汇编课程,掌握汇编语言的使用。 实践:计算机实验室提供计算机及软件环境。如果自己有计算机可以在其上进行设计。
  • 二进制 二进制就是计算机常用的进制,即逢二进一。例如:1010 八进制 八进制即逢八进一。例如:626 ...十进制就是我们在计算中常用的进制,所以就不再举例(即逢十进一...拿二进制数10010110举例 首先需要3个二进...
  • c#二进制八进制,十进制相互转换详解,模拟的小程序,感兴趣的可以下载看看,恰恰饭,暂时不支持小数点
  • c++中如何实现二进制(Bin),八进制(Oct),十进制(Dec),十六进制(Hex)之间的相互转换 1. 二进制 -> 八进制 #include "stdafx.h" #include "iostream" #include "string" using namespace std; string...
  • 计算机中有四种进制方式: 1、二进制:由0和1两个数字组成。 2、八进制:八个符号,由0~7八个数字组成。开头一般以0开头。...一、二进制与其他进制之间的转换 (1)二进制转十进制:按权展开求和...
  • 思路:先将二进制转换为十进制(详细参考我的这篇博客 二、十进制相互转换),然后将十进制转换为八进制(这个我们很熟悉)。 具体代码如下: #include <stdio.h> #include <math.h> int main() { long...
  • 十进制: ------所谓十进制就是以10为基数的计数体制,其计数规律为"逢十进一"。 ------例如:十进制4587.29可以表示为 4587.29=4×10³+5×10²+8×...------例如:转换二进制数1010110为十进制 法一:每...
  • 二进制数值至八进制,十进制,十六进制字符串转换; 十六进制数值至二进制八进制,十进制字符串转换; 十进制数值至二进制八进制,十六进制字符串转换
  • 二进制八进制:把二进制每三个位分一等份,从右边开始分。计算三个二进制数的和就是八进制数中的一位。 如下: 101110111001转成八进制:从右边开始分。 101 110 111 001三位二进制相加得到的结果: 5 6 ...
  • 十六进制相互转换二进制转八进制,十进制,十六进制二进制转八进制二进制转十进制二进制转十六进制八进制转二进制,十进制,十六进制八进制转二进制八进制转十进制 二进制转八进制,十进制,十六进制 二进制转八进制...
  • 2. 二进制八进制、十六进制和十进制的相互转换 2.1 为了不累赘描述,本文以百度的二进制小数转换为十进制小数为例,如下图 2.2 十进制整数转二进制整数以及十进制小数转换为二进制小数如下 3. 原码、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,581
精华内容 13,032
热门标签
关键字:

二进制数与八进制数相互转换的方法