精华内容
下载资源
问答
  • 二进制数转换成十进制数二进制数转换成十进制数
  • 描述: 把二进制数转换成十进制数。 输入: 输入是一个8位的二进制数。 输出: 把输入的数转换为十进制数输出。 输入样例: 10000001 输出样例: 129
  • 如何把单精度二进制数转换成十进制数

    如何把单精度二进制数转换成十进制数?

    单精度二进制数32位,符号1位,指数8位,尾数23位

    步骤:

    1、如果最高位为1,则为复数,否则为正数。
    2、接下来8位为指数,减去二进制01111111(十进制127),得到未调整的指数值。
    3、后23位是尾数,尾数的小数点后没省略了1.,尾数尾部的0可以忽略。根据123,求得浮点数。
    4、根据浮点数的表示,得到为二进制表示
    5、转化为十进制数

    例子:

    浮点数:0011 1111 1111 0000 0000 0000 0000 0000

    1、正数
    2、调整指数:01111111,未调整指数:0,十进制0
    3、尾数:111,得 1.111×20
    4、二进制数:+1.111
    5、对应的十进制数:+10 7/8 或 +10.875

    展开全文
  • 二进制数转换成十进制数

    千次阅读 2017-01-19 11:14:00
    二进制数转换成十进制数public void show(int a[]) { int n = 0; int count = a.length-1; for (int j = 0; j ; j++) { n = n + (int) Math.pow(2, j) * a[c

    二进制数转换成十进制数

    public void show(int a[]) {
    int n = 0;
    int count = a.length-1;
    for (int j = 0; j < a.length; j++) {
    n = n + (int) Math.pow(2, j) * a[count–];
    }
    System.out.print(n + ” “);
    }

    展开全文
  • C语言算法之将十进制数转换成二进制数

    万次阅读 多人点赞 2018-06-20 14:35:29
    导语:在C语言中没有将...下面给大家讲述一下如何编程实现将十进制数转换成二进制数。 先将源代码展示给大家: #include &lt;stdio.h&gt; void main() { //进制转换函数的声明 int transfer(int x)...

    导语:在C语言中没有将其他进制的数直接输出为二进制数的工具或方法,输出为八进制数可以用%o,输出为十六进制可以用%x,输出为二进制就要我们自行解决了。下面给大家讲述一下如何编程实现将十进制数转换成二进制数。

    原文的实现方式太年轻了,是我大一的时候写的。由于太多小伙伴被『溢出』困扰(在溢出的情况下原文的实现就不灵了),补充下面这种最佳的实现方式。

    最佳的方式是利用栈先进后出的特性,计算每一位(0或1)压入栈中,再将所有元素出栈得到的01串就是目标二进制数。以下为C++实现代码,想用C语言实现的可以进行相应的改造,用数组实现一个栈,用字符数组实现字符串。

    #include <iostream>
    #include <stack>
    
    using namespace std;
    
    string transfer(int x) {
        if (x == 0) {
            return "0";
        }
        string ret;
        stack<char> st;
        while (x > 0) {
            if (x % 2 == 1) {
                st.push('1');
            } else {
                st.push('0');
            }
            x /= 2;
        }
        while (!st.empty()) {
            ret.push_back(st.top());
            st.pop();
        }
        return ret;
    }
    
    int main() {
        int x;
        cin >> x;
        cout << transfer(x) << endl;
        return 0;
    }

    下面是大一时候的实现,没有考虑溢出的问题,对于不懂栈的同学可以看一下。

    先将源代码展示给大家:

    #include <stdio.h>
    void main()
    {
        //进制转换函数的声明
        int transfer(int x);
        int x;
        printf("请输入一个十进制数:");
        scanf("%d",&x);
        printf("转换成二进制数是:%d\n",transfer(x));
    }
    int transfer(int x)
    {
        int p=1,y=0,yushu;
        while(1)
        {
            yushu=x%2;
            x/=2;
            y+=yushu*p;
            p*=10;
            if(x<2)
            {
                y+=x*p;
                break;
            }
        }
        return y;
    }

    具体算法体现在函数体内,使用了一个while(1)的死循环,当结果产生后跳出循环。变量yushu是每一次循环内产生的余数,变量x每次循环都会被赋予新的值,这个新的值就是每一次循环内产生的商。当产生的商小于2时即产生了最后的结果(二进制数),然后跳出循环。

    例如:函数自变量若为7,用自变量7除以2,得到第一次循环产生的余数为1,第一次循环产生的商为3;用第一次循环产生的商3除以2,得到第二次循环产生的余数为1,第二次循环产生的商为1。

    变量y的存放也是有一定技巧的,由于每次产生的余数都小于2并且都是最后二进制数中需要按位展现出来的,因此每一次循环产生的余数都要合理地进行存放。第一次产生的余数放在个位,第二次产生的余数放在十位,第三次产生的余数放在百位......依次类推,直至某一次循环产生的商小于2,最后再把小于2的那个商放在最高位。变量p的作用就是控制位数,变量y的初始值定为0,变量p的初始值定为1,每次循环内变量p都自乘10,每次循环内都让变量y加上yushu*p,这样就实现了余数的按位存放。最后将小于2的那个商乘以p加到变量y中,得到最后的二进制数。

    例如:还是以自变量7为例,第一次循环后y的值为1,第二次循环内if语句之前y的值为11,if语句内y的值变为111,111即为7的二进制数。

    注意:变量p的自乘要放在变量y加上yushu*p之后!顺序不能颠倒!

    欢迎大家关注/订阅我的微信公众号Code Art Online,我会在我的公众号分享个人见闻,发现生活趣味;这里不仅有0和1,还有是诗和远方↓↓↓

    展开全文
  • 二进制数的值转换成十进制数的值,只需将二进制数的各数位的值和位权相乘,然后将相乘的结果相加即可 计算中用到的属性:基数、位数、位权 注:基数的0次幂都为1 基数:2进制的基数为2 位数:数的位数减1 位权...

    二进制数的值转换成十进制数的值,只需将二进制数的各数位的值和位权相乘,然后将相乘的结果相加即可

    计算中用到的属性:基数、位数、位权

    注:基数的0次幂都为1

    基数:2进制的基数为2

    位数:数的位数减1

    位权:基数的位数次幂

    ======================================计算方法====================================

    二进制转换十进制:从右向左计算,(第1位数值×位权)+(第2位数值×位权)+(第3位数值×位权)+(第4位数值×位权)+(第5位数值×位权)+(第6位数值×位权)+(第7位数值×位权)+(第8位数值×位权)

    例如:二进制数00100111转换成十进制数

    基数:2

    位数:(各个数位减1)

    第1位数:1减1  位数:0

    第2位数:2减1  位权:1

    第3位数:3减1  位权:2

    第4位数:4减1  位权:3

    第5位数:5减1  位权:4

    第6位数:6减1  位权:5

    第7位数:7减1  位权:6

    第8位数:8减1  位权:7

    位权(基数位数

    第1位数:2的0次幂(基数的0次幂都为1)  位权:1

    第2位数:2的1次幂(2)  位权:2

    第3位数:2的2次幂(2×2)  位权:4

    第4位数:2的3次幂(2×2×2)  位权:8

    第5位数:2的4次幂(2×2×2×2)  位权:16

    第6位数:2的5次幂(2×2×2×2×2)  位权:32

    第7位数:2的6次幂(2×2×2×2×2×2)  位权:64

    第8位数:2的7次幂(2×2×2×2×2×2×2)  位权:128

    得出的十进制结果:(1)+(1×2)+(1×2×2)+(0×2×2×2)+(0×2×2×2×2)+(1×2×2×2×2×2)+(0×2×2×2×2×2×2)+(0×2×2×2×2×2×2×2)

           数值  位数  基数  位权       

    第1位  1  1-1=0  2   20=1    1×1=1

    第2位  1  2-1=1  2   21=2    1×2=2

    第3位  1  3-1=2  2   22=4    1×4=4

    第4位  0  4-1=3  2   23=8    0×8=0

    第5位  0  5-1=4  2   24=16  0×16=0

    第6位  1  6-1=5  2   25=32  1×32=32

    第7位  0  7-1=6  2   26=64  0×64=0

    第8位  0  8-1=7  2   27=128   0×128=0

     

    转载于:https://www.cnblogs.com/gc-note/p/7576150.html

    展开全文
  • 题目:输入一个二进制数转换成十进制。 题目分析:书上说,在一般情况下,c++的键盘输入可以识别是十进制数、八进制数和十六进制数,因此输入的二进制数据要作为字符处理。(其实我觉得数字也没问题吧)。 正确...
  • 补充知识点: 头文件:#include pow() 函数用来求 x 的 y 次幂(次方),其原型为: double pow(double x, double y); 栈:先进后出 队列:... /*转换十进制*/ } printf("Decimal is %d\n",sum); getche(); }
  • 输入1个无符号二进制数串,编写程序将其转换成对应的十进制数,并输出。 输入格式: 输入1个二进制数串(至少1位且不超过16位)。 输出格式: 输出转换后的十进制数。 输入样例: 0110110001100 输出样例: 3468 源...
  • 题目:将十进制数转换成二进制数。 //C4Q1 -- Conversion of decimal numbers to binary numbers 头文件 #include<iostream> 主函数 int main() { using namespace std; int D = 0; int B[50]; //定以一...
  • 二进制数如何转换成十进制数 双涉水法 (Double Dabble Method) In this method, the decimal integer number is converted to a binary integer by successive division by 2, and the decimal fraction is ...
  • 十进制数转换成二进制数package yichuansuanfa;import java.util.Random;public class decimalistChangeBinarySystem { Random random = new Random();public int[] getBinarySystem(int decimalist) { int ...
  • 运用移位将十进制数转换成二进制数,八进制数,十六进制数 提要:通过移位,求出对应位的数的值,用char保存 实现代码: public class Test { public static void main(String[] args) { toBinary(60); //...
  • 进制数转换成二进制 import java.util.Scanner; public class Textwile { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println(“请输入一个十进制的整数:...
  • 十进制数转换成二进制、八进制、十六进制算法 递归算法: //将数字a转成b进制数 public static void anInt(int a, int b) { if (a / b != 0) { an(a / b, b); } if (a % b >= 10) { System.out.print(...
  • 一、二进制数转换成十进制数二进制数转换成十进制数的基本做法是,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。 例1105 把二进制数110.11转换成十...
  • 将十进制数转换成二十进制数

    千次阅读 2017-03-07 22:59:44
    代码如下:/* 实现将输入的十进制整数转换成二十进制 * 并输出二十进制的结果 * 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J * */ #include #include <stdlib.h> //提供atoi()void print20Data(int data);int main...
  • System.out.print(a + "的二进制数是:"); for (int i = 31; i >= 0; i--) { System.out.print((a & (1 << i)) == (1 << i) ? "1" : "0"); } } 输出结果看下: int类型是4字节的,1个...
  • 用文本文档编写的汇编语言程序 从键盘输入一个十进制数,以二进制输出
  • 与二进制转换成十进制的做法差不多。假设一个二进制数1100,那么这个二进制代表的十进制可以这样计算:0*Math.pow(2,0) + 0*Math.pow(2,1) + 1*Math.pow(2,2) + 1*Math.pow(2,3) = 12。只需要注意二十六进制数A代表...
  • 第一部分:整数转换 逐次除2取余法用2逐次去除待...例子1: 将83转换成二进制数(逐次除2取余法) 得到的余数依次为: 1 0 1 0 0 1 1 可得到:(83)10=(1010011)2第二部分:小数转换 乘2取整法逐次用2去乘待...
  • 十进制数转换成二进制数输出

    千次阅读 2012-02-27 20:14:42
    /*用数组十进制数转换成二进制数输出 */ #include using namespace std; int main() { int a[50],n,i,j; cout请输入一个十进制数:"; cin>>n;//输入一个十进制数 if(n==0) cout; else { ...
  • PAGE PAGE #/ 4 实验课题一将一个十进制数转换成另外一个 P 进制数字符串(可以是 进制到十六进制) 转换函数的原 型为 void Convert (int n,char str[], unsigned P; n输入待转换的数 str :输出转换好的P进制字符串...
  • 十进制整数转换成二进制数 #include<stdio.h> main() { int a,b,i=0,j=0; char s[10],temp; printf("input the number:"); scanf("%d",&a); while(a!=0) { s[i]=a%2+48;//把数字加上48(字符0的...
  • 实验课题一 将一个十进制数转换成另外一个P进制数字符串可以是二进制到十六进制转换函数的原 型为 void Convert (int n, char str[], unsigned P; n输入待转换的数 str输出转换好的P进制字符串 P输入要转换的进制...
  • 一、实验目的 1、 熟练掌栈的结构特点,...设计算法并写出代码,实现一个二进制转换成2进制数。 三、源代码 #include using namespace std; const int StackSize=10; template class SeqStack { publ
  • > 十 二进制数转换十进制数  二进制数第0位的权值是2的0次方,第1位的权值是2的1次方……  所以,设有一个二进制数:0110 0100,转换为10进制为:  下面是竖式:  0110 0100 换算 ...
  • //用栈实现进制转换十进制转换成二进制数、八进制数、十六进制数#include<stdio.h>//进制转换 实现十进制转换成二进制数、八进制数、十六进制数#include<malloc.h>#include<process.h>#define...
  • 二进制负数转换成十进制

    千次阅读 2017-12-15 10:17:15
    例:(-10)11110110转化成十进制数(前提是二进制负数)1.(二进制)11110110逐位取反为:00001001; 2.二进制数+1得:00001010,加上负号; 3.结果为-10;例:(-5)11111011转化成二进制数1.(二进制)11111011...

空空如也

空空如也

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

二进制数转换成十进制数