9323彩集团






      技术资料

      数据表示基础:原、反、补码 、移码详解

      • 发布时间:2020-02-02
      • 发布者: admin
      • 来源: 本站
      • 阅读量 :48

      9323彩集团学习了十进制、二进制 、八进制、十六进制等用来代表实际数值的数,称为真值 ,这些数9323彩集团再日常生活中都会使用到,那么在计算机中数值是怎么来表示的呢?

      数在计算机中的表示形式统称为机器数 。计算机中处理数据及运算都是采用二进制,通常规定机器数用八位二进制表示。实用的数据有正数和负数,因为计算机只能表示0、1两种状态 ,数据的正号“+”或负号“-” ,在计算机里就用一位二进制的0或1来区别,通常放在最高位 ,成为符号位。 符号位数值化之后,为能方便的对机器数进行算术运算、提高运算速度,计算机设计了多种符号位与数值一起编码的方法 ,最常用的机器数表示方法有:原码、反码 、补码和移码,下面就分别介绍一下它们的表示方法。

      一 、原码、反码、补码

      三种表示法的转换过程如下 :

      31.png

      说明:

      特别的 ,在原码中0有两种表示方式:[+0]原=0000000 ,[-0]原=1000000 。

      在反码表示中 ,0也有两种表示形式 :[+0]反=0000000 ,[-0]反=11111111。

      在补码表示中,0有唯一的编码:[+0]补=0000000 ,[-0]补=0000000 。

      二、移码

      因为个人移码理解有点困难 ,so单独解释一下 :

      移码表示法是在数X上增加一个偏移量来定义的,常用来表示浮点数中的阶码,所以是整数 。如果机器字长为n,规定偏移量为2^(n-1)。若X是整数,则[X]移=2^(n-1)+X

      则[+45]=+0101101+10000000, [-45]=-0101101+10000000=01010011

      实际上由此可推出,在偏移2^(n-1)的情况下,只要将补码的符号位取反便可获得相应的移码表示。

      32.png

      说明 :在移码表示中 ,0也编码是相同的,[+0]移=1000000 ,[-0]移=1000000。

      计算机之所以这些编码方法是为了便于运算,提高运算速度。四种表示方法其实是层层递进的,即会求十进制的二进制表示,记住符号位的正负表示,知道怎么递进的它们之间的关系 。


      咨询热线
      18075185955
      QQ交谈

      扫一扫






        XML地图