计算机是怎么转换二进制为十进制的

计算机计算使用的是二进制,但是显示的时候确实以十或十六进制显示的,它是怎么转换的呢?求教!!

转成二进制主要有以下几种:正整数转二进制,负整数转二进制,小数转二进制;

二进制转换为十进制

将每个二进制数按权展开后求和即可。请看例题:

把二进制数(101.101)2=1*22+0*21+1*20+1*2-1+0*2-2+1*2-3=(5.625)10

拓展资料

二进制是计算技术中广泛采用的一种数制。

二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,因为数字计算机只能识别和处理由‘0’.‘1’符号串组成的代码。其运算模式正是二进制。

19世纪爱尔兰逻辑学家乔治布尔对逻辑命题的思考过程转化为对符号"0''.''1''的某种代数演算,二进制是逢2进位的进位制。0、1是基本算符。因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现。

参考资料:百度百科-二进制转换

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-08-19

转成二进制主要有以下几种:正整数转二进制,负整数转二进制,小数转二进制;

1、  正整数转成二进制。要点:除二取余,然后倒序排列,高位补零。

也就是说,将正的十进制数除以二,得到的商再除以二,依次类推知道商为零或一时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零。举例说明,比如42转换为二进制,

42除以2得到的余数分别为010101,然后咱们倒着排一下,42所对应二进制就是101010.

计算机内部表示数的字节单位是定长的,如8位、16位或32位。所以,位数不够时,高位补零,所说,42转换成二进制以后就是00101010。

2、  负整数转换成二进制

方法:先是将对应的正整数转换成二进制后,对二进制取反,然后对结果再加一。还以42为例,负整数就是-42,如图4所示为方法解释。最后即为11010110。

3、小数转换为二进制

方法:对小数点以后的数乘以2,有一个结果吧,取结果的整数部分(不是1就是0喽),然后再用小数部分再乘以2,再取结果的整数部分

以此类推,直到小数部分为0或者位数已经够了。然后把取的整数部分按先后次序排列,就构成了二进制小数部分的序列,举个例子吧,比如0.125,如图5所示。

如果小数的整数部分有大于0的整数时该如何转换呢?如以上整数转换成二进制,小数转换成二进制,然后加在一起。

4、  整数二进制转换为十进制:

首先将二进制数补齐位数,首位如果是0就代表是正整数,如果首位是1则代表是负整数。

先看首位是0的正整数,补齐位数以后,将二进制中的位数分别将下边对应的值相乘,然后相加得到的就为十进制。

5、若二进制补足位数后首位为1时,就需要先取反再换算:例如,11101011,首位为1,那么就先取反吧:-00010100,然后算一下10100对应的十进制为20,所以对应的十进制为-20,方法如图8所示。

6、将有小数的二进制转换为十进制时:例如0.1101转换为十进制的方法:将二进制中的四位数分别于下边对应的值相乘后相加得到的值即为换算后的十进制。

拓展资料

二进制是计算技术中广泛采用的一种数制。

二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0

20世纪被称作第三次科技革命的重要标志之一的计算机的发明与应用,因为数字计算机只能识别和处理由‘0’.‘1’符号串组成的代码。其运算模式正是二进制。

19世纪爱尔兰逻辑学家乔治布尔对逻辑命题的思考过程转化为对符号"0''.''1''的某种代数演算,二进制是逢2进位的进位制。0、1是基本算符。因为它只使用0、1两个数字符号,非常简单方便,易于用电子方式实现。

参考资料

二进制转换-百度百科

本回答被网友采纳
第2个回答  2018-09-11

二进制换十进制:把二进制数按权展开、相加即得十进制数。从右到左用二进制的每个数去乘以2的相应次方,小数点后则是从左往右。

通用公式为:abcd.efg(2)=d*20+c*21+b*22+a*23+e*2-1+f*2-2+g*2-3

二进制数要转换为十六进制,就是以4位一段,分别转换为十六进制。

如(上行为二制数,下面为对应的十六进制):

1111 1101 , 1010 0101 , 1001 1011

F D , A 5 , 9 B

反过来,当我们看到 FD时,如何迅速将它转换为二进制数呢?

先转换F:

看到F,我们需知道它是15(可能你还不熟悉A~F这五个数),然后15如何用8421凑呢?应该是8 + 4 + 2 + 1,所以四位全为1 :1111。

