Está en la página 1de 12

STALIN MARCILLO

B 309 - 4501

Sistemas de numeracin binarias


Abril 1997, ver. 1
83

Nota de aplicacin

Introduccin
Sistemas de numeracin binaria se utilizan en prcticamente todos los
sistemas digitales, incluyendo el procesamiento digital de seales (DSP), redes
y equipos.
Antes de elegir un sistema de numeracin, es importante entender las ventajas
y desventajas de cada sistema.

Entero sin signo


Nmero entero de complemento de dos
Fraccional sin signo
Complemento a dos firmado fraccional
Cdigo Gray
De magnitud con signo
Offset complemento a dos
Uno de complemento
Punto flotante
Punto flotante Bloquear

La Tabla 1 resume los sistemas de numeracin binaria que se describen en esta


nota de aplicacin. Para cada sistema de numeracin, se proporciona el rango
de nmeros para un nmero de N bits. Para los sistemas de numeracin
fraccionarios, se proporciona el rango de nmeros para un nmero M-bit N +,
donde N es la parte entera del nmero y M es la parte fraccionaria del nmero.
Tabla 1. Resumen de los Sistemas de numeracin binaria
Sistema

Entero sin signo

Nmero entero de
complemento de
dos
Fraccional sin
signo

Rango Nmero

0 a 2N 1

2(N 1) a 2(N 1) 1

0 a 2 N 2M

Ventajas
Sistema de numeracin
universal.
Fcil de realizar
operaciones aritmticas
tales como suma y resta.
Almacena ambos nmeros
positivos y negativos. Fcil
de realizar operaciones
aritmticas con los
complementos habituales.
Almacena nmeros
positivos mayores que y
menores que 1. Las

Desventajas
No se puede almacenar
nmeros negativos.
Requiere un poco ms
de espacio de
almacenamiento cuando
slo nmeros positivos
son necesarios.
No se puede almacenar
nmeros negativos.

STALIN MARCILLO

Complemento a
dos fraccionales
con signo

2(N 1) a 2(N 1)
2M
en 2M pasos.

B 309 - 4501
operaciones son idnticas
a las operaciones de
enteros sin signo.
Almacena nmeros
positivos y negativos,
tanto superiores y menores
de 1. Las operaciones son
idnticas a las operaciones
de complemento a dos.

Cdigo Gray

0 a 2(N 1)

Slo los cambios de un bit


entre nmeros adyacentes,
lo que facilita las interfaces
con los sistemas fsicos.

De magnitud con
signo

2(N 1) 1 a 2(N 1)
1

til para aplicaciones que


requieren la magnitud que
sea distinta de la seal.

Offset
complemento a
dos

2(N 1) a 2(N 1) 1

Utilizado por muchos


convertidores de digital a
analgico (D / A) y de
analgico a digital (A / D).
Fcil de realizar
operaciones aritmticas.

Uno de
complemento

2(N 1) 1 a 2(N 1)
1

Fcil de realizar
negaciones.

Punto flotante

Punto flotante
Bloquear

Consulte "Punto
Flotante" en la
pgina 13.
Consulte " Punto
flotante
Bloquear " en la
pgina 15.

Muy amplio rango


dinmico.
Amplio rango dinmico y
requiere de hardware
mnimo.

Difcil de realizar
operaciones aritmticas
sin antes convertir a uno
de los sistemas
mencionados
anteriormente.
Difcil de realizar
operaciones aritmticas
(aunque ms fcil que
con cdigo Gray).

Difcil de realizar
operaciones aritmticas
distintas de negaciones.
Requiere ms hardware
para realizar
operaciones aritmticas.
Todos los nmeros
tienen el mismo
exponente en cualquier
momento dado.

La Tabla 2 muestra un nmero binario de 3 bits y su valor decimal equivalente


para cada sistema de numeracin.
Tabla 2. Valores para un nmero binario de 3 bits
Nmero
De
Nmero Entero sin
entero de
Cdigo
magnitud
Binario
signo
complemento
Gray
con signo
de dos

Offset
complem
ento a
dos

Uno de
complemen
to

STALIN MARCILLO
000
001
010
011
100
101
110
111

0
1
2
3
4
5
6
7

B 309 - 4501
0
1
2
3
-4
-3
-2
-1

0
1
3
2
7
6
4
5

0
1
2
3
-0
-1
-2
-3

-4
-3
-2
-1
0
1
2
3

0
1
2
3
-3
-2
-1
0

Entero sin signo


El sistema de numeracin ms conocido es la representacin de entero sin
signo.
Al igual que el sistema de numeracin decimal, enteros sin signo utilizan un
valor de lugar binario simple. La posicin de un dgito determina su valor (es
decir, el valor de posicin de un dgito es 2 Posicione). Vea la Figura 1. Esta
representacin es exactamente igual que el sistema de numeracin decimal,
en la que el valor de posicin es 10position.
Figura 1. Posicin de bits
Nmero Binario
Posicin
Valor posicional

