精华内容
下载资源
问答
  • 二进制 二进制就是计算机常用的进制,即逢二进一。例如:1010 八进制 八进制即逢八进一。例如:626 ...十进制就是我们在计算中常用的进制,所以就...1.二进制转八进制 拿二进制数10010110举例 首先需要3个二进...

    二进制

    二进制就是计算机常用的进制,即逢二进一。例如:1010

    八进制

    八进制即逢八进一。例如:626

    十进制

    十进制就是我们在计算中常用的进制,所以就不再举例(即逢十进一)

    十六进制

    十六进制与其它进制有所不同,在10到15用英文字母进行表示。

    上面就是对进制的简单介绍,下面就是对进制转换而进行介绍。

    1.二进制转八进制

    拿二进制数10010110举例

    首先需要3个二进制数各划分一个区域,不足时则补零。我们可以看出该二进制数为八位,我们需要补充一位,

    即010010110

    从左到右依次是:(计算方法是从右向左依次乘上2的n次幂,n从零开始,^符号表示次幂)

    0  1  0                                    0  1  0                                        1  1  0

    0*2^2+1*2^1+0*2^0=2          0*2^2+1*2^1+0*2^0=2               1*2^2+1*2^1+0*2^0=6

    然后合并得到226就是转换后的八进制数。

    2.二进制转十进制

    拿二进制数10010110举例

    这里就不需要划分区域,而是直接进行计算。(计算方法是从右向左依次乘上2的n次幂,n从零开始,^符号表示次幂)

    1*2^7+0*2^6+0*2^5+1*2^4+0*2^3+1*2^2+1*2^1+0*2^0=150

    3.二进制转十六进制

    拿二进制数100101100举例

    二进制转十六进制和二进制转八进制类似,不过转十六进制划分区域为4个,不足也是补零

    000100101100

    0001                                               0010                                                1100

    0*2^3+0*2^2+0*2^1+1*2^0=1        0*2^3+0*2^2+1*2^1+0*2^0=2        1*2^3+1*2^2+0*2^1+0*2^0=12(12也就是十六进制中的C)

    合并为12C

    4.八进制转二进制

    八进制转二进制是二进制转换成八进制的逆过程。(不足时也是补零)

    拿八进制数226举例(需要取余数,采用倒叙过程)

    2                                                         2                                                                  6

    2/2=1(余数为0)                                  2/2=1(余数为0)                                            6/2=3(余数为0) 

    1/2=0(余数为1)                                  1/2=0(余数为1)                                            3/2=1(余数为1)   

                                                                                                                                  1/2=0(余数为1)    

                                                      

    所以取余数为10,不足三位,则补零,为010.                                                       余数为110

    最后合并,最终转换的二进制数为10010110

    5.八进制转十进制

    拿八进制数226举例(由右向左依次乘以8的n次幂,n从零开始)

    2*8^2+2*8^1+6*8^0=150

    6.八进制转十六进制

    八进制不能直接转换为十六进制。可以采用间接转换法来进行转换。

    1.先把八进制转换为二进制,然后再转换为十六进制。

    2.先把八进制转换为十进制,然后再转换为十六进制。

    拿八进制数226举例,从上面可以看出转换为二进制为10010110,然后我们再把它转换为16进制。

    划分区域

    1001                                                   0110

    1*2^3+0*2^2+0*2^1+1*2^0=9            0*2^3+1*2^2+1*2^1+0*2^0=6

    合并为96,所以八进制226转换为十六进制为96.

    第二种也是一样,小编在这里就不再举例,大家可以试试看,也是一样的结果。

    7.十进制转二进制

    十进制转二进制就是二进制转十进制的逆过程。同样,我们也拿十进制150来举例。

    150/2=75(余数为0)

    75/2=37(余数为1)

    37/2=18(余数为1)

    18/2=9(余数为0)

    9/2=4(余数为1)

    4/2=2(余数为0)

    2/2=1(余数为0)

    1/2=0(余数为1)

    整合为10010110即是转换的二进制。

    8.十进制转八进制

    十进制转八进制和八进制转十进制是互逆的,我们拿150来举例。

    150/8=18(余数为6)

    18/8=2(余数为2)

    2/8=0(余数为2)

    整合为226,得到八进制数。

    9.十进制转十六进制

    十进制转十六进制和十六进制转十进制是互逆的,我们拿150来举例。

    150/16=9(余数为6)

    9/16=0(余数为9)

    整合为96,得到十六进制数。

    10.十六进制转二进制

    十六进制转二进制和二进制转十六进制是互逆的,我们拿12C来举例。(不足的位数补零)

    1                                                             2                                                               C(转化为12)

    1/2=0(余数为1)                                      2/2=1(余数为0)                                         12/2=6(余数为0)  

                                                                  1/2=0(余数为1)                                          6/2=3(余数为0)

                                                                                                                                    3/2=1(余数为1)

                                                                                                                                    1/2=0(余数为1)

    0001                                                     0010                                                            1100

    整合为000100101100

    11.十六进制转八进制

    八进制不能直接转换为十六进制。那么十六进制也不能直接转化为八进制,可以采用间接转换法来进行转换。

    1.先把十六进制转换为二进制,然后再转换为八进制。

    2.先把十六进制转换为十进制,然后再转换为八进制。

    这里就不再介绍转化的过程,和八进制转化为十六进制一样,这里就是一个逆过程。

    12.十六进制转十进制

    拿十六进制96来举例(由右向左依次乘以16的n次幂,n从零开始)

    9*16^1+6*16^0=150

    好了,上面就是二进制,八进制,十进制,十六进制之间的转换。我们可以进行分类记忆,并总结规律。

    注意:1.我们在将进制数除以2的时候一定要选择逆顺序。

               2.在乘以次幂的时候也是从右往左的顺序,由零次幂依次递增。

               3.在选择区域的时候一定要看清是转换十六进制还是八进制,否则就会出错,记住不足的位数一定要补零哦。

    这些就是小编要提醒的注意事项,当然了,通过实例,自己多多练习,相信进制的转换对于大家来说就是很简单的啦。

    感谢朋友们对小编文章的评价哦!小编在后期也补充了小数部分的进制转换。请参考文章https://blog.csdn.net/mez_Blog/article/details/102468841希望大家多多支持哦^_^

    Endeavor

    展开全文
  • java实现二进制转十六进制

    千次阅读 2017-07-29 22:50:51
    java实现二进制转十六进制

    题目链接:

    百练OJ:2798

    描述:输入一个2进制的数,要求输出该2进制数的16进制表示。在16进制的表示中,A-F表示10-15
    输入:第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个以0和1组成的字符串,字符串长度至少是1,至多是10000
    输出:n行,每行输出对应一个输入。

    对于一个值比较小的二进制数转化为十六进制的数可以在java中直接调用函数解决,代码如下:

    解题代码一:

    import java.util.Scanner;
    
    public class Main{
    
    	public static void main(String[] args) {
    		Scanner input =new Scanner(System.in);
    		int n=input.nextInt();
    		while(n>0){
    			int k=input.nextInt();
    			int tem=Integer.parseInt(String.valueOf(k), 2);
    			String str=Integer.toHexString(tem).toUpperCase();
    			System.out.println(str);
    			n--;
    		}
    		input.close();
    	}
    }
    但是,本题的输入二进制的位数很多,字符长度可达10000,超出了int型数的限制,于是,解题应更加复杂。

    对于一个二进制的数每四位数可以转化为一个十六进制数,例如1111可转化为F; 0001转化为1 ;1000转化为8;11101010转化为EA。对于一个二进制的数位数若不是4的倍数,可以在前面补零,补成4的倍数位。例如:1111011111补为为001111011111转化为十六进制:3DF

    解题代码二:

    import java.util.Scanner;
    
    public class Main{
    
    	public static void main(String[] args) {
    		Scanner input =new Scanner(System.in);
    		int n=input.nextInt();
    		while(n>0){
    			String k=input.next();
    			System.out.println(turn2to16(k));
    			n--;
    		}
    		input.close();
    	}
    
    	private static String turn2to16(String str) {
    		String sum="";
    		
    		int t=str.length()%4;
    		if(t!=0){
    			for(int i=str.length();i-4>=0;i=i-4){
    				String s=str.substring(i-4,i);
    				int tem=Integer.parseInt(String.valueOf(s), 2);
    				sum=Integer.toHexString(tem).toUpperCase()+sum;
    			}
    			String st=str.substring(0,t);
    			
    			int tem=Integer.parseInt(String.valueOf(st), 2);
    			sum=Integer.toHexString(tem).toUpperCase()+sum;
    			
    		}
    		else{
    			for(int i=str.length();i-4>=-1;i=i-4){
    				String s=str.substring(i-4,i);
    				int tem=Integer.parseInt(String.valueOf(s), 2);
    				sum=Integer.toHexString(tem).toUpperCase()+sum;
    			}
    		}
    		return sum;
    	}
    
    }


    展开全文
  • IC方向,常见的进制表达,一般有二进制、十进制、十六进制。另外,还有高位补零的需求。 mark,以备不时之需。二进制、十进制、十六进制的表达方式qilei@AFAAW-704030720:~$ cat 11.pl #!/usr/bin/perl use ...

    IC方向,常见的进制表达,一般有二进制、十进制、十六进制。另外,还有高位补零的需求。
    mark,以备不时之需。

    十进制和十六进制的转换方法

    在这里插入图片描述

    二进制、十进制、十六进制的表达方式

    qilei@AFAAW-704030720:~$ cat 11.pl
    #!/usr/bin/perl
    use warnings;
    use strict;
    my $v=9;
    printf("%d\n",$v);
    $v=10;
    printf("%x\n",$v);
    $v="e";
    printf("%b\n",hex($v));
    qilei@AFAAW-704030720:~$ ./11.pl
    9
    a
    1110
    qilei@AFAAW-704030720:~$
    

    高位补零

    qilei@AFAAW-704030720:~$ cat 11.pl
    #!/usr/bin/perl
    use warnings;
    use strict;
    my $v=9;
    printf("%d\n",$v);
    $v=10;
    printf("32'h%08x\n",$v);
    $v="e";
    printf("32'b%032b\n",hex($v));
    qilei@AFAAW-704030720:~$ ./11.pl
    9
    32'h0000000a
    32'b00000000000000000000000000001110
    qilei@AFAAW-704030720:~$
    

    补充一个实例

    在这里插入图片描述

    展开全文
  • php /** *十进制转二进制、八进制、十六进制 不足位数前面补零* * * @param array $datalist 传入数据array(100,123,130) * @param int $bin 转换的进制可以是:2,8,16 * @return array 返回数据 array() 返回没有...
  • 十进制转二进制进制十六进制二进制转八进制规律:合三为一,不足在前面补零例如: 二进制:101 100 111 八进制:0541 二进制转十六进制规律:合四为一,不足在前面补零例如: 二进制:1111 0011 1001 ...

    文章目录

    #二进制转八进制
    规律:合三为一,不足在前面补零

    例如:
    二进制:101 100 111
    八进制:0547
    (图中第三个数字出错了)
    这里写图片描述


    #二进制转十六进制
    规律:合四为一,不足在前面补零

    例如:
    二进制:1111 0011 1001
    十六进制:0xF39
    这里写图片描述


    #十进制转二进制、八进制、十六进制
    规律:十进制转多少就除多少,直到剩下0为止,把余数从最晚到最早排列起来。

    例如:
    十进制155转16进制:155/16 余11 等于 9; 9/16 余9
    所得的答案为0x9B
    解析:第一次得到11,第二次得到9,然后顺序是9然后是11(B)。

    十进制10转二进制:
    10/2 等于5 余0
    5/2 等于2 余1
    2/2 等于1 余0
    1/2 等于0 余1

    把余数从低到高排列起来是1010

    展开全文
  • 文章目录一、总体框架二、二进制、八进制、十六进制转换为十进制2.读入数据总结 一、总体框架 在这里我们要明确进制之间相互转化的关系: 1、二进制、八进制、十六进制可以转换为十进制。 2、十进制可以转换为...
  • 目录十进制、二进制、八进制、十六进制对应表二进制转十进制8421码和十进制之间的对应关系十进制转二进制二进制、十进制互相转换(小数) 十进制、二进制、八进制、十六进制对应表 十进制 二进制 八进制 十六...
  • 二进制转十六进制

    2018-02-28 16:03:48
    C - 2进制转化为16进制 输入一个2进制的数,要求输出该2进制数的16进制表示。 在16进制的表示中,A-F表示10-15 Input 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个以0和1组成的字符串,...
  • 文章目录二进制八进制二进制十进制二进制十六进制八进制二进制十进制转二进制十六进制转二进制八进制或者十六进制十进制十进制八进制或十六进制有两种方法十六进制与八进制 二进制八进制 方法为:3位...
  • 二进制转换为八进制或十六进制

    千次阅读 2017-05-21 21:18:50
    注:3位二进制转成八进制是从右到左开始转换,不足时补0。  示 例:把二进制数1001 0110转换为八进制数   即二进制数1001 0110转为后为八进制数226。 》八进制转换为二进制  #八进制数通过除以2取余,余数...
  • package com.hiss.utils; import java.nio.charset.Charset; import org.apache.commons.lang3.ArrayUtils; /** * * @Description: 字节数组转换工具类 ...public class BytesUtil...
  • 利用python进行二进制、十进制、十六进制相互转换和二进制移位操作1 二进制与十进制相互转换2 十六进制与十进制相互转换3 二进制十六进制的相互转换4 高位补零5 二进制移位 1 二进制与十进制相互转换 通过python...
  • 目录 1.十进制2进制 2.二进制转十进制 ...二进制转十六进制 8.十六进制转二进制 9.八进制与十六进制之间的转换 总结1: 十进制转二进制,除2取余法 十进制八进制,除8取余法 十进制转十六进制...
  • 进制转换 二进制、十进制、八进制、十六进制相互转换 进制介绍 一、二进制 二进制(binary)是在数学和数字电路中指以2为基数的记数系统,是以2为基数代表系统的二进位制。 用两个不同的符号0(代表零)和1(代表一...
  • 文章目录前言1、二进制1.1、二进制转八进制1.2、二进制转十进制1.2、二进制转十六进制2、八进制1.1、八进制转二进制1.2、八进制十进制1.2、八进制转十六进制3、十进制3.1、十进制转二进制3.2、十进制八进制3.3、...
  • 进制转换 1.1 二进制与十进制之间的转换 十进制转二进制 方法为:十进制数除2取余法,即...方法为:八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零二进制转八进制 方法为...
  • 二进制二进制数据是用0和1两个数码来表示的数。...eg: 11 0011 1011,先从右到左,四个位一组,不够的在前面补零够四位即可:0011 0011 1011,然后从左往右:0+0+2+1 0+0+2+1 8+0+2+1 ,十六进制数位:
  • php教程/***十进制转二进制、八进制、十六进制 不足位数前面补零*** @param array $datalist 传入数据array(100,123,130)* @param int $bin 转换的进制可以是:2,8,16* @return array 返回数据 array() 返回没有数据...
  • 1、正整数转二进制 要点:除二取余,倒序排列,高位补零。 方法:将正的十进制数除以二,得到的商再除以二,依次类推直至商为0或1时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零。 注:计算机内部表示...
  • 十进制转换为二进制、八进制、十六进制 1 从十进制向其它进制转换,用的是就用该数字不断除以要转换的进制数,读取余数。连接一起就可以了。 1 <strong></strong>...
  • 十进制转换二进制 ...八进制数除2取余法,得到二进制数,对每个八进制数为3个二进制,不足时在最左边补零。 八十 按权展开再相加。 八十六 先转换为十进制在转换 十六十六进制数除2取余法,...
  •   1.1)十进制整数转换为二进制整数   十进制整数转换为二进制整数采用"除2取余,逆序排列"法。即,用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时...
  • 二进制的转换 了解进制的转换(二、八、十、十六二进制二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。 八进制:在八进制数中,每一位用0—7八个...
  • C语言里,将十进制转为二进制,实现方法较为简单,例如如下循环 while(1) { yushu=x%2; x/=2; y+=yushup; p=10; if(x&lt;2) { y+=xp; break; } 不断取余数,每次取完余数将原本的数据除以2得到新数据,用y值记录...
  • 一、二进制转其他进制 二、八进制其他进制 三、十进制其他进制 四、十六进制转其他进制 五、二进制、八进制、十进制、十六进制等值表 一、二进制转其他进制 ①二进制转八进制:按3位二进制数按权展开相加...
  • php 实现进制转换(二进制、八进制、十六进制)...十进制转换为二进制、八进制、十六进制 view source print ? 1 从十进制向其它进制转换,用的是就用该数字不断除以要转换的进制数,读...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,963
精华内容 1,585
关键字:

二进制转十六进制补零