原码、反码、补码、移码 您所在的位置:网站首页 反码补码移码详解 原码、反码、补码、移码

原码、反码、补码、移码

2023-08-13 02:57| 来源: 网络整理| 查看: 265

原码表示法

一种比较直观的机器数表示法,原码的最高位作为符号位,用“0”表示正,用“1”表示负,有效数值部分用二进制的绝对值表示纯小数时,X=X0.X1X2X3…Xn-1,其中X0为符号位,共N位字长;则:      

若X1=+0.1001,X2= 0.1011,字长为8位,则其原码分别为:

[X1]原=0.1011000    

[X2]原=1+0.1011000=1.1011000,

其中最高位是符号位

补码表示法

模:是计量器具的容量,或称模数。在计算机中,机器数表示数据的字长即位数是固定的。其模数的大小:对于n位整数(含一位符号位),则它的模数为2n,对于纯小数(含符号位),则它的模数总是2。若在运算过程中结果大于等于模数,则说明该值已超过了机器所能表示的范围,模数自然丢失。 例:某一台计算机的字长为8位,则它所能表示的二进制数为00000000~11111111,共256个,即模数为28。

补码定义为机器数的最高位作为符号位,用“0”表示正号,用“1”表示负号。

纯小数的情况

X=X0.X1X2X3…Xn-1,其中X0为符号位,共N位字长;则:                        

                    

 

例:若X1=+0.1011B,X2=-0.1011B,字长为8位,则补码为

[X1]补=0.1011000B,

[X2]补=2-0.1011000=1.0101000B,

其中最高位为符号位

[0]补=0.000…00B  [-0]补=0.000…00

纯整数的情况

   设X=X0X1X2X3X4X5X6Xn-1,其中X0为符号位,共n位长,则:                          

              

 

例:若X1=+1011B,X2=-1011B,字长为8位,则补码为:

[X1]补=00001011B,

[X2]补=28-0001011=11110101,

其中最高位为符号位

[0]补=0000…00B  [-0]补=0000…00B

原码与补码的比较

原码有两个0编码,补码只有一个0编码 原码的对应关系简单、直观、转换容易,补码要通过求反加工厂取得 原码不适合加减运算,但较适合乘除运算,补码正好相反。

反码表示法

对于正数来说,反码与原码、补码表示相同。

对于负数来说,符号位与原码、补码符号定义相同,只是将原码的数值位按位变反。

 例:若X1=+1011B,X2=-1011B,字长为8位,则其反码分别为:

[X1]反=00001011B,

[X2]反=11110100B,其中最高位为符号位  

[0]反=0000…00B  [-0]反=1111…11B

移码表示法

也叫增码,它常以整数形式用在计算机浮点数的阶码(表示指数)中,若纯整数X为n位(含符号位),则其移码定义为    

[X]移=2n-1+[X]补,-2n-1≤X≤2n-1-1

例:若X1=+1000B,X2=-1000B,字长为8位,则其移码分别为:    

[X1]补=00001000B,[X2]补=11111000B,其中最高位为符号位  

  [X1]移=10001000B,[X2]移=01111000B,其中最高位为符号位    

由此可得:移码只是补码的符号位取反。

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有