二、八、十六进制怎么转化成十进制?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二、八、十六进制怎么转化成十进制?相关的知识,希望对你有一定的参考价值。

一: 十进制数转换成二进制数。 随便拿出一个十进制数“39”,(假如你今天买书用了39元)先来把这个39转换成2进制数。 商 余数 步数 39/2= 19 1 第一步 19/2= 9 1 (这里的19是第一步运算结果的商) 第二步 9/2= 4 1 (这里的9是第二步运算结果的商) 第三步 4/2= 2 0 (这里的4是第三步运算结果的商) 第四步 2/2= 1 0 (这里的2是第四步运算结果的商) 第五步 1/2= 0 1 (这里的1是第五步运算结果的商) 第六步 那么十进制数39转换成2进制数就是100111. 既39(10)=100111(2) 解析一:1. 当要求把一个10进制数转换成2进制数的时候,就用那个数一直除以2得到商和余数。 2. 用上一步运算结果的商在来除以2,再来得到商和余数。 3. 就这样,一直用上一步的商来除以2,得到商和余数!那么什么时候停止呢? 4. 请看上述运算图,第六步的运算过程是用1除以2.得到的商是0,余数是1. 那么请你记住,记好了啊共2点。 A: 当运算到商为“0”的时候,就不用运算了。 B:1/2的商为“0”余数为“1”。这个你要死记住,答案并不是0.5! 答案就是商为“0”余数为“1”。你不用去思考为什么,记好了就行了! 5. 在上述图中你会清晰的看到每一步运算结果的余数,你倒着把它们写下来就是“100111”了。那么这个就是结果了。 6. 在上述图中符号“/”代表“除以”。 二: 十进制数转换成八进制数。 随便拿出一个十进制数“358”,(假如你今天买彩票中了358元)。358是我们现实生活中所用10进制表达出来的一个数值,转换成八进制数十多少? 商 余数 步数 358/8= 44 6 第一步 44/8= 5 4 (这里的44是第一步运算结果的商) 第二步 5/8= 0 5 (这里的5是第二步运算结果的商) 第三步 那么十进制数358转换成8进制数就是546。既358(10)=546(8) 解析二: 1.没什么好说的啦,10进制数转换成2进制数 和 10进制数转换成8进制数 的唯一不一样的地方就是除数变了,除数由“2” 变成了“8”。 其余的都一样。所以解析一,你一定要看明白并记好。 2.你或许会疑问5/8为什么商为“0” 余数为“5”。因为5不够被8除,那么商就是“0”余数就是“5” 同理1/2商为“0”余数为“1”。不多解释了啊! 三: 十进制数转换成十六进制数。 随便拿出一个十进制数“120”,(假如你今天捡了120元)。120是我们现实生活中所用10进制表达出来的一个数值,转换成十六进制数十多少? 商 余数 步数 120/16= 7 8 第一步 7/16= 0 7 (这里的7是第一步运算结果的商) 第二步 @4 那么十进制数120转换成16进制数就是78,既120(10)=78(16)。 解析三: 上同,看明白并记好解析一和解析二就可。 到这里,我想我已经把10进制数转化成2进制数,8进制数,16进制数已经给你讲的很明白了。 在这里你就可以看到,十进制数148转换成2进制8进制16进制所得到数的长度是不是在逐渐缩短。这就是所谓的“进制越大,数的表达长度越短” 。 那么接下来我来给你讲解2进制数,8进制数,16进制数怎样转换成10进制数。 四:2进制数转换成10进制数。 就拿这个数吧“111101”。 位置 第5位 第4位 第3位 第2位 第1位 第0位 数值1 1 1 1 0 1 111101(2)= 1*2的0次方 + 0*2的1次方 + 1*2的2次方 + 1*2的3次方 + 1*2的4次方 + 1*2的5次方 = 1*1 + 0*2 + 1*4 + 1*8 + 1*16 +1*32 = 1 + 0 + 4 + 8 + 16 + 32 = 61(10) @5 既2进制数111101转换成10进制数为“61” 解析一: 1. “2的0次方”其实是一个数学表达式,但我打不出来那种数学的格式,就用纯汉语了。“2”就是基数,“0”就是次方数。 2的0次方,最后的结果是1!记好了啊,任何数的0次方结果都是“1”.说到这里就出来了一个很具争论的问题,那就是0的0次方是等于“1”还是“0”?当然你没必要 去研究了啊。你只要记住2的0次方=“1”, 8的0次方=“1”, 16的0次方=“1”等于“1”就可以了。 2. “1*2的0次方”中的1是第0位上的数。 那么为什么要乘以2的0次方呢? 因为它是2进制数,而且这个1处在第0位。 3.“0*2的1次方”中的0是第1位上的数。 那么为什么要乘以2的1次方呢? 因为它是2进制数,而且这个0处在第1位。 4.“1*2的2次方”中的1是第2位上的数。 那么为什么要乘以2的2次方呢? 因为它是2进制数,而且这个1处在第2位。 5. 后面的2的3次方,2的4次方,2的5次方,就不用我多解释了吧。 6. 将计算出来的数相加,就是这个2进制数转换成10进制数的结果。 7. 还要注意一点,一个2进制数从右边开始的第一个数位是“第0位”而不是“第1位”,要记好了啊。看看我上面给你做的图示。 其实把8进制数,16进制数转换成10进制数,唯一变的地方就是基数变了。我给你分别个例子,你在对照上面的解析四,我相信这些你都会搞明白的。 8进制数转换成10进制数。 224(8)=?(10) 第0位 4*8的0次方 = 4 第1位 2*8的1次方 =16 第2为 2*8的2次方 =128 4+16+128=148 @6 那么224(8)=148(10) 352(8)=?(10) 8进制数352的第0位为“2”,第1位为“5”, 第2位为“3” 第0位 2*8的0次方 =2 第1位 5*8的1次方 =40 第2位 3*8的2次方 =192 2+40=192=234 那么352(8)=234(10) 16进制数转换成10进制数 2AF5(16)=?(10) 16进制数2AF5的第0位为“5”,第1位为“F”, 第2位为“A” 第3位为“2” 第0位 5*16的0次方 =5 第1位 F*16的1次方 =240 第2位 A*16的2次方 =2560 第3位 2*16的3次方 =8192 5+240+2560+8192=10997 那么2AF5(16)=10997(10) 或许你对A和F看不懂吧?没事,往下看。 @7 在2进制中只有2个数字,既1,0 在8进制中只有8个数字,既0,1,2,3,4,5,6,7 在10进制中有10个数字,既0,1,2,3,4,5,6,7,8,9 在16进制中有10个数字和6个字母,既0,1,2,3,4,5,6,7,8,9和A,B,C,D,E,F, 字母A代表数字10,字母B代表数字11,字母C代表数字12,字母D代表数字13,字母E代表数字14,字母F代表数字15, 那么F*16的1次方 =240和A*16的2次方 =2560 你明白了吧? 2AF5(16)=10997(10)你也该明白了吧。 其实你学习到这里,基本上都应该会10进制,2进制,8进制,16进制之间的相互转换了吧! 你要考虑一个问题,出了一道题,将一个2进制数转化成16进制数!你会做吗? 最笨的办法就是先把2进制数转换成10进制数,在转化成16进制数。 当然有简单的把法。你需要记住一些常用的就好了。那些事常用的,往下看! 二进制数(仅4位的2进制数) = 十进制数 = 16进制数 0000 = 0 = 0 0001 = 1 = 1 0010 = 2 = 2 0011 = 3 = 3 0100 = 4 = 4 0101 = 5 = 5 0110 = 6 = 6 0111 = 7 = 7 1000 = 8 = 8 1001 = 9 = 9 1010 = 10 = A 1011 = 11 = B 1100 = 12 = C 1101 = 13 = D 1110 = 14 = E 1111 = 15 = F @8 当你能熟练记住这些常用的,那么做2进制数与16进制数相互转换的时候就很轻松了。来给你举个例子看看啊。 111111011010010110011011(这是一个2进制数) 先把它所包含的数字分成4个4个在一块,如下所示: 1111 1101 1010 0101 1001 1011 根据上述常用表可以得到 1111=F 1101=D 1010=A 0101=5 1001=9 1011=B 那么它所对应的16进制数就是“FDA59B” 同理给你一个16进制数,怎么快速转换成2进制呢? FD(16)=?(2) 呵呵,记住上面的常用数据表,那不是很快就出来了。 FD(16)=1111 1101(2) 一: 2进制转换10进制 101.101(2)=?(10) (解析一) 1. 先把2进制数101.101分成整数和小数部分,即101和0.101 101(2)=5(10) 2. 开始把0.101转换成10进制的。 小数点后面的“1”,处于负一位,后面的“0”处于负二位,在后面的“3”处于负三位, 因为是2进制的转换成10进制的,那么0.101=1*2的-1次方+0*2的-2次方+1*2的-3次方=0.5+0+0.125=0.625 3. 将整数部分的和小数部分的相加,5+0.625=5.625 即101.101(2)=5.625(10) 4. 数学知识,一个数的负几次方=这个数分之一的负几次方的绝对值次方,即(举例)5的-2次方=(1/5)的2次方 一个数的负几分之一次方=根号下的这个数,即(举例)5的-(1/2)次方=根号5. 那么8进制,16进制转换10进制,将“1*2的-1次方+0*2的-2次方+1*2的-3次方”里面的乘号后面的“2”分别换成“8”和“16”就好了。其余的都雷同上述。 二: 10进制转换2进制 57.75(10) = ?(2) 解析二: 1. 把10进制数分成2部分,即整数部分57和小数部分0.75. 整数部分转换成2进制前面给你讲过了,主要讲小数部分的。 A: 0.75*2=1.5 取整数部分“1” B:(1.5-1)*2=1.0 继续取整数部分“1” c: (1.0-1)*2=0 在取整数部分“0” 到此就停止计算了。 然后讲取出来的整数部分 按正序排列,即110 即0.75(10)=0.110(2) 2. 讲整数和小数相加,即111001+0.110=111001.110 即57.75(10)=111001.110(2) 3. 就这么简单,切记啊。对于小数部分的一定要正取,整数部分的要逆取。 10→2: (57.75)10 = (111001.110)2 整数部分 57/2 1 小数部分 0.75*2 1 28/2 0 (1.5-1)*2 取 1 14/2 0 (1.0-1)*2 取0 7/2 1 3/2 1 1/2 1 10→8: (80.140625)10 = (120.11)8 80/8 0 0.140625*8 取 1 10/8 2 (1.125-1)*8 取 1 1/8 1 (1.0-1)*8 取 0 10→16: (1032493.13671875)10 = (FC12D.23)16 1032493/16 13 0.13671875*16 取 2 64530/16 2 (2.1875-2)*16 取 3 4033/16 1 (3.0-3)*16 取 0 252/16 12 15/16 15 什么叫进制? 现在所存在的进制有10进制,2进制,8进制,16进制。 我们日常生活中的数学计算采用的是10进制。比如你现在有9元钱,过两天又有了2元钱。总共多少钱?采用我们日常生活所用的10进制,逢十进一,算出的结果就是11元钱。 计算机它只能认识电路的通导和阻塞,也就是0和1.所以计算机不能采用10进制来计算数据,只能采用2进制来计算数据。逢2进1. 那么为什么后来有出现了8进制,16进制呢?为什么没有3进制,5进制呢? 8,16分别是2的3次方,2的4次方。这样来储存数据有利于2进制,8进制,16进制之间的相互转换。所以没有3进制,5进制。 而且进制越大,这个数所占的字节就越小,计算机要储存数据,所占的字节越少,那么有限的空间它就能储存更多的数据。给你举个例子,你就明白了。 随便拿出来一个10进制数,148. 148(10)=10010100(2) 148(10)=224(8) 148(10)=94(16) 看到效果了吧,把它转换成2进制,数位很多。转换成16进制,数位仅仅只有2位!而且有的编程语言要用到8进制,16进制的。就比如C++,C语言。 参考技术A 本人是个菜鸟,提点看法,不喜欢就略过。二,八,十六进制转换十进制根据教科书的办法很麻烦,举个例子10,二进制 1010,八进制12,十六进制A(10)。教科书的方法2转10,1乘2的3次方加上1乘2的2次方等于10。八转十,1乘8的8次方加2乘8的0次方等于10。十六转十,A乘以16的零次方也等于10。