11111
4 3 2 1 0
24 23 22 21 20

La Tabla 3 muestra el valor decimal para cada bit en un entero sin signo de 5
bits.
Tabla 3. Valores Enteros sin signo
Posicin
Valor Posicional
0
20
1
21
2
22
3
23
4
24

Valor Decimal
1
2
4
8
16

La tabla 4 muestra cmo determinar el valor decimal de un entero sin signo.


Tabla 4. Entero sin signo de conversin
Entero sin signo
Valor Decimal
Conversin
01000
8
0 + 23 + 0 + 0 + 0 = 8
10011
19
24 + 0 + 0 + 21 + 20 = 16 + 2 + 1
= 19
11011
27
24 + 23 + 0 + 21 + 20 = 16 + 8 + 2

STALIN MARCILLO

B 309 - 4501
+ 1 = 27

Usted puede realizar fcilmente operaciones aritmticas en nmeros sin signo


siguiendo las mismas reglas que se utilizan para las operaciones con nmeros
decimales. Sin embargo, para los nmeros binarios, el dgito se realiza despus
de 1 en lugar de despus de 9 (es decir, cuando se aaden juntos dos 1s, se
coloca un 0 en la posicin correspondiente y un 1 se lleva a la siguiente
posicin). La figura 2 muestra cmo agregar 2 enteros sin signo juntos.

Figura 2. Entero sin signo de adicin

El sistema de numeracin entero sin signo se utiliza ampliamente. Limitacin


principal de este sistema de numeracin es que slo puede almacenar los
nmeros que van de 0 a (2 N - 1); la mayora de los sistemas de procesamiento
de seal necesitan almacenar los nmeros positivos y negativos.
Complemento de enteros de dos
El sistema de numeracin ms utilizada que puede almacenar dos nmeros
positivos y negativos es entero de complemento a dos. Este sistema es similar
al de enteros sin signo, sino la seal del bit ms significativo (MSB) es negado.
Por ejemplo, para un nmero de N bits, el bit 0 tiene un valor de 2 0, el bit 1
tiene un valor de 21, el bit N - 2 tiene un valor de 2 (N - 2), y el bit N - 1 (es decir,
el MSB) tiene un valor de -2 (N - 1). La Tabla 5 muestra el valor decimal para cada
posicin en un nmero entero de 5 bits de complemento a dos.
Tabla 5. Valores de complemento de dos enteros de un nmero de 5
bits
Posicin
Valor Posicional
Valor Decimal
0
20
1
1
21
2
2
2
2
4
3
23
8

STALIN MARCILLO
4 (MSB)

B 309 - 4501
24

16

La Tabla 6 muestra cmo determinar el valor decimal del nmero de un


complemento a dos.
Tabla 6. Complemento Entero Conversin de dos
Complemento
de enteros de
Valor Decimal
Conversin
dos
01000
8
0 + 23 + 0 + 0 + 0 = +8
11000
8
24 + 0 + 0 + 21 + 20 = 16 + 2 + 1 =
8
10000
16
24 + 0+ 0 + 0+ 0 = 16
10111
9
24 + 0 + 22 + 21 + 20 = 16 + 0 + 4 + 2
+ 1 = 9
De dos enteros del complemento representan nmeros que van de -2 (N - 1) a 2 (N
- 1)
- 1. Para negar nmero entero de complemento a dos, simplemente invierte
los bits y agregar 1. Por ejemplo, los siguientes pasos muestran cmo niega el
nmero 9 a -9.
1. Sustituir los valores binarios del nmero decimal: 9 = 01001
2. Invertir los bits: 10110
3. Agregue 1: (10110 + 1) = 10111
Como se muestra en la Tabla 6, 10111 es igual a -9.
La mayor ventaja del sistema de los dos numeracin complemento es que la
suma y resta de dos nmeros del complemento es lo mismo que sumar y restar
nmeros sin signo. Sin embargo, la extensin de la muestra debe realizarse
antes de la operacin y llevar a cabo cualquier del sumador debe ser ignorado.
La Figura 3 muestra cmo agregar dos 2 bits de dos nmeros del
complemento.
Figura 3. Complemento Entero adicin de dos
Positivo + Positivo

Negativo + Positivo
Negativo

Negativo +

En la figura 3, los dgitos sombreados en azul representan los bits utilizados


para la extensin de signo. Los dgitos azules son el acarreo del sumador de 3
bits, que debe ser ignorado. Aparte de la extensin de signo y haciendo caso

STALIN MARCILLO

B 309 - 4501

