16进制数组转成10进制 qt_计算机组成原理(进制数及转换)
图片来源于网络
都知道计算机数据是以二进制数0和1补码的形式存储在内存中。
那你知道它们转换关系吗?那么问题来了,为什么要转换?
前面已经说过计算机数据是以二进制0和1存储,所以它们要转换为二进制存储在计算机中,
计算机有众多进制数,为什么要采用二进制数实现数据的存储呢?
采用二进制主要是为了方便硬件的实现,电流的通、断,或高压的高、低正好能够表示二进制的0和1两个数码。
转换同样也是为了方便更大数值运算和数据的表达,
比如:二进制的101110011011.1001
八进制=5633.44
十进制=2971.5625
十六进制= B9B9 (这样是不是便捷很多
- 来看一下进制数及它们的转换
计算机常用进制数分为:二进制、八进制、十进制、十六进制....
二进制0—1(逢2进1)
八进制0—7(逢八进一)
十进制0—9(逢10进1)
十六进制的0—F(10、11、12、1、14、15分别用A、B、C、D、E、F来表示(逢16进1)
它们对应关系
进制数对应关系
进制数如何转换?
二进制转N进制方法
二进制的计算机方式 在二进制世界里只有数字0----1(逢二进一)
- 1.二进制转八进制
取三合一,即从二进制小数点为分界点,向左(向右)没三位取成够三位(添加0)
二进制对应八进制位权
例如下图:010 100 . 011 101
二转八
(010=2) (100=4) .(011=3) (101=5) 所以它们结果=24.35
分好组以后,对照二进制与八进制数的对应表(如表格所示),将三位二进制按权相加(此加非此加),小数点位置不变,得到的数就是八进制数,
在向左(或向右)取三位时,取到最高位(最低位)如果无法凑足三位,就可以在小数点的最左边(或最右边)补0(如下图)
不够取0
- 2.二进制转十进制
右到左用二进制的每个数去乘以2的相应次方,“ 小数点”后则是从左往右
看一下十进制的权值
十进制的位权
例如:1011001011.01(下图解析)
二进制转十进制解析
跟十进制权值表结合看,1x2的0次方=1从右边向左边开始以此类推下去,小数点另算。
也可以数几个数然后从左边开始,比如这里有9个就从 *X2的9次方。
然后对照着十进制位权进行相加,得出十进制数715.25.
- 3.二进制转十六进制
二转十六进制跟二转八进制一样的,不同的是十六进制是4位,而八进制是3位。
来看一下它们的权值
十六进制位权
取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位16位
组分好以后,对照二进制与十六进制数的对应表(如图2中所示),将四位二进制按权相加,得到的数就是一位十六进制数,然后按顺序排列,小数点的位置不变,最后得到的就是十六进制数 (如下图)
不足四位,就向左向右补0,(跟二转八进制一样的)
不够取0
八进制转N进制
在八进制世界里只有数字0----7 (逢八进一)
- 1.八进制转二进制
看下图发现没这个跟二进制转八进制一样的
例如:543.01
- 2.八进制转十进制
例如:(1010)8
(1010)8 =1× 8^3+0 × 8^2+l× 8^1+0 × 8^0
=512 + 0 + 8 + 0
=512+8
=(520)10
这个是不是和二进制转十进制数差不多的,只是它们权值不同而已。
- 3.八进制数转十六进制
八进制转成十六进制的算法通常有两种方法:
1.先把八进制转成二进制,再将二进制转换成十六进制
2.先把八进制转换成十进制,再将十进制转换成十六进制
十进制转N进制数
在十进制世界只有0----9(逢十进一)
转换方法 :十进制除于N进制余数 得结果
- 1.十进制转二进制
比如:(185)10=(10111001)2
十进制转二进制
- 2.十进制转八进制
例如:(185)10=(10111001)2。
十进制转八进制
- 3.十进制转十六进制
例如:(185)10=(271)8
十进制转十六进制
十六进制转N进制
在十六进制世界里只有1----F(逢十六进一)
- 1.十六进制转二进制
由于在二进制的表示方法中,每四位所表示的数的最大值对应16进制每一位上最大值,所以,我们可以得出,跟二转十六进制数一样的
简便的转换方法,将16进制上每一位分别对应二进制上四位进行转换。 0位是右
例如:(2AF5)16解析
第0位:(5)16 = (0101) 2
第1位:(F)16 = (1111) 2
第2位: (A) 16 = (1010) 2
第3位: (2) 16 = (0010) 2 -------下往上
得:(2AF5)16=(0010.1010.1111.0101)2
- 2.十六进制转八进制
跟八转十六一样,先转为十进制或者二进制再转为八进制
- 3.十六进制转十进制
权值为:
第0位的权值为16的0次方
第1位的权值为16的1次方
第2位的权值为16的2次方.......依此类推
在第N(N从0开始)位上,如果是数X(X大于等于0,并且小于等于15,即:F)表示的大小大小为X*16的N次方
例如:2AF5解析 (竖式计算)
第0位: 5 * 16^0 = 5
第1位: F * 16^1 = 240 (15*16)
第2位: A * 16^2= 2560 (10*16*16)
第3位: 2 * 16^3 = 8192 (2*16*16*16 ) 结果是:10997
(2 * 16^3 )+ (A * 16^2 )+ (F * 16^1 )+( 5 * 16^0 )= 10997(括号是我加进去的好看一点)
结语:除了计算机进制数的转换外,还有进制数的计算,想了解的可以搜索这方面内容学习,最后告诉大家,基础很重要,“基础不牢,地动山摇"没有坚实的基础走不远,欢迎大家一起交流、一起学习、一起成长。
好了本期内容就此结束,喜欢的朋友记得点赞评论转发收藏加关注哦!,
作者: TianshiyuMogui
著作权归作者所有侵权必究,商业转载请联系作者获得授权,非商业转载请注明出处。
16进制数组转成10进制 qt_计算机组成原理(进制数及转换)相关推荐
- 16进制数组转成10进制 qt_第五课_进制2
前言 感谢网友的提醒,前面一课弄错了,是第四课,这一课才是第五课.这一课主要讲传统进制的转换方法.但是需要说明的是,进制间是不需要转换的,每一种进制本身都是完美的. 一.通过中间进制进行转换 需要说明 ...
- 16进制数组转成10进制 qt_QT 16进制 ASII 10进制 转换
//16进制字符串转字节数组 static QByteArray HexStrToByteArray(QString str) { QByteArray senddata; //发送数据 int h ...
- 16进制数组转成10进制 qt_QT 十六进制字符串转化为十六进制编码
/************************************************* Function: hexStringtoByteArray() Description: 十六进 ...
- 16进制数组转成10进制 qt_将十六进制转换为二进制qt
如果在您的情况下不起作用,那么其他事情就会出错. (这是其他评论家已经告诉你的.) 我怎么能说服你呢? 我最后的(绝望)尝试:一个(不那么)MCVE: #include #include int ma ...
- 成考期末计算机组成原理,2020年10月自考02318计算机组成原理真题及答案
以下是湖南自考生网为考生们整理的"2020年10月自考02318计算机组成原理真题及答案",考生可通过自考试卷练习更有把握的面对考试,对题型更加熟悉,从而取得更佳的成绩.供考生参考 ...
- 计算机组成原理往届的试题,【历年真题】全国2019年10月自考《计算机组成原理》试题真题与答案02318...
[历年真题]全国2019年10月自考<计算机组成原理>试题真题与答案02318 时间:2020-08-09 17:33 来源:江苏成考网 阅读:94 全国2019年10月高等教育自学考试 ...
- 计算机进制转进制,计算机中进制及进制转换
<计算机中进制及进制转换>由会员分享,可在线阅读,更多相关<计算机中进制及进制转换(55页珍藏版)>请在人人文库网上搜索. 1.计算机中进制及进制转换 计算机中进制及进制转换 ...
- php将数组变成字符串,php怎样将数组转成字符串
[摘要] PHP即"超文本预处理器",是一种通用开源脚本语言.PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言.PHP独特的语法混合了C.Java.Perl以及 ...
- ipv6 16进制转成10进制的数
/** * ipv6 16进制转成10进制的数 * @param ip 1:1:2:2:ffff:ffff:ffff:ffff * @returns Array 10进制数的数组 */ ipSrv.p ...
最新文章
- Create a restful app with AngularJS/Grails(4)
- 不是所有图像都值16x16个词,清华与华为提出动态ViT
- Angular.js 最强学习资源合集
- Dave Python 练习十五 -- 面向对象编程
- asp.net中提交表单数据时提示从客户端(。。。)中检测到有潜在危险的 Request.Form 值...
- 年度总结文章的抽奖结果公布
- mysql索引原理剖析
- CVPR 2020 论文大盘点-图像增强与图像恢复篇
- Java案例:生成指定目录下某种类型文件的列表
- eclipse字体颜色设置
- atoi和itoa函数实现
- Debug Assertion Failed.Expression:_BLOCK_TYPE_IS_VALID(phead-nBlockUse)
- 【MAVEN】搜索错误“Index downloads are disabled,search results may be incomplete”
- php 获取某文件内容
- ios9提取安装包ipa_iOS获取App ipa包
- android 音乐扬声器,android安插耳机状态使用扬声器外放音乐
- Java中submit的方法,线程池中 submit()和 execute()方法区别
- 逻辑函数(表示方法、形式转换、化简、最小项、最大项)
- Android 原生和 JS 交互实践
- [作业]英语作业,无聊记事
热门文章
- python使用字典格式化字符串-4.2.3Python下字典的格式化字符串
- python语言怎么用-学习如何使用 Python 程式语言
- python读取csv文件的方法-python读写csv文件的方法
- python3.7安装-Linux安装python3.7
- python一个月能学成嘛-一个月可以学好基础的Python吗?
- 电脑无法安装python-无法安装Python库
- python的模块的导入和包的导入
- ExecutorService框架
- 数据库设计中的范式形式
- 在VS.NET中使用clickonce技术开发Winform程序