十进制转化为十六进制怎么算

还有十六进制转化为十进制

十进制转化为十六进制计算方式,简单说就是整数除以16取余,直到商为0为止,然后从最后一个余数读到第一个

十六进制转化为十进制计算方式,按权展开、相加即得十进制数。

参考技术A

直接除16,反向取余。

如52转换成16进制。52/16=3……4,余数为4;接着3/16=0……3。所以转换的结果为34H。在比如把60536转换成16进制。

60536/16=3783……8,3783/16=236……7,236/16=14……12,12对应16进制的C,14/16=0……14,14对应16进制的E,所以最终转换结果为EC78。

十进制的发展

在计算数学方面,中国大约在商周时期已经有了四则运算,到春秋战国时期整数和分数的四则运算已相当完备。其中,出现于春秋时期的正整数乘法歌诀“九九歌”,堪称是先进的十进位记数法与简明的中国语言文字相结合之结晶;

这是任何其它记数法和语言文字所无法产生的。从此,“九九歌”成为数学的普及和发展最基本的基础之一,一直延续至今。其变化只是古代的“九九歌”从“九九八十一”开始,到“二二如四”止,而是由“一一如一”到“九九八十一”。

参考技术B 提问

你好?请问一下她转出来的英文字母及其对应的十六进制是什么