omiso de la prrroga del MSB del sumador, adems, para los de dos nmeros
del complemento es idntica a la adicin de nmeros enteros sin signo.
Fraccional sin signo
En DSP y otros sistemas, a menudo es necesario para almacenar nmeros que
tienen tanto un nmero entero y un componente fraccional. Debido a que
algunas posiciones de bits pueden ser negativos, el sistema de numeracin
fraccional sin firmar puede almacenar nmeros mayores que y menor que 1. El
valor posicional de un dgito en el sistema de numeracin fraccional sin firmar
es 2 posicin, donde la posicin puede ser positivo o negativo (ver Figura 4 ). Por
lo tanto, el sistema de numeracin fraccionada sin signo es un superconjunto
del sistema de numeracin entero sin signo.
Figura 4. Posicin de bits
Nmero Binario
Posicin
Valor posicional

11111
2
1
0 1 2
22
21
20
21

22

La Tabla 7 muestra el valor decimal para cada bit en un nmero fraccionario sin
signo.
Tabla 7. Valores fraccionales sin signo
Posicin
Valor Posicional
2
2-2
1
2-1
0
20
1
21
2
22

Valor Decimal
0.25
0.50
1
2
4

La Tabla 8 muestra la forma de determinar el valor decimal de un nmero


fraccionario sin signo.
Tabla 8. Conversin fraccional sin signo
Nmero
fraccional sin
Valor Decimal
Conversin
signo
01001
2.25
0 + 21 + 0 + 0 + 22 = 2 + 0.25 = 2.25
11011
6.75
22 + 21 + 0 + 21 + 22 = 4 + 2 + 0.5 +
0.25 = 6.75
00010
0.5
0 + 0 + 0 + 21 + 0 = 0.5

STALIN MARCILLO

B 309 - 4501

Nmeros fraccionarios sin signo utilizan una notacin conveniente hacer un


seguimiento de la ubicacin de un punto de base (es decir, el punto binario o
decimal); un nmero con N bits a la izquierda de la coma de la base y la M bits
hacia la derecha se dice que es un nmero NM (por ejemplo, un nmero 8.3
tiene 8 dgitos a la izquierda del punto de base y 3 dgitos a la derecha).
Si todos los nmeros en el sistema tienen el mismo valor M (es decir, la misma
fraccionada bits de ancho), operaciones aritmticas son sencillos. Por ejemplo,
puede agregar un nmero de 8,3 a un nmero 12.3 utilizando un sumador
binario de 15 bits. Figura 5 muestra cmo agregar 00100101,101 (37.625) para
001101110011,001 (883.125).
Figura 5. La adicin con los mismos valores de M

Para agregar nmeros con diferentes valores de M, debe agregar ceros


adicionales para mantener los puntos radix alineados. Por ejemplo, para
agregar un nmero de 8,3 a un nmero 6.5, debe rellenar el nmero 8.3 con
ceros para crear un nmero 8.5. Por lo tanto, debe utilizar una de 13 bits
sumador en lugar de un sumador de 11 bits para agregar los dos nmeros. La
figura 6 muestra cmo agregar 11011011.110 (219.750) para 110111,11011
(55.84375).

Figura 6. La adicin con diferentes valores de M


Dgitos utilizados para el relleno se resaltan en azul.

Aparte de la alineacin de los puntos radix, no hay diferencia entre los


sistemas de numeracin fraccionarios entero sin signo y sin signo. De hecho,
un nmero entero sin signo es simplemente un nmero fraccionario sin signo

STALIN MARCILLO

B 309 - 4501

N.0 (es decir, nmeros enteros sin signo no tienen bits a la derecha del punto
radix). Cualquier hardware integrado para los nmeros enteros trabajar con
nmeros fraccionarios.
Complemento a dos fraccionales con signo
Como fraccional sin signo el complemento a dos sistemas de numeracin
fraccionaria con signo utiliza una notacin N.M y debe tener los puntos radix
alineados durante las operaciones aritmticas. Figura 7 muestra cmo agregar
un nmero 8.3 a un nmero 5.5.
Figura 7. Adicin de Complemento a dos fraccionales con signo
Dgitos utilizados para el relleno se resaltan en azul.

Una vez ms, los nmeros se rellenan con ceros y signo extendido para
obtener el resultado correcto.
Cdigo Gray
Cdigo Gray es un sistema de numeracin que se utiliza principalmente en
aplicaciones de deteccin del mundo real. La caracterstica fundamental de
cdigo Gray es que slo un bit cambia a la vez a medida que avanza de forma
secuencial a travs de los nmeros. Ver Tabla 9.
Nmero Cdigo Gray
001
011
010
110
111

Valor Decimal
1
2
3
4
5

Para entender por qu un sistema de numeracin en el que slo un bit cambia


