三九宝宝网宝宝百科宝宝知识

二进制十六进制十进制之间怎么换算

05月14日 编辑 39baobao.com

[二进制、八进制、十六进制5]6.2.5 十六进制数转换成十进制数2进制,用两个阿拉伯数字:0、1;8进制,用八个阿拉伯数字:0、1、2、3、4、5、6、7;10进制,用十个阿拉伯数字:0到9;16进制,用十六个阿拉伯数字…...+阅读

我们先从熟悉的十进制说起,十进制即逢十进一,由0-9组成,它的每一位都是十的幂,比如123,个位是10的0次方,十位是10的1 次方,百位是10的2次方,因此123其实就相当于1*10(2)+2*10(1)+3*10(0)=1*100+2*10+3=123(注:括号内的数表示次方),对于二进制和十六进制,转成十进制也是同样的道理,二进制的每一位是2的幂,十六进制的每一位是16的幂,把十进制转换中的10换成2或16即可。通常将二进制,十六进制转换成十进制的方法叫安全展开法。比如:

(1)二进制——>;十进制:

二进制数1101=1*2(3)+1*2(2)+0*2(1)+1*2(0)

=8+4+0+1

=13

(2)十六进制——>;十进制:

十六进制数12=1*16(1)+2*16(0)=16+2=18

反过来:十进制转二进制和十六进制,分别用除2取余法和除16取余法。比如:十进制数13 除以2,商为6,余数为1,

将得到的商6继续除以2,商为3,余数为0,

将得到的商3继续除以2,商为1,余数为1,

将得到的商1继续除以2,商为0,余数为0。

当算到商为0时,结束。结果从下往上看,应该为1101。

十六进制转十进制一样的,只是是除以16。

二进制转十六进制:

因为二进制数仅由0和1组成,你只需记住,二进制数的低位到高位分别表示1,2,4,8,16,32……,即2的(n-1)次方即可。对于四位二进制数,从高到低分别是8,4,2,1。二进制转16进制,只需将2进制数从右向左每四位一组合,每一个组合以一个十六进制数表示。比如:

(3)1110110四个四个组合后相当于0011 1010(注意位数不足补0),

0011=2+1=3,1010=8+2=A,所以转换成的十六进制数是3A.

反过来,十六进制转二进制,只需把十六进制的每一位分解成四位二进制数即可,比如十六进制的35,首先变3,3介于2和4之间,就想办法把2和1凑成3,2+1=3,所以只有第一位和第二位是1,即0011;再变5,5介于4和8之间,就要想办法把8以前的4,2,1三位数凑成5,可知4+1=5,所以第一位和第三位为1,即0101,所以转换成的二进制数是00110101。

十六进制十进制八进制二进制。怎样换算的

1.二进制数转换为十进制数 二进制数第0位的权值是2的0次方,第1位的权值是2的1次方…… 所以,设有一个二进制数:0110 0100,转换为10进制为: 下面是竖式: 0110 0100 换算成 十进制 第0位 0 * 20 = 0 第1位 0 * 21 = 0 第2位 1 * 22 = 4 第3位 0 * 23 = 0 第4位 0 * 24 = 0 第5位 1 * 25 = 32 第6位 1 * 26 = 64 第7位 0 * 27 = 0 + --------------------------- 100 用横式计算为: 0 * 20 + 0 * 21 + 1 * 22 + 1 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100 0乘以多少都是0,所以我们也可以直接跳过值为0的位: 1 * 22 + 1 * 23 + 1 * 25 + 1 * 26 = 100 2. 八进制数转换为十进制数 八进制就是逢8进1。 八进制数采用 0~7这八数来表达一个数。 八进制数第0位的权值为8的0次方,第1位权值为8的1次方,第2位权值为8的2次方…… 所以,设有一个八进制数:1507,转换为十进制为: 用竖式表示: 1507换算成十进制。 第0位 7 * 80 = 7 第1位 0 * 81 = 0 第2位 5 * 82 = 320 第3位 1 * 83 = 512 + -------------------------- 839 同样,我们也可以用横式直接计算: 7 * 80 + 0 * 81 + 5 * 82 + 1 * 83 = 839 结果是,八进制数 1507 转换成十进制数为 839 3.十六进制数转换成十进制数 2进制,用两个阿拉伯数字:0、1; 8进制,用八个阿拉伯数字:0、

