精华内容
下载资源
问答
  • 转换器-十进制-二进制 一个将十进制转换为二进制的简单脚本。
  • C语言实现十进制转换八十六进制的转换,代码已经经过调试可以使用,放心下载!
  • 方便读者学习,本文小编给读者提供了用verilog将二进制转换为十进制BCD码的程序设计方法,供读者参考。
  • ieee754进制转换器

    2020-05-09 13:43:12
    电气ieee754十进制二进制,十六进制互转,QT成品
  • Java十进制转换为二进制

    千次阅读 2021-02-09 15:42:59
    Java十进制二进制转换的3种不同方法。 1. Integer.toString()方法 我们可以使用Integer类的toString()方法将十进制数转换二进制数。此方法有两个参数,第一个参数是十进制数,第二个参数是我们要转换的...

    Java十进制到二进制转换的3种不同方法。

    1. Integer.toString()方法

    我们可以使用Integer类的toString()方法将十进制数转换为二进制数。此方法有两个参数,第一个参数是十进制数,第二个参数是我们要转换的基数。对于二进制,基数为2。

     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import java.util.Scanner;
     
    public class JavaD2B {
    public static void main(String args[]){
    int number;
    Scanner sc = new Scanner(System.in);
     
    System.out.println("Enter a decimal number: ");
    number = sc.nextInt();
     
    System.out.println("Binary number is " + Integer.toString(number, 2));
    }
    }

    输出量

    输入十进制数字:
    8
    二进制数字为1000

    2. Integer.toBinaryString()

    这是Integer类的另一种方法,可以直接将十进制转换为二进制。请参阅下面的程序以了解如何使用它。

     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import java.util.Scanner;
     
    public class JavaD2B {
    public static void main(String args[]){
    int number;
    Scanner sc = new Scanner(System.in);
     
    System.out.println("Enter a decimal number: ");
    number = sc.nextInt();
     
    System.out.println("Binary number is " + Integer.toBinaryString(number));
    }
    }

    输出量

    输入十进制数字:
    10
    二进制数字为1010

    3.自己的逻辑

    我们可以在Java中编写自己的逻辑,将十进制转换为二进制。可以通过以下步骤完成。

    1. 使用%运算符将数字除以2,并将剩余的数存储在某个位置。
    2. 使用/运算符将数字除以2。
    3. 重复上述两个步骤,直到数字变为0。
    4. 现在,以相反的顺序打印其余部分。

    下面的程序实现了这个简单的算法。

     

     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Scanner;
     
    public class JavaD2B {
    public static void main(String args[]){
    int number;
    Scanner sc = new Scanner(System.in);
    ArrayList<String> binary = new ArrayList<String>();
     
    System.out.println("Enter a decimal number: ");
    number = sc.nextInt();
     
    while(number != 0){
    binary.add(String.valueOf(number%2));
    number /= 2;
    }
     
    Collections.reverse(binary);
    System.out.print("Binary number is ");
     
    for(String s : binary){
    System.out.print(s);
    }
    }
    }

    输出量

    输入十进制数字:
    2
    二进制数字为10

     

    展开全文
  • 虽然Java开发者已经对其进行了封装,但还是要学会自己编写相应的进制转换器的。 常用的进制有二进制,八进制,十进制,十六进制。 二.将整数转换成十六进制 二.一 将int整数转换成十六进制(一) 先写一个主方法,...

    一. 进制转换

    在生活和实际开发中,进制转换是一个常考的知识点。 虽然Java开发者已经对其进行了封装,但还是要学会自己编写相应的进制转换器的。 常用的进制有二进制,八进制,十进制,十六进制。

    二.将整数转换成十六进制

    二.一 将int整数转换成十六进制(一)

    先写一个主方法,接下来,所有的方法都是通过main 方法来调用的。 不用Junit测试。 做静态的方法,类似于工具的形式。

    public static void main(String []args){
    		System.out.println(printOX1(1024));
    }
    

    先用最简单的方法进行写程序。 求十六进制,就是将这个数字不断的除以16,然后得到余数。 去判断这个余数的大小,如果是0 ~ 9 ,那么就用数字0 ~ 9 来表示,如果是10 ~ 15 ,那么 就用字符’A’ ~ ‘F’ 或者小写的 ‘a’ ~ ‘f’ 来表示。 然后,用商来替换这个数字,继续进行循环。
    最简单的方式,先用一个字符串来接收转换后的进制结果。要循环八次。 为什么用8呢,因为int型是4个字节,十六进制最大用四个字符来表示。 所以,最大是4*8/4=8 个长度。

    public static String printOX1(int num){
    		//1. 判断,如果是0的话,就直接返回0
    		if(num==0){
    			return "0";
    		}
    		//2.16进制的话,存储int型,可以存储4*32/16=8 个长度。
    		StringBuilder sb=new StringBuilder();
    		for (int i = 0; i <8; i++) {
    			//3. 将这些数字除以16,得到余数。 求的是低四位。
    			int temp=num&15;
    			if(temp>9){
    				sb.append(temp-10+'A');
    			}else{
    				sb.append(temp);
    			}
    			num=num>>>4; //除以16,得到商。 将商当成除数。
    		}
    		return sb.toString();
    	}
    

    上面这个运行输出后,结果是:
    在这里插入图片描述
    这个顺序是颠倒的,并且还有多余的0存在。

    二.二 将int整数转换成十六进制(二)

    改进: 根据余数来求数字和字符,其实是可以转换成数组的。 利用数组的查表法进行相应的改变。 将余数放入到数组的下标索引上,就可以取出相应的表示字符。

    public static String printOX2(int num){
    		//1. 判断,如果是0的话,就直接返回0
    		if(num==0){
    			return "0";
    		}
    		// 定义一个字符数组,这个索引与十六进制的表示方式一样。
    		char [] hexs={'0','1','2','3','4','5','6','7','8','9',
    				'A','B','C','D','E','F'};
    		StringBuilder sb=new StringBuilder();
    		for (int i = 0; i <8; i++) {
    			int temp=num&15;
    			sb.append(hexs[temp]); // 根据下标去求数组中查询相应的值。
    			num=num>>>4;
    		}
    		return sb.toString();
    	}
    

    运行后,结果仍然是: 00400000, 顺序颠倒,有零。
    在这里插入图片描述

    二.三 将int整数转换成十六进制(三)

    利用数组的方式去解决。 将得到的这个值,倒序放入到一个数组中,就是将004 00000 倒序放入数组中。 那么 此时 a[0]=0,a[1]=0,… … a[4]=0, a[5]=4, a[6]=0,a[7]=0; 然后将这个数组从非零的索引位置处进行输出即可。 要记录下这个非零的索引位置。

    public static String printOX3(int num){
    		//1. 判断,如果是0的话,就直接返回0
    		if(num==0){
    			return "0";
    		}
    		//2.16进制的话,存储int型,可以存储4*32/16=8 个长度。
    		char [] hexs={'0','1','2','3','4','5','6','7','8','9',
    				'A','B','C','D','E','F'};
    		char [] tabs=new char[8];
    		StringBuilder sb=new StringBuilder();
    		int pos=tabs.length; 
    		while (num>0) {  //不知道要运行几次。
    			//3. 将这些数字除以16,得到那个要转换的值。
    			int temp=num&15;
    			tabs[--pos]=hexs[temp];  //上面用的是长度,这里用--pos. 要注意,索引越界的问题。
    			num=num>>>4;
    		}
    		for(int i=pos;i<8;i++){
    			sb.append(tabs[i]);
    		}
    		return sb.toString();
    	}
    

    运行之后,就是:
    在这里插入图片描述
    正确的十六进制数字。

    二.四 将int整数转换成十六进制(四)

    利用String 的format 格式化方法进行求解。 格式信息是 %x. x为十六进制。

        String.format("%x",1024);   // 是String 类型
    

    二.五 将int整数转换成十六进制(五)

    Java底层开发人员,封装了一个方法。 可以自动将数字进行转换成十六进制。
    开发中,推荐使用这一个。

    	Integer.toHexString(1024)    //转换成十六进制。 二进制,八进制,也有类似的方法。
    

    三. 十进制转其他的进制

    只支持常见的二进制,八进制,十六进制。 这种方式,暂时不支持其他的进制。后面有其他的方法会慢慢支持的。

    public static void main(String []args){
    	int num=1024;
    	System.out.println("十六进制:"+toHex(num)); //转换成十六进制
    	System.out.println("二进制:"+toBinary(num)); //转换成二进制
    	System.out.println("八进制:"+toOct(num)); //转换成八进制
    }
    

    其中,十六进制的方法是:

    public static String toHex(int num) {
    		return  toTrave(num,15,4); //基数是15,右移4位。
    	}
    

    虽然二进制和八进制,已经可以证明,肯定是数字型的。但由于位数相比较十进制较多,用int 或者long接收的话,都有可能造成溢出。 所以,不建议用long 或者int 接收 。 直接用字符串接收,是数字型的字符串。
    其中,八进制的方法是:

    public static String toOct(int num) {
    		return toTrave(num,7,3);
    	}
    

    其中,二进制的方法是:

    public static String toBinary(int num) {
    		return toTrave(num,1,1);
    	}
    

    共同的方法是 toTrave()的定义是:

    public static String toTrave(int num,int base,int moveIndex){
    		//1. 判断,如果是0的话,就直接返回0
    		if(num==0){
    			return "0";
    		}
    		//2.16进制的话,存储int型,可以存储4*32/16=8 个长度。
    		char [] hexs={'0','1','2','3','4','5','6','7','8','9',
    				'A','B','C','D','E','F'};
    		char [] tabs=new char[8];
    		StringBuilder sb=new StringBuilder();
    		int pos=tabs.length; 
    		while (num>0) {  //不知道要运行几次。
    			//3. 将这些数字除以基数,得到那个要转换的值。
    			int temp=num&base;
    			tabs[--pos]=hexs[temp];  //上面用的是长度,这里用--pos. 要注意,索引越界的问题。
    			num=num>>>moveIndex; 
    		}
    		for(int i=pos;i<8;i++){
    			sb.append(tabs[i]);
    		}
    		return sb.toString();
    	}
    

    与上面的printOX3() 方法是一样的。 只是将15,和>>>4 的4 转换成局部变量而已。

    四. String.format 方法的支持

    		System.out.println(String.format("%x",1024));//十六进制
    		System.out.println(String.format("%o",1024)); //八进制
    		System.out.println(String.format("%d",1024)); //十进制
    		System.out.println(String.format("%b",1024)); //%b,并不是二进制,而是会输出true. 非空为true
    

    五. Integer 的toString() 方法封装

    		System.out.println(Integer.toBinaryString(1024)); //二进制
    		System.out.println(Integer.toOctalString(1024)); //八进制
    		System.out.println(Integer.toHexString(1024)); //十六进制	
    

    如果要转换成其他进制的话,用toString(十进制数字num,要转换的进制位) 的方法。

    System.out.println(Integer.toString(1024,7));   //转换成七进制数
    System.out.println(Integer.toString(1024,2));  //当然,也可以用它转换成二进制数。
    

    五. Integer 的parseInt(“数字字符串”,“原先的进制”) 和valueOf(“数字字符串”,原先的进制) 方法封装

    这两个方法,都是转换成十进制的。

    System.out.println(Integer.parseInt("400",16)); //将16进制的400转换成十进制
    System.out.println(Integer.valueOf("400",8));//将8进制的400转换成十进制
    

    谢谢!!

    展开全文
  • 进制转换器 二进制 八进制 十进制 十六进制
  • 主要介绍了C语言十进制二进制代码实例,并且转换后会统计二进制1的个数,实例简单明了,需要的朋友可以参考下
  • IP十进制点分转换为二进制
  • 包含三个三个工具类,一个枚举,一个说明,可以实现常用的转换问题。时间可以根据自己需要转换,自定类型,转换方便。进制转换实现自定义任意进制转换
  • 八位二进制转三位十进制电路multisim源文件,十进制数字用数码管显示,multisim13及以上版本的软件可以正常打开仿真。
  • 二进制十进制、十六进制、C51十六进制转换器,还有ASCII代码表,单个字符转换。
  • java进制转换工具类

    2020-06-09 15:27:11
    二进制数组转换为二进制字符串 将二进制数组转换十六进制字符串 将十六进制转换为二进制字节数组 将十六进制转换为二进制字符串
  • 利用数组和调用函数编写一个十进制转换二进制的程序 #include "stdio.h" int main(){ int i = 0, n , a[32]; printf("请输入一个十进制正整数:\n"); scanf("%d",&n); for ( ; n>0 ; n /= 2) { a[i++] ...

    利用数组和调用函数编写一个十进制转换成二进制的程序

    #include "stdio.h"
    int main(){
        int i = 0, n , a[32];
        printf("请输入一个十进制正整数:\n");
        scanf("%d",&n);
        for (  ; n>0  ; n /= 2) {
            a[i++] = n%2;
        }
        printf("输出二进制数 :\n");
        for(i--;i>=0;i--){
            printf("%d",a[i]);
        }
        return 0;
    }
    
    
    展开全文
  • 十进制数 N = 0 到 32-1,即 0 到 $2^5 -1$ 在达到 N 值到 32 后,转换将重置并从 0 - 再次31例如如果您给出33,则取33-32 = 1。
  • 十进制整数转换二进制采用“除2倒取余”,十进制小数转换二进制小数采用“乘2取整”。 例题: 135D = __ B 解析:如下图所示,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取。得到结果:1000 ...

    1.十进制转R进制

    1.1 十进制转二进制

    十进制整数转二进制

    十进制整数转换成二进制采用“除2倒取余”,十进制小数转换成二进制小数采用“乘2取整”。

    例题: 135D = ______ B

    **解析:**如下图所示,将135除以2,得余数,直到不能整除,然后再将余数从下至上倒取。得到结果:1000 0111B.
    这里写图片描述

    图1.十进制整数转二进制

    十进制小数转二进制

    十进制小数转换成二进制小数采用 “乘2取整,顺序排列” 法。

    具体做法是:

    用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数 部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,或者达到所要求的精度为止。

    然后把取出的整数部分按顺序排列起来,先取的整数作为二进制小数的高位有效位,后取的整数作为低位有效位。

    例题: 0.68D = ______ B(精确到小数点后5位)

    **解析:**如下图所示,0.68乘以2,取整,然后再将小数乘以2,取整,直到达到题目要求精度。得到结果:0.10101B.

    在这里插入图片描述

    图2.十进制小数转二进制

    1.2 十进制转八进制

    思路和十进制转二进制一样,参考如下例题:

    例题: 10.68D = ______ Q(精确到小数点后3位)

    **解析:**如下图所示,整数部分除以8取余数,直到无法整除。小数部分0.68乘以8,取整,然后再将小数乘以8,取整,直到达到题目要求精度。得到结果:12.534Q.

    这里写图片描述

    图3.十进制转八进制

    1.3 十进制转十六进制

    思路和十进制转二进制一样,参考如下例题:

    例题: 25.68D = ______ H(精确到小数点后3位)

    **解析:**如下图所示,整数部分除以16取余数,直到无法整除。小数部分0.68乘以16,取整,然后再将小数乘以16,取整,直到达到题目要求精度。得到结果:19.ae1H.

    这里写图片描述

    图4.十进制转十六进制
    # 2.R进制转十进制 ## 2.1 二进制转十进制 **方法为:**把二进制数按权展开、相加即得十进制数。(具体用法如下图)

    例题: 1001 0110B = ______ D

    **解析:**如下图所示。得到结果:150D.

    这里写图片描述

    图5.二进制转十进制

    2.2 八进制转十进制

    八进制转十进制的方法和二进制转十进制一样。

    例题: 26Q = ______ D

    **解析:**如下图所示。得到结果:22D.

    这里写图片描述

    图6.八进制转十进制

    2.3 十六进制转十进制

    例题: 23daH = ______ D

    **解析:**如下图所示。得到结果:9178D.

    这里写图片描述

    图7.十六进制转十进制

    3.二进制转八进制

    二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位。

    例题: 1010 0100B = ____Q

    **解析:**计算过程如下图所示。得到结果:244Q.

    这里写图片描述

    图8.二进制转八进制

    4.二进制转十六进制

    二进制转换成八进制的方法是,取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。

    例题: 1010 0100B = ____H

    **解析:**计算过程如下图所示。得到结果:a4H.

    这里写图片描述

    图9.二进制转十六进制

    5.工欲善其事,必先利其器

    下面的表格是8位二进制所对应的十进制数值,对进制转换以及类似题目的理解非常有用:

    11111111B
    1286432168421D

    注:B:二进制
           D:十进制


    例题: 135D = ______ B

    **解析:**有了上面二进制对应十进制数值的表格,我们就可以将题目给的十进制135拆分为:128+7,再从表格中找到对应的数值,拼凑即可得到答案。
    135D = 128D + 7D = 1000 0111B

    展开全文
  • Java基于界面的,八,十六进制转换工具源代码
  • 将任何 Q15 值(十六进制或二进制转换为十进制整数。 y = q152dec(x , 形式) 函数的输入参数: x - 存储在 MATLAB 字符串中的十六进制或二进制表示 形式 - 取决于输入参数的表示(十六进制或二进制)采用“hex”...
  • 基于VS2017开发平台,MFC图形化编程,使用C语言编程将十进制数据转换为二进制,八进制,十六进制数据并打印到窗口
  • 十进制数转换为二进制数 C++前言一、十进制转换为二进制的数学算法二、代码实现1.设计转换函数transfer2.完整代码总结 前言 这篇文章和大家分享一下我个人对十进制数转换为二进制数的想法,目前暂时更新只整数十...
  • Javascript和React中简单的二进制十进制转换器。 。 用户故事 用户可以在一个输入字段中输入最多8个二进制数字。 如果输入的不是0或1,则必须通知用户。 用户在单个输出字段中查看结果,其中包含与输入的...
  • 进制转换工具

    2018-08-18 16:40:36
    QT编写的进制转换工具,包含代码,可以实现32位二进制十进制,16进制相互转换,可以对二进制单独位修改
  • //将一个八位的二进制转换为十进制 #include<iostream> #include<cstdio> using namespace std; int convert(char *a){ int sum=0; int q=1; for(int i=7;i>=0;i--){ if(a[i]=='1'){ sum+=q; ...
  • 利用javascript编写任意、八、十、十六进制两两转换的进制转换器,思路:先将数字转为十进制,再由十进制转为其他进制。
  • 使用VB编写的进制转换器,支持32位位宽数据的操作并具有以下功能: 1. 十进制 十六进制 二进制 互转 2. 左移 右移操作 (新增功能) 3. 连续地与操作, 或操作, 异或操作 (新增功能) 4. 统计结果数值中1的个数用与...
  • Bin2Dec 演示: 等级: 1-初学者 二进制是所有数字计算机所... 用户在单个输出字段中查看结果,其中包含与输入的二进制数等效的十进制(以10底) 奖励功能 用户可以输入可变数量的二进制数字 有用的链接和资源
  • 函数的输入参数: x - 十进制整数形式 - 形式 - 依赖于输入参数的表示(十六进制或二进制)取'hex'或'bin' 功能价值: y - 存储在 MATLAB 字符串中的十六进制或二进制表示 例子: >> dec2q15(0.125,'十六进制') ...
  • 摘 要: 针对二进制十进制(BCD)转码的FPGA实现目标,提出了一种高效、易于重构的转码设计方案。并在FPGA开发板上成功地实现了该设计,验证结果表明,与使用中规模集成电路IP核(SN74185A)实现的7 bit、10 bit...
  • 进制转换(栈实现)

    2017-07-08 15:12:04
    利用栈实现进制转换,支持16进制以下进制(2-10、16),更改相应的参数还可扩展其他进制转换,还可以通过更改宏定义来扩宽进制转换的数据范围。用户通过输入想要转换的进制和待转换的数字
  • 原创软件,MFC界面,可以任意转换64bit数据到2进制、10进制、16进制,2进制可以直接查看任意bit,取0~63之间的任意区间值,并且支持取位、移位大小端转换、加、减、bit与、或、非等等,尤其适合做嵌入式开发的相关...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 109,398
精华内容 43,759
关键字:

十进制转换为二进制转换器