ata tiempo es til, considere el sensor ptico mostrado en la Figura 8. Esta
sensoris un codificador de eje que da la posicin fsica (es decir, la rotacin) del
eje. Por simplicidad, el sensor se muestra con solamente un cdigo de 2 bits. El
sensor tiene 2 diodos emisores de luz (LED) y 2 fotodetectores para detectar la
posicin del eje. El nmero de bits representados por la rueda depende de
cmo de cerca se puede espaciar los recortes en la rueda de la rueda sin llegar

STALIN MARCILLO

B 309 - 4501

a ser demasiado dbil, el dimetro del haz de luz, y otros parmetros fsicos. La
figura 8 muestra un codificador de eje binario con 2 seales: s1 y s0.
Figura 8. Recta binario del eje codificador

La Figura 9 muestra las formas de onda ideales de s1 y s0 como los ciclos de


rueda a travs de una rotacin completa.
Figura 9. Ideal formas de onda de s1 y s0

En contraste, las formas de onda reales generados por los sensores pticos
varan lentamente y los sensores siempre estn mal alineados en al menos una
pequea cantidad, lo que provoca las seales para asemejarse a las formas de
onda mostradas en la Figura 10.

Figura 10. Formas de onda causadas por Sensores desalineados

STALIN MARCILLO

B 309 - 4501

Cuando estn mal alineados los sensores pticos, s1 y s0 no puede cambiar en


el mismo instante. Por lo tanto, los cdigos intermedios aparecen en la posicin
del eje detectado. En la figura 10, los s [10] seal deben haber completado
de
de la posicin del eje de
00 un ciclo
01 a travs
10
11 la secuencia
00
. Sin embargo, en realidad los ciclos a travs de la
de
, lo cual es incorrecto. Este error
00
01
00
10 secuencia
11
10
00
podra ser catastrfico si
el codificador de eje es, por ejemplo, la deteccin de la posicin del timn en
un avin.
El problema fundamental con cdigo Gray no es que ms de 1 bit cambia al
pasar de una posicin a otra, como ir de la posicin 1 (01) en la posicin 2 (10).
En el 0
cdigo
se
1 Gray2 de 23bits,0la secuencia decimal
00
01
11
10
00
representa como
. Tenga en cuenta que slo 1 bit
cambia entre los 2 nmeros adyacentes, lo que evita los problemas
ocasionados con conmutacin simultnea en sensores desalineados. La Figura
11 muestra el codificador de eje para el cdigo Gray de 2 bits.
Figura 11. Codificador Eje para 2 bits del Cdigo Gray

Cuando estn desalineados los sensores en este codificador, incluso en una


cantidad significativa, no hay cdigos
en
0 adicionales
1
2
3 la secuencia
0
, como se muestra en la Figura 12.

Figura 12. Cdigo Gray Secuencia con desalineacin significativa

STALIN MARCILLO

B 309 - 4501

Desafortunadamente, es difcil de realizar operaciones aritmticas en nmeros


de cdigo Gray. Es ms fcil de realizar operaciones convirtiendo primero los
nmeros de cdigo Gray a los nmeros ya sea sin signo o con signo de
complemento a dos despus de detectar.
Puede crear secuencias de cdigo Gray ya concatenando la secuencia ms
pequea con una versin invertida de la misma secuencia, y el establecimiento
de la MSB a 0 y 1. Por ejemplo, los pasos siguientes muestran cmo construir
un cdigo de Gray de 3 bits:
1. Durante los primeros 4 nmeros, anexar un 0 a la MSB del cdigo Gray
de 2 bits.
2. Durante los ltimos 4 nmeros, invierta el orden del cdigo Gray de 2
bits y aadir un 1 al MSB.
Este mtodo asegura que slo 1 bit cambia entre dos nmeros adyacentes.
Vase la Tabla 10.
Tabla 10. Creacin de la ms largas Secuencias decimales del Cdigo
Gray
Valor Decimal
Cdigo de Gray de 2
Cdigo de Gray de 3
bits
bits
0
00
000
1
01
001
2
11
011
3
10
010

4
110

5
111

6
101

7
100
Magnitud con signo
De magnitud con signo es til para aplicaciones en las que se debe acceder el
signo y la magnitud de un nmero por separado. En los sistemas de magnitud
con signo, el MSB representa el signo del nmero (es decir, 0 = positivo, 1 =
negativo) y todos los otros bits representan la magnitud. Esta notacin es
similar a la notacin decimal, que utiliza un + y - como el bit de signo y utiliza
los bits restantes para representar la magnitud.

STALIN MARCILLO

B 309 - 4501

Los sistemas de dos numeraciones del complemento de magnitud con signo y


ambos utilizan el MSB para determinar el signo. Sin embargo, no hay que
confundir con magnitud con signo complemento a dos.