软考程序员教程知识点精讲之数据的表示

程序员 责任编辑:小狐狸 2016-09-13

添加老师微信

备考咨询

加我微信

摘要:下面是希赛软考学院为大家整理的软考程序员教程知识点精讲之数据的表示​,希望能帮助学友们。

>>>>>希赛网改版上线5周年庆,感恩钜惠!全场买就减,较高立减500,还有1元秒杀,5折限时抢购,众多“豪”礼等你来享,进入抢购!


       下面是希赛软考网为大家整理的软考程序员教程知识点精讲之数据的表示,希望能帮助学友们。具体内容如下:


数据的表示

在计算机中,数据的表示方式有二进制、八进制、十进制和十六进制,我们要掌握的是这4种进制之间的数据转换方法。

在我们的日常生活中,通常采用的是十进制来表示数,它已经广泛地被人们所接受。但是由于计算机底层使用的电路硬件通常只能够清晰地表示两种状态,即开和关,或者说高电平和低电平。如果使用十进制,将会使得计算机底层的设计变得过于复杂,而且容易出错,因此通常采用二进制来表示数。

R进制,通常说法就是逢R进1.可以用的数为R个,分别是0,1,2,…,R-1.例如八进制数的基数为8,即可以用到的数码个数为8,它们是0,1,2,3,4,5,6,7.二进制数的基数为2,可用的数码个数为2,它们是0和1.对于十六进制,它的数码为0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.

为了把不同的进制数分开表示,避免造成混淆,通常采用下标的方式来表示一个数的进制,如十进制数88表示为:(88)10,八进制数76表示为:(76)8.在计算机专业术语的表达中,通常在数字的后面加大写"H"表示十六进制,例如,FCH就表示十六进制数FC.

1.R进制数转换成十进制数

对于任意一个R进制数,它的每一位数值等于该位的数码乘以该位的权数。权数由一个幂表示,即幂的底数是R,指数为k,k与该位和小数点之间的距离有关。当该位位于小数点左边,k值是该位和小数点之间数码的个数,而当该位位于小数点右边,k值是负值,其绝对值是该位和小数点之间数码的个数加1.

例如,八进制数234.56,其数值可计算如下:

234.56=2×82+3×81+4×80+5×8-1+6×8-2=128+24+4+5/8+6/64= 156.71875

又如,二进制数l0100.01的值可计算如下:

10100.01=1×24+1×22+1×2-2=16+4+0.25 = 20.25

按照上面的表示法,即可计算出R进制数转换成十进制数的值。

2.十进制转换为R进制

十进制整数转换成R进制数,最常用的是"除以R取余法".例如,将十进制数94转换为二进制数: 

将所得的余数从低位到高位排列,(1011110)2就是94的二进制数。

十进制小数转换为R进制小数,则采用"乘以R取进位法".例如,将十进制小数0.43转换成二进制小数的过程如下(假设要求小数点后取5位):

 

即转换后的二进制小数为(0.01101)2.

3.二进制与八进制的转换

将二进制数转换为八进制数,以小数点为分界线,分别从右到左(整数部分)和从左到右(小数部分),将每3位二进制数转换为八进制数即可,最后不足3位的,则在较高位补0(整数部分)或最低位补0(小数部分)。

例如,二进制数1011110转换为八进制数,则可以分为3段(001,011,110),其对应的八进制数为(1,3,6),因此,(1011110)2=(136)8.

又如,二进制数l0100.0101转换为八进制数,则需要在整数部分的较高位补1个0,在小数部分的最低位补2个0,然后分为4段(010,100,010,100),其对应的八进制数为(2,4,2,4),因此,(l0100.0101)2=(24.24)8.

相反,将八进制数转换为二进制数,只要将每位八进制数转换为3位二进制数即可。

例如,八进制数56.23转换为二进制数,因为5=101,6=110,2=010,3=011,所以(56.23)8=(101110.010011)2.

4.二进制与十六进制的转换

将二进制数转换为十六进制数,以小数点为分界线,分别从右到左(整数部分)和从左到右(小数部分),将每4位二进制数转换为八进制数即可,最后不足4位的,则在较高位补0(整数部分)或最低位补0(小数部分)。

例如,二进制数1011110转换为十六进制数,则可以分为2段(0101,1110),其对应的十六进制数为(5,E),因此,(1011110)2=5EH.

又如,二进制数1l0100.10111转换为十六进制数,则需要在整数部分的较高位补2个0,在小数部分的最低位补3个0,然后分为4段(0011,0100,1011,1000),其对应的十六进制数为(3,4,B,8),因此,(110100.10111)2=34.B8H.

相反,将十六进制数转换为二进制数,只要将每位十六进制数转换为4位二进制数即可。

例如,十六进制数D6.C3H转换为二进制数,因为D=1101,6=0110,C=1100,3=0011,所以D6.C3H=(11010110.11000011)2.


       返回目录:软考程序员教程知识点精讲之数据运算汇总


     希赛软考网,拥有十四年软考培训经验,希赛网一直坚持自主研发,将丰富的软考培训经验有效融入教程研发过程,自成体系的软考在线题库软考历年真题)、软考培训教材软考视频教程,多样的培训方式包括在线辅导面授、和,使考生的学习更具系统性,辅导更具针对性。采用全程督学机制,,软考平均通过率在全国。

软考不知道考啥科目?扫码测最适合你的报考科目

企业微信截图_1770345743610.png

通关资源:软考各科历年真题各科学习资料汇总  |  在线试题库【点击刷题】

免费课程:系统架构设计师报考指南2026年高项备考指导课及精讲试听  

热门活动: 新年新起点,大额满减有惊喜hotgif.gif

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!