1、

2、

3、

4、

5、

6、7; 10进制,用十个阿拉伯数字:0到9; 16进制,用十六个阿拉伯数字……等等,阿拉伯人或说是印度人,只发明了10个数字啊? 16进制就是逢16进1,但我们只有0~9这十个数字,所以我们用A,B,C,D,E,F这五个字母来分别表示10,11,12,13,14,15。字母不区分大小写。 十六进制数的第0位的权值为16的0次方,第1位的权值为16的1次方,第2位的权值为16的2次方…… 所以,在第N(N从0开始)位上,如果是是数 X (X 大于等于0,并且X小于等于 15,即:F)表示的大小为 X * 16的N次方。 假设有一个十六进数 2AF5, 那么如何换算成10进制呢? 用竖式计算: 2AF5换算成10进制: 第0位: 5 * 160 = 5 第1位: F * 161 = 240 第2位: A * 162 = 2560 第3位: 2 * 163 = 8192 + ------------------------------------- 10997 直接计算就是: 5 * 160 + F * 161 + A * 162 + 2 * 163 = 10997 (别忘了,在上面的计算中,A表示10,而F表示15) 现在可以看出,所有进制换算成10进制,关键在于各自的权值不同。 假设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式: 1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100 4.十进制数转换到二、八、十六进制数 4.1.10进制数转换为2进制数 给你一个十进制,比如:6,如果将它转换成二进制数呢? 10进制数转换成二进制数,这是一个连续除2的过程: 把要转换的数,除以2,得到商和余数, 将商继续除以2,直到商为0。最后将所有余数倒序排列,得到数就是转换结果。 听起来有些糊涂?我们结合例子来说明。比如要转换6为二进制数。 “把要转换的数,除以2,得到商和余数”。 那么: 要转换的数是6, 6 ÷ 2,得到商是3,余数是0。 (不要告诉我你不会计算6÷3!) “将商继续除以2,直到商为0……” 现在商是3,还不是0,所以继续除以2。 那就: 3 ÷ 2, 得到商是1,余数是1。 “将商继续除以2,直到商为0……” 现在商是1,还不是0,所以继续除以2。 那就: 1 ÷ 2, 得到商是0,余数是1 (拿笔纸算一下,1÷2是不是商0余1!) “将商继续除以2,直到商为0……最后将所有余数倒序排列” 好极!现在商已经是0。 我们三次计算依次得到余数分别是:0、

1、1,将所有余数倒序排列,那就是:110了! 6转换成二进制,结果是110。 把上面的一段改成用表格来表示,则为: 被除数 计算过程 商 余数 6 6/2 3 0 3 3/2 1 1 1 1/2 0 1 (在计算机中,÷用 / 来表示) 4.2.10进制数转换为

8、16进制数 非常开心,10进制数转换成8进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成8。 来看一个例子,如何将十进制数120转换成八进制数。 用表格表示: 被除数 计算过程 商 余数 120 120/8 15 0 15 15/8 1 7 1 1/8 0 1 120转换为8进制,结果为:170。 非常非常开心,10进制数转换成16进制的方法,和转换为2进制的方法类似,惟一变化:除数由2变成16。 同样是120,转换成16进制则为: 被除数 计算过程 商 余数 120 120/16 7 8 7 7/16 0 7 120转换为16进制,结果为:78。 4.3.二、十六进制数互相转换 二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。 我们也一样,只要学完这一小节,就能做到。 首先我们来看一个二进制数:1111,它是多少呢? 你可能还要这样计算:1 * 20 + 1 * 21 + 1 * 22 + 1 * 23 = 1 * 1 + 1 * 2 + 1 * 4 + 1 * 8 = 15。 然而,由于1111才4位,所以我们必须直接记住它每一位的权值,并且是从高位往低位记,:

