前言:
文本推荐阅读时间20-30mins。详细讲解进制之间转换的原理。让你知其然,知其所以然。
目录
6.更多内容:关于机器数就是原码,反码,补码的内容会在别的博客和大家见面。
1.十进制、二进制、八进制、十六进制
1.1符号反应权重
阿拉伯数字:0,1,2,3,4,5,6,7,8,9 总共有是10不同的符号,每一个符号会反应不同的权重,代表不一样的实际数值
符号反应权重
古印度人还发明了10进制
1.2符号所在的位置也反应权重
十进制:例如:985.211
每一个数字所处的位置不同那它的权重就不一样
换种表达方式就是这样
是基于乘法思想的计数方法
由每个符号所处的位置决定的权值权重就称之为位权
1.3为什么人类会发明十进制
事实上人类发明十进制系统的一个主要原因就是因为我们的手指有十个。在数数或演算时,我们可以很自然地使用手指作为视觉和触摸的辅助,因此,十进制系统对人来说很直观、易理解。这也是为什么十进制系统在全世界各地的许多不同文化中都得到了广泛的应用。
所以人在数数的时候逢十进一,最符合人类的习惯
1.4推广到r进制计数法
对于r进制来说基数就是r,表示每个数码位置可能会用到r种符号
生活中我们还能看到60进制,就是我们的时间60秒为1分钟,60分钟为1小时这样
主要和大家介绍二进制,十进制,八进制和十六进制
前面和大家介绍过了十进制,十进制一共十有0到9十个符号,以此类推:
二进制:0,1 逢2进1
八进制:0,1,2,3,4,5,6,7 逢8进1
十六进制:0,1,2,3,4,5,6,7,9,A,B,C,D,E,F 这里的ABCDEF表示的是10到15,因为数码位只能是放一个符号所以使用字幕表示 逢16进1
看看你会不会算呢?
下面来看看这些进制数如何得出它们表示的十进制数字
2.其他进制转换成十进制
上面举的例子已经说明了如何转换为10进制,让每一个位置乘以位权之后相加。
下面介绍一个快速计算的方法让你更快的得出表示的十进制数是多少
2.1记住每一位的位权
以上面的二进制数字为例,其他进制同理。
3.二进制,八进制,十六进制之间的相互转换
二进制的基数为2,就是说每一个数码位都有2种可能的数字0,1
八进制的基数为8,十六进制的基数为16.同理
3.1二进制转换为八进制
如果二进制转换为八进制,是3个二进制数字转换为1个八进制数字,因为八进制的每一个数码位有八种可能,3个二进制数的可能就是2×2×2=8;
不满3位数字就最最低位后面补0,最高位前面补0;十六进制同理
3.2二进制转换为十六进制
3.3八进制转换为二进制
就是一个逆向的过程一个八进制数字转换为3个二进制数字
这里一个括号然后外面写一个小2,表示这个数是二进制数
3.4十六进制转换为二进制
同理1个十六进制数字转换为4为二进制数
3.5各种进制常见的书写方式
1.括号外面写数字表示是几进制
2.字母表示进制,B表示binary是二进制的意思,
H表示hexadecimal是十六进制的意思还有在数字前面加上0x也表示十六进制;
D表示decimalism表示十进制;
4.十进制转化为其他进制
分为整数部分和小数部分来看先看整数部分
4.1整数部分处理方法
如:75.3 ,整数部分为75
假设这个十进制数字是以r进制来表示如图。
整体除以r之后会得到商和余数K0(因为K0的位权是1,也就是r的0次方,无法整除r)
k0的范围就是0到r-1(因为r进制的符号是0到r-1);
之后重复操作就可以得到K1 K2 K3........
这种方法叫做除基取余法(除以基数r,取走余数)
假设是十进制转化为二进制,r为2如图
需要注意我们先得到的是低位.
4.2小数部分处理方法
同样是以75.3为例子,小数部分为0.3
假设这个十进制数字是以r进制来表示如图。
整体乘上基数r之后的整数部分就是得到的二进制数
之后重复操作就可以得到K-2;K-3.......
这种方法叫乘基取整法(乘基数r,取走整数)
4.3另一种方法
就是记住位权,拿十进制数去凑,得到对应的二进制数。
5.真值和机器数
真值:符合人类喜欢的数字
机器数:实际存到机器里的形式,正负号需要被“数字化”
6.更多内容:关于机器数就是原码,反码,补码的内容会在别的博客和大家见面。
如果本文章对你有帮助的话还请点赞收藏转发哦~
标签:十六进制,转换,进制,二进制,编程,八进制,十进制 From: https://blog.csdn.net/2302_79846942/article/details/134124410