接着转换D

看到D,知道它是13,13如何用8421凑呢?应该是:8 + 4 + 1,即:1101。

所以,FD转换为二进制数,为:1111 1101

扩展资料:

二进制是计算技术中广泛采用的一种数制,二进制数据是用0和1两个数码来表示的数。

它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。

计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

参考资料:百度百科 二进制数

本回答被网友采纳
第3个回答  2016-11-13

一、正整数的十进制转换二进制:
要点:除二取余,倒序排列
解释:将一个十进制数除以二,得到的商再除以二,依此类推直到商等于一或零时为止,倒取将除得的余数,即换算为二进制数的结果
例如把52换算成二进制数,计算结果如图:

52除以2得到的余数依次为:0、0、1、0、1、1,倒序排列,所以52对应的二进制数就是110100。
由于计算机内部表示数的字节单位都是定长的,以2的幂次展开,或者8位,或者16位,或者32位……
于是,一个二进制数用计算机表示时,位数不足2的幂次时,高位上要补足若干个0。本文都以8位为例。那么:
(52)10=(00110100)2


二、负整数转换为二进制
要点:取反加一
解释:将该负整数对应的正整数先转换成二进制,然后对其“取补”,再对取补后的结果加1即可
例如要把-52换算成二进制:
1.先取得52的二进制:00110100
2.对所得到的二进制数取反:11001011
3.将取反后的数值加一即可:11001100
即:(-52)10=(11001100)2


三、小数转换为二进制
要点:乘二取整,正序排列
解释:对被转换的小数乘以2,取其整数部分(0或1)作为二进制小数部分,取其小数部分,再乘以2,又取其整数部分作为二进制小数部分,然后取小数部分,再乘以2,直到小数部分为0或者已经去到了足够位数。每次取的整数部分,按先后次序排列,就构成了二进制小数的序列
例如把0.2转换为二进制,转换过程如图:

0.2乘以2,取整后小数部分再乘以2,运算4次后得到的整数部分依次为0、0、1、1,结果又变成了0.2,
如果0.2再乘以2后会循环刚开始的4次运算,所以0.2转换二进制后将是0011的循环,即:
(0.2)10=(0.0011 0011 0011 .....)2
循环的书写方法为在循环序列的第一位和最后一位分别加一个点标注


四、二进制转换为十进制:
整数二进制用数值乘以2的幂次依次相加,小数二进制用数值乘以2的负幂次然后依次相加!
比如将二进制110转换为十进制:
首先补齐位数,00000110,首位为0,则为正整数,那么将二进制中的三位数分别于下边对应的值相乘后相加得到的值为换算为十进制的结果

如果二进制数补足位数之后首位为1,那么其对应的整数为负,那么需要先取反然后再换算
比如11111001,首位为1,那么需要先对其取反,即:-00000110
00000110,对应的十进制为6,因此11111001对应的十进制即为-6
换算公式可表示为:
11111001=-00000110=-6

如果将二进制0.110转换为十进制:
将二进制中的三位数分别于下边对应的值相乘后相加得到的值为换算为十进制的结果


追问

有一个问题就是电脑即使计算结果也不会出现十进制的数,也就是说电脑即使计算0 + 2 + 4 = 6 结果 6 也是保存为二进制的数, 这样的话不又回到原来了么

追答

电脑本身就无法进行十进制计算,它的运算过程和计算结果都是二进制,十进制只是转换过来并显示的。

本回答被网友采纳
第4个回答  2018-08-05

首先讲计算方式,二进制从右往左,以0,1,2,3.......排列,第几位乘2的几次方,然后相加

比如10110=1*2^4+1*2^2+1*2^1=22

----------------------------------------------------

二进制数从低位到高位(即从右往左)计算,第0位的权值是2的0次方,第1位的权值是2的1次方,第2位的权值是2的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了。

例:将二进制的(101011)B转换为十进制的步骤如下:

1. 第0位 1 x 2^0 = 1;

2. 第1位 1 x 2^1 = 2;

3. 第2位 0 x 2^2 = 0;

4. 第3位 1 x 2^3 = 8;

5. 第4位 0 x 2^4 = 0;

6. 第5位 1 x 2^5 = 32;

7. 读数,把结果值相加,1+2+0+8+0+32=43,即(101011)B=(43)D。

因此,我们可以写出代码

本回答被网友采纳
相似回答