8、

4、

2、1。即,最高位的权值为23 = 8,然后依次是 22 = 4,21=2, 20 = 1。 记住8421,对于任意一个4位的二进制数,我们都可以很快算出它对应的10进制值。 下面列出四位二进制数 xxxx 所有可能的值(中间略过部分) 仅4位的2进制数 快速计算方法 十进制值 十六进值 1111 = 8 + 4 + 2 + 1 = ...

进制怎么算?怎么列公式

二进制数1101转十进制: 1*2的三次幂+1*2的二次幂+0*2的一次幂+1*2的零次幂=8+4+0+1=13 八进制507转十进制 5*8的2次幂+0*8的1次幂+7*8的0次幂= 5*64+0*8+7*1=327(10进制) 10进制327转八进制: 327/8 = 40 余数为7 40/8 = 5 余数为0 于是八进制数为507(第一位5是最后的商) 10进制13转2进制: 13/2 = 6 余数为1 6/2 = 3 余数为0 3/2 = 1 余数为1 所以对应的二进制数为1101(第一位1是最后的商) 把307(10进制)转换为16进制: 307/16 = 19 余数为3 19/16 = 1 余数为3 对应的16进制数应该是:133 再把133转回10进制: 1*16的2次幂+3*16的1次幂+3*16的零次幂 =256+48+3=307

以下为关联文档:

二进制、八进制、十六进制96.5 原码、反码、补码结束了各种进制的转换,我们来谈谈另一个原码、反码、补码。我们已经知道计算机中,所有数据最终都是使用二进制数表达。我们也已经学会如何将一个10进...

二进制、八进制、十六进制1第六章 二进制、八进制、十六进制6.1 为什么需要八进制和十六进制?6.2二、八、十六进制数转换到十进制数6.2.1 二进制数转换为十进制数6.2.2 八进制数转换为十进制数...

二进制、八进制、十六进制116.7 本章小结很难学的一章?来看看我们主要学了什么:1)我们学会了如何将二、八、十六进制数转换为十进制数。三种转换方法是一样的,都是使用乘法。2)我们学会了如何将十...

二进制、八进制、十六进制106.6 通过调试查看变量的值下面我们来动手完成一个小小的实验,通过调试,观察变量的值。我们在代码中声明两个int 变量,并分别初始化为5和-5。然后我们通过CB提供的调试手段,可以查...

二进制、八进制、十六进制36.2二、八、十六进制数转换到十进制数6.2.1 二进制数转换为十进制数二进制数第0位的权值是2的0次方,第1位的权值是2的1次方……所以,设有一个二进制数:0110 0100,转换为10...

计算机中二进制八进制十进制十六进制如何转换求教#include "iostream.h" #include "math.h" void bin(int); void ba(int); void CalHex(int); void main() { long n; cout<&lt;"请输入任一十进制整数:"; cin>>n; cout<&lt;"其二进制表...

二进制怎么转换成十进制#includevoid ex10to2(); void ex10to8(); void ex10to16(); void main() { int select; do { printf("\n 0、退出 1、十进制~二进制 2、十进制~八进制 3、十进制~十六进制\n...

二进制八进制十进制十六进制的计算及转换二进制八进制十进制十六进制的计算及转换,vb计算器进制转换程序:八转十进制 (31.5)(八) 整数部分: 3*8 (1)+1*8(0)=25 小数部分: 5*8(-1)=0.625 所以(31.5)(八)=(25.625)(十)十转八进制 (25.6...

二进制十进制十六进制有什么用在生活中怎么运用二进制十进制十六进制有什么用在生活中怎么运用,进制数在生活中有什么用:二进制: 技术实现简单,计算机是由逻辑电路组成,逻辑电路通常只有两个状态,开关的接通与断开,这两种状态正...

推荐阅读
图文推荐