- 1 偏移二进制
偏移二进制
编辑偏移二进制,也被称为过量-K,excess-Ñ,过量-E,过剩代码或偏置表示,为方法符号数表示,其中一个带符号的数Ñ是由对应于无符号数n+K的位模式表示,K是偏置值或偏移量。偏移二进制没有标准,但最常见的是n的K-bit二进制字是K=2n-1(例如,四位二进制数的偏移量是23=8)。这导致最小负值由全零表示,“零”值由最高有效位中的1和所有其他位中的0表示,xxx正值由全1表示(方便,这与使用二进制补码相同但最高有效位被反转)。它还具有以下结果:在逻辑比较运算中,获得与真形式数值比较运算相同的结果,而在二进制补码表示法中,当且仅当数字为比较具有相同的符号。否则比较的意义将被反转,所有负值都被视为大于所有正值。
早期同步多路复用电报中使用的5位Baudot代码可以被视为偏移1(excess-1)反射二进制(格雷)代码。
历史上一个突出的offset-64(超额64)表示法示例是IBMSystem/360和System/370代计算机中的浮点(指数)表示法。该“特性”(指数)采取了七比特过剩-64号(相同的字节的高序位包含的符号的形式有效数)。
MicrosoftBinaryFormat中的8位指数是1970年代和1980年代在各种编程语言(特别是BASIC)中使用的浮点格式,使用offset-129表示法(excess-129)进行编码。
IEEE标准浮点运算(IEEE754)使用指数的各种尺寸,而且还采用了偏移量符号的每个精度格式。然而,不同寻常的是,不是使用“excess2n-1”,而是使用“excess2n-1-1”(即excess-15、excess-127、excess-1023、excess-16383),这意味着反转前导(高-order)位不会将指数转换为正确的二进制补码表示法。
偏移二进制常用于数字信号处理(DSP)。大多数模数(A/D)和数模(D/A)芯片都是单极性的,这意味着它们无法处理双极性信号(具有正负值的信号)。对此的一个简单解决方案是使用等于A/D和D/A转换器范围一半的DC偏移来偏置模拟信号。结果数字数据最终采用偏移二进制格式。
大多数标准计算机CPU芯片不能直接处理偏移二进制格式。CPU芯片通常只能处理有符号和无符号整数以及浮点值格式。这些CPU芯片可以通过多种方式处理偏移二进制值。数据可能只是被视为无符号整数,需要程序员在软件中处理零偏移。通过简单地减去零偏移量,数据也可以转换为有符号整数格式(CPU可以本地处理)。由于n位字的最常见偏移为2n-1,这意味着xxx位相对于二进制补码反转,不需要单独的减法步骤,但可以简单地反转xxx位。这有时在硬件方面是一种有用的简化,在软件方面也很方便。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/126619/