微机—— 计算机中的数据表示

进位计数值及各进制数之间的转换

1、进位计数制

(1)十进制数的表示方法(后缀D或d)

  逢十进一;
  使用10个数字符号(0,1,2,……,9)的不同组合来表示一个十进制数;

(2)二进制数的表示方法 (后缀B或b)

 逢二进一;
 使用2个数字符号(0,1)的不同组合来表示一个二进制数;

二进制的优点:

        物理上容易实现,可靠性高;
        运算规则简单
        符合逻辑运算

(3)八进制数的表示方法(后缀O或o)

  逢八进一;
 使用8个数字(0,1,2...,7)的不同组合来表示一个八进制数

(4)十六进制数的表示方法(后缀H或h)

逢十六进一;
使用16个数字符号(0,1,2,3……,9,A,B,C,D,E,F)的不同组合来表示一个十六进制数,其中A~F 依次表示10~15;
2、不同进制之间的转换
十进制整数——> 非十进制整数

除基取余法:除基数取余数直到商为0,余数由下而上排列。

十进制小数——>非十进制小数

乘2取整法:先用2乘这个十进制纯小数,然后去掉乘积的整数部分;用2乘剩下的小数部分,然后再去掉乘积中的整数部分,如此下去,直到乘积的小数部分为0或者已得到所要求的精确度为止。把上面每次乘积的整数部分依次从上而下排列起来,就是所要求的二进制小数

例:

2.60.8125)10 =)2
              0.8125×2=1.625           (B1=10.625×2=1.25             (B2=10.25×2=0.5               (B3=0)
           0.5×2=1.0                 (B4=1)
     所以           0.8125D=0.1101B
   一个有限的十进制小数并非一定能够转换成一个有限的二进制小数,即上述过程中乘积的小数部分可能永远不等于0。
   这时,我们可按要求进行到某一精确度为止。由此可见,计算机中由于有限字长的限制,可能会截去部分有用小数位而产生截断误差

如果一个十进制数既有整数部分,又有小数部分,则可将整数部分和小数部分分别进行转换,然后再把两部分结果合并起来。

非十进制数 ——> 十进制数

位权法:把各非十进制数按权展开求和

位权转换公式

二进制——> 十六(八)进制

整数从右向左四(三)位并一位
小数从左向右四(三)位并一位

数值型数据表示

整数:一般用定点数表示

(1)无符号整数

所有的二进制数位全部用来表示数的大小
计算机中的地址常用无符号整数表示,可以用8位、16位、32位或64位来表示

(2)有符号整数

规定:最高位为符号位,0表示正,1表示负
数值位表示数的大小

实数:一般用浮点数表示,它的小数点位置不固定

在计算机中一个浮点数由指数(阶码)和尾数两部分组成,阶码部分由阶符和阶码组成,尾数部分由尾符和尾数组成。

其机内表示形式如下:

|  阶符   |   阶码   |   尾符  |  尾数  |

阶码用来指示尾数中的小数点应当向左或向右移动的位数;
尾数表示数值的有效数字,其小数点约定在数符和尾数之间,在浮点数中数符和阶符各占1位。

阶码的值随浮点数数值的大小而定,尾数的位数则依浮点数数值的精度要求而定。

字符型数据表示

字符数据 —— 表示非数值的信息,如英文、汉字、图形、语音等。

原码、反码、补码

一个正数的原码、补码、反码三者完全相同

原码、反码、补码的求法

原码:符号位:0表示正数,1表示负数,数值部分就是该数的绝对值
反码:负数的反码符号位是1,数值部分就是该数的绝对值取反
补码:负数的补码符号位是1,数值部分就是该数的绝对值取反加1

计算机中带符号数用补码表示时有如下优点:
    ① 可以将减法运算变为加法运算,因此可使用同一个运算器实现加法和减法运算,简化了电路。 
    ② 无符号数和带符号数的加法运算可以用同一个加法器实现,结果都是正确的。
8位二进制数的原码、反码和补码表
 二进制数       无符号十进制数      原码     反码      补码
0000 0000            0             +0       +0        +0
0000 0001            1             +1       +1        +1
0000 0010            2             +2       +2        +2

0111 1110           126           +126     +126      +126
0111 1111           127           +127     +127      +127     
1000 0000           128            -0      -127      -128
1000 0001           129            -1      -126      -127

1111 1101           253           -125      -2         -3
1111 1110           254           -126      -1         -2
1111 1111           255           -127      -0         -1

信息的编码

1、二进制编码的十进制数(BCD编码)

即将1位十进制的09这10个数字分别用4位二进制码的组合来表示

最常用的是 8421 BCD码

这种编码从0000~1111这16种组合中选择前10个
即00001001来分别代表十进制数码0~9, 8、4、2、1分别是这种编码从高位到低位每位的权值。

BCD码有两种形式,即压缩型BCD码和非压缩型BCD码。

 压缩型BCD码用一个字节表示两位十进制数。例如,10000110B表示十进制数86。
 
 非压缩型BCD码用一个字节表示一位十进制数。高4位总是0000,低4位用00001001中的一种组合来表示09中的某一个十进制数。 
2、字符的二进制编码(主要采用ASCII码)

(1)EBCDIC码:IBM公司为其大型机设计的字符编码,可表示 2的8次方 = 256 个不同的字符

(2)Unicode码:可表示 2的16次方 = 65536 个不同的字符

(3)ASCII码:美国标准信息交换码,可表示 2的7次方 = 128个字符

ASCII码

3、汉字的二进制编码(了解)

(1)国标码与区位码

(2)机内码

(3)汉字的输入码

(4)汉字的字形码

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯糖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值