回答

76074/16=4754 余 104754/16=297 余 2297/16=18 余 918/16=1 余 21/16= 0 余 1所以应该等于1292a这是一般的方法ls的答案也很好,这是 2 8 16进制之间转换的方法,很简便,正确率也很高,一般做题是用ls的方法的

提问

对应的英文字母呢

?????

回答

十六进制为Hexadecimal,英文字母为H。2、十六进制的计算和十进制的一样,都是相同数位上的数字相加减,只不过十六进制是满16进位。比如:DFH02H,计算过程是:F2,满16进位1,余下1,DO=D,加上进位1,变成E,所以结果是E1H。没有算错吧。后面的“H”当然代表十六进制,不参与运算

参考技术C

十进制转化为十六进制代码:

#include "stdio.h" int main() 

 

int num=0;

int a[100]; 

int i=0; 

int m=0;

int yushu; 

char hex[16]='0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F';

printf("请输入一个十进制数:");

scanf("%d",&num); while(num>0)  yushu=num%16;

a[i++]=yushu; 

num=num/16;

 printf("转化为十六进制的数为:0x"); for(i=i-1;i>=0;i--)//倒序输出 m=a[i];

printf("%c",hex[m]);  printf("\\n"); 

程序运行结果:

扩展资料:

进制转换由一组数码符号和两个基本因素“基数”与“位权”构成。基数是指,进位计数制中所采用的数码(数制中用来表示“量”的符号)的个数。位权是指,进位制中每一固定位置对应的单位值。

举例:二进制数转换为十进制数

二进制数第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

公式:第N位2(N)

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

100

用横式计算为:

0 * 20 + 0 * 21 + 1 * 22 + 0 * 23 + 0 * 24 + 1 * 25 + 1* 26 + 0 * 27 = 100

0乘以多少都是0,所以我们也可以直接跳过值为0的位:

1 * 22 + 1 * 25 +1*26 = 100

参考资料:

百度百科-进制转换

参考技术D 整数部分,就是指小数点前的位数,除以16取余数,然后把所得数写成得数+余数;
小数点后的部分,要乘以16,依次写出来就可以了

例(91.875)这是十进制的数转换成十六进制的就是(5B.E)
91/16得5余11就可以写成5B
0.875*16得14就是E本回答被提问者采纳

以上是关于二、八、十六进制怎么转化成十进制?的主要内容,如果未能解决你的问题,请参考以下文章

二进制图片如何转化为值

怎么将4字节16进制转化成浮点数

小数怎么转化成二进制数

IP地址的二进制是怎么转化成十进制的?

怎么将4字节16进制转化成浮点数

BYTE数据怎么转化成二进制字符串