计算机信息的表示(源码、补码、浮点数、图形、声音)

1.定点数和浮点数的概念

   在计算机中,数值型的数据有两种表示方法,一种叫做定点数,另一种叫做浮点数。
   所谓定点数,就是在计算机中所有数的小数点位置固定不变。定点数有两种:定点小数和定点整数。定点小数将小数点固定在最高数据位的左边,因此,它只能表示小于1的纯小数。定点整数将小数点固定在最低数据位的右边,因此定点整数表示的也只是纯整数。由此可见,定点数表示数的范围较小。
   为了扩大计算机中数值数据的表示范围,我们将12.34表示为0.1234×102,其中0.1234叫做尾数,10叫做基数,可以在计算机内固定下来。2叫做阶码,若阶码的大小发生变化,则意味着实际数据小数点的移动,我们把这种数据叫做浮点数。由于基数在计算机中固定不变,因此,我们可以用两个定点数分别表示尾数和阶码,从而表示这个浮点数。其中,尾数用定点小数表示,阶码用定点整数表示。
   在计算机中,无论是定点数还是浮点数,都有正负之分。在表示数据时,专门有1位或2位表示符号,对单符号位来讲,通常用“1”表示负号;用“0”表示正号。对双符号位而言,则用“11”表示负号;“00”表示正号。通常情况下,符号位都处于数据的最高位。

2.定点数的表示

   一个定点数,在计算机中可用不同的码制来表示,常用的码制有原码、反码和补码三种。不论用什么码制来表示,数据本身的值并不发生变化,数据本身所代表的值叫做真值。下面,我们就来讨论这三种码制的表示方法。
    1. 原码
   原码的表示方法为:如果真值是正数,则最高位为0,其它位保持不变;如果真值是负数,则最高位为1,其它位保持不变。
   【例1】写出13和 –13的原码(取8位码长)
   解:因为13=(1101)2,所以13的原码是00001101,-13的原码是10001101。
   采用原码,优点是转换非常简单,只要根据正负号将最高位置0或1即可。但原码表示在进行加减运算时很不方便,符号位不能参与运算,并且0的原码有两种表示方法:+0的原码是00000000,-0的原码是10000000。
    2. 反码
   反码的表示方法为:如果真值是正数,则最高位为0,其它位保持不变;如果真值是负数,则最高位为1,其它位按位求反。
    【例2】写出13和–13的反码(取8位码长)
   解:因为13=(1101)2,所以 13的反码是00001101,-13的反码是11110010。
   反码跟原码相比较,符号位虽然可以作为数值参与运算,但计算完后,仍需要根据符号位进行调整。另外0的反码同样也有两种表示方法:+0的反码是00000000,-0的反码是11111111。
   为了克服原码和反码的上述缺点,人们又引进了补码表示法。补码的作用在于能把减法运算化成加法运算,现代计算机中一般采用补码来表示定点数。
    3. 补码
  补码的表示方法为:若真值是正数,则最高位为0,其它位保持不变;若真值是负数,则最高位为1,其它位按位求反后再加1。
  【例3】写出13和 –13的补码(取8位码长)
   解:因为13=(1101)2,所以 13的补码是00001101,-13的补码是11110011。
  补码的符号可以作为数值参与运算,且计算完后,不需要根据符号位进行调整。另外,0的补码表示方法也是唯一的,即00000000。

3.浮点数的表示方法

   浮点数表示法类似于科学计数法,任一数均可通过改变其指数部分,使小数点发生移动,如数23.45可以表示为:101×2.345、102×0.2345、103×0.02345等各种不同形式。浮点数的一般表示形式为: N=2E ×D,其中,D称为尾数,E称为阶码。如图3.1所示,为浮点数的一般形式。

计算机中数值的表示

图3.1浮点数的一般形式

   对于不同的机器,阶码和尾数各占多少位,分别用什么码制进行表示都有具体规定。在实际应用中,浮点数的表示首先要进行规格化,即转换成一个纯小数与2m之积,并且小数点后的第一位是1。
   【例4】写出浮点数(-101.11101)2的机内表示(阶码用4位原码表示,尾数用8位补码表示,阶码在尾数之前)
   解:(-101.11101)2=(-0.10111101)2×23
    阶码为3,用原码表示为0011
   尾数为-0.10111101,用补码表示为1.01000011
   因此,该数在计算机内表示为:00111.01000011

4.图形的表示方法

   计算机通过指定每个独立的点(或像素)在屏幕上的位置来存储图形,最简单的图形是单色图形。单色图形包含的颜色仅仅有黑色和白色两种。为了理解计算机怎样对单色图形进行编码,可以考虑把一个网格叠放到图形上。网格把图形分成许多单元,每个单元相当于计算机屏幕上的一个像素。对于单色图,每个单元(或像素)都标记为黑色或白色。如果图像单元对应的颜色为黑色,则在计算机中用0来表示;如果图像单元对应的颜色为白色,则在计算机中用1来表示。网格的每一行用一串0和1来表示,如图3.2所示。

计算机中数值的表示

图3.2存储一幅单色位图图像

   对于单色图形来说,用来表示满屏图形的比特数和屏幕中的像素数正好相等。所以,用来存储图形的字节数等于比特数除以8;若是彩色图形,其表示方法与单色图形类似,只不过需要使用更多的二进制位以表示出不同的颜色信息。
   这里讲述了图形图像信息最基本的表示方法,关于更进一步的介绍,请大家参阅多媒体技术的有关章节。

5.声音的表示方法

   通常,声音是用一种模拟(连续的)波形来表示的,该波形描述了振动波的形状。如图3.3所示,表示一个声音信号有三个要素,分别是基线、周期和振幅。

计算机中数值的表示

图3.3声音信号的三要素

   声音的表示方法是以一定的时间间隔对音频信号进行采样,并将采样结果进行量化,转化成数字信息的过程,如图3.4所示。声音的采样是在数字模拟转换时,将模拟波形分割成数字信号波形的过程,采样的频率越大,所获得的波形越接近实际波形,即保真度越高。

计算机中数值的表示

图3.4声音信号的采样和量化

   这里讲述了声音信息最基本的表示方法,关于更进一步的介绍,请大家参阅多媒体技术的有关章节

   文章出处http://blog.sina.com.cn/s/blog_6e51df7f0100tcg2.html


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值