Está en la página 1de 24

Electrónica Básica: Sistemas de Numeración

SISTEMAS DE NUMERACIÓN

REPRESENTACIÓN DE LOS SISTEMAS DE NUMERACIÓN

Las cantidades pueden representarse en diversos sistemas de numeración, los cuales se


distinguen por su base.

La base de un sistema de numeración es el número total de símbolos distintos que


pueden ser utilizados para representar las cantidades.

Ejemplo. Diga cuál es la base, así como cuántos y cuáles son los símbolos que utiliza
cada uno de los siguientes sistemas de numeración:

Sistema Base Símbolos que utiliza


Binario 2 0, 1
Octal 8 0, 1, 2, 3, 4, 5, 6 , 7
Decimal 10 0, 1, 2, 3, 4, 5, 6 , 7, 8, 9
Hexadecimal 16 0, 1, 2, 3, 4, 5, 6 , 7, 8, 9, A, B, C, D, E , F

En cualquier sistema de numeración, las cantidades se representan como una cadena o


sucesión de dígitos. Los dígitos son entonces todos aquellos símbolos que son válidos o
conocidos dentro de ese sistema de numeración y cuyo valor individual es necesariamente
menor que el de la base.

Los dígitos representados mediante letras en el sistema hexadecimal corresponden


respectivamente a los valores:

10 11 12 13 14 15
A B C D E F

Para indicar que un número N se encuentra representado en un sistema de numeración


de base b, utilizaremos la siguiente notación: (N)b.

Ejemplo. ¿Cómo se indica que el número 1603 se encuentra en sistema decimal?

(1603)10

Ejemplo. ¿Qué valor representa la cantidad (100)2?

En este caso, la notación nos indica que la cantidad representada es uno-cero-cero en


sistema binario y no cien en sistema decimal. Para saber cómo convertir una cantidad del
sistema binario al decimal, véase la siguiente sección: “Cambio de base”.

Al expresar una cantidad en un sistema de numeración, el símbolo que ocupa la


posición a la extrema derecha de la cadena se denomina “dígito menos significativo” (LSD)
debido a que ocupa la posición de menor peso o valor. Mientras que al símbolo que ocupa
1
Electrónica Básica: Sistemas de Numeración

la posición a la extrema izquierda se le conoce como el “dígito más significativo” (MSD),


debido a que se encuentra en la posición de mayor peso o valor.

Ejemplo. ¿Cuáles son los dígitos menos significativo y más significativo de la cantidad
(2376)10?

LSD=6 y MSD=2

Ejemplo. ¿Cuáles son los dígitos menos significativo y más significativo de la cantidad
(B49F)16?

LSD=F y MSD=B

CAMBIO DE BASE

Sistema decimal

En el sistema decimal, el peso o valor de cada posición se ve incrementado por un


factor de 10 al desplazarse hacia la izquierda.

Ejemplo. ¿Cuáles son los valores de cada dígito en la cantidad (2376)10?

6 100  6
7 101  70
3 102  300
2  10 3  2,000

Por lo tanto, esta cantidad representa de forma abreviada la suma:

2,000  300  70  6  2,376

Sistema binario a sistema decimal

En el sistema binario, a un dígito (0 ó 1) se le llama bit, y el peso o valor de cada


posición se ve duplicado sucesivamente al irse desplazando hacia la izquierda, esto es
incrementado por un factor de 2. El término bit proviene de la abreviación de binary digit.

2
Electrónica Básica: Sistemas de Numeración

Ejemplo. ¿Cuáles son los valores en base 10 de cada bit en la cantidad (1001)2? ¿Cuál
es el valor de dicha cantidad en sistema decimal?

1 2 0  1
0  21  0
0  22  0
1 23  8

Por lo tanto, el valor de esta cantidad en sistema decimal será la suma:

8  0  0  1  910

Por las razones ya expuestas, al trabajar con el sistema binario, el dígito que ocupa la
posición a la extrema derecha en una cantidad se denomina “bit menos significativo” (LSB)
y el dígito que se encuentra en la extrema izquierda se conoce como el “bit más
significativo” (MSB).

Sistema decimal a sistema binario

En este caso, para realizar la conversión se requiere:

1) Realizar la división entera del número decimal entre dos, que es la base de destino.
2) Almacenar el módulo o residuo (Ri).
3) Si el cociente obtenido es mayor que cero éste se divide por la base de destino y se
regresa al paso dos. Si el cociente es cero el proceso ha concluido.
4) El número decimal expresado en sistema binario será entonces la cadena formada al
ordenar todos los residuos obtenidos en el proceso anterior, iniciando con el último
de ellos (cuando el cociente fue cero) como el MSB y concluyendo con el primer
residuo obtenido para ocupar la posición del LSB.

Ejemplo. ¿Cómo se representa el número (26)10 en el sistema binario?

13
2 26 R0  0 LSB
6
2 13 R1  1
3
2 6 R2  0
1
23 R3  1
0
21 R4  1 MSB
Por lo tanto:
26 10  11010 2

3
Electrónica Básica: Sistemas de Numeración

Sistema hexadecimal a sistema decimal

El sistema hexadecimal es ampliamente utilizado en el campo de las


microcomputadoras debido a que al incrementarse el manejo de información, el tamaño de
las palabras también tiende a ir creciendo y su manejo se torna engorroso. En cambio, al
recurrir a la base 16, las cantidades son mucho más cortas y fáciles de trabajar.

Aquí, el peso o valor de cada posición se ve incrementado en potencias de 16 al


desplazarse de un dígito a otro hacia la izquierda, en una cantidad.

Ejemplo. ¿Cuáles son los valores en base 10 de cada dígito en la cantidad (B49F) 16?
¿Cuál es el valor de dicha cantidad en sistema decimal?

F 160  15
9 161  144
4 16 2  1,024
B  16 3  45 ,056

Por lo tanto, el valor de esta cantidad en sistema decimal será la suma:

45,056  1,024  144  15  46 ,239 10

Sistema decimal a sistema hexadecimal

El procedimiento de conversión es totalmente análogo al ya explicado para convertir de


base diez a base dos:

1) Realizar la división entera del número decimal entre la base de destino (dieciséis).
2) Almacenar el módulo o residuo (Ri).
3) Si el cociente obtenido es mayor que cero éste se divide por la base de destino y se
regresa al paso dos. Si el cociente es cero el proceso ha concluido.
4) El número decimal expresado en sistema hexadecimal está formado por la sucesión
ordenada de todos los residuos, colocando el último de ellos (cuando el cociente fue
cero) en la posición del MSD y concluyendo con el primer residuo obtenido en la
posición del LSD.

Ejemplo. ¿Cómo se representa el número (6668)10 en el sistema hexadecimal?

4
Electrónica Básica: Sistemas de Numeración

416
16 6668 R0  12  C LSD
26
16 416 R1  0
1
16 26 R2  10  A
0
16 1 R3  1 MSD
Por lo tanto:
6668 10  1A0C 16

Sistema hexadecimal a sistema binario

Para realizar esta conversión basta sencillamente con reemplazar cada dígito
hexadecimal por su equivalente binario de cuatro bits.

Ejemplo. ¿Cómo se representa el número (FAF)16 en el sistema binario?

F A F
1111 1010 1111
Por lo tanto:
(FAF)16 = (1111 1010 1111)2

Sistema binario a sistema hexadecimal

Para hacer esta conversión bastará separar el número binario en grupos de cuatro bits y
convertir cada uno de ellos en su equivalente hexadecimal para formar la cantidad buscada.

Ejemplo. ¿Cómo se representa el número (101 0000 1001)2 en el sistema hexadecimal?

0101 0000 1001


5 0 9
Por lo tanto:
(101 0000 1001)2 = (509)16

Como puede verse, el resultado de esta conversión es mucho más sencillo de entender,
visualizar y manipular que la cantidad original. Esta sencillez simplifica la labor de
técnicos e ingenieros en el manejo de la información representada por el código. El
proceso de reemplazar cadenas largas de información en sistema binario por cadenas
mucho más cortas en sistema hexadecimal se conoce como chunking.

5
Electrónica Básica: Sistemas de Numeración

Sistema base “b” a sistema decimal

El procedimiento ya expuesto para convertir una cantidad representada en los sistemas


binario o hexadecimal al sistema decimal, puede fácilmente ser generalizado para realizar
la conversión de un número al sistema decimal partiendo desde cualquier base “b”.

Sean:

b = Base del sistema de numeración en que se encuentra expresada una cantidad


ai = Dígito en la i-ésima posición de la cantidad en base “b”
n+1 = Número de dígitos que integran la parte entera de la cantidad
p = Número de dígitos que integran la parte fraccionaria de la cantidad
N = Valor de la cantidad expresado en base 10

N 10  anan1a2a1a0.a1a2a p1a p b

Entonces, la conversión de dicha cantidad estará dada por la expresión:

n p
N   ai bi   ai b i
i 0 i 1

Donde la primera sumatoria se utiliza sólo para realizar la conversión de la parte entera
y la segunda sumatoria se utiliza únicamente para convertir la parte fraccionaria.

Ejemplo. ¿Cuáles son los valores de cada dígito en la cantidad (87.54)10?

8 101  80
7 100  7
5 101  0.5
4 102  0.04

Por lo tanto, esta cantidad representa de forma abreviada la suma:

80  7  0.5  0.04  87.54

Ejemplo. ¿Qué valor representa la cantidad (11010.11)2 en base 10?

1 24  16
1 23  8
0  22  0
1 21  2
0  20  0
1 21  0.5
1 22  0.25
6
Electrónica Básica: Sistemas de Numeración

Por lo tanto, el valor de esta cantidad en sistema decimal será la suma:

16  8  2  0.5  0.25  26 .75 10

Sistema decimal a sistema base “b”

El procedimiento indicado para convertir una cantidad expresada en el sistema decimal


a los sistemas binario o hexadecimal, puede generalizarse para hacer la conversión de un
número en cualquier base “b” al sistema decimal.

Partamos de una cantidad N expresada en el sistema decimal con parte entera E y parte
fraccionaria f. Es decir:

N 10  E. f 10

Para hacer la conversión de esta cantidad a un sistema de base b será necesario trabajar
por separado la parte entera (E) y la parte fraccionaria (f ). De la siguiente forma:

E. f 10   . b
E  0. f 10    0. b
E 10   b
0. f 10  0. b
El procedimiento para hacer la conversión de la parte entera es exactamente el ya
explicado:

1) Realizar la división entera de la parte entera (E) del número decimal entre el valor
de la base de destino (b).
2) Almacenar el módulo o residuo (Ri).
3) Si el cociente obtenido es mayor que cero éste se divide por la base de destino y se
regresa al paso dos. Si el cociente es cero el proceso ha concluido.
4) La parte entera del número decimal expresada en base b se construye con la
sucesión ordenada de todos los residuos obtenidos, colocando el último de ellos (Rn)
(cuando el cociente fue cero) en la posición del MSD y concluyendo con el primer
residuo obtenido (R0) en la posición del LSD.

E 10   b
 b  Rn Rn1R1R0 b
Para convertir la parte fraccionaria de un número en base diez el procedimiento es el
siguiente:

7
Electrónica Básica: Sistemas de Numeración

1) Multiplicar la parte fraccionaria (0.f ) del número decimal por el valor de la base de
destino (b).
2) Almacenar la parte entera del producto obtenido (a-i).
3) Si la parte fraccionaria de dicho producto es cero o si se alcanzó la precisión
deseada, el proceso ha concluido. De otra forma, se multiplica esa parte
fraccionaria por la base y se regresa al paso dos.
4) La parte fraccionaria del número decimal expresada en base b se construye con la
sucesión ordenada de todos los valores almacenados, colocando el primero de ellos
(a-1) inmediatamente a la derecha del punto decimal y concluyendo con el último
valor (a-p) en la posición de la extrema derecha.

0. f 10  0. b


0. b  0.a1a2a p1a p b

De esta forma, el resultado completo será la cadena:

E. f 10   . b  Rn Rn1R1R0.a1a2a p1a p b

Ejemplo. Convertir el número (16.6875)10 al sistema binario.

Tomando primero la parte entera:

16 10   2
8
2 16 R0  0 LSB
4
28 R1  0
2
2 4 R2  0
1
2 2 R3  0
0
21 R4  1 MSB

Por lo tanto, el resultado de la conversión de la parte entera es:

16 10   2  R4 R3 R2 R1R0 2  10000 2

Ahora, para la parte fraccionaria tenemos:

0.6875 10  0. 2

8
Electrónica Básica: Sistemas de Numeración

2  0.6875  1.375 a1  1


2  0.375  0.75 a 2  0
2  0.75  1.5 a3  1
2  0.5  1.0 a 4  1

Entonces, el resultado de la conversión de la parte fraccionaria es:

0.6875 10  0. 2  0.a1a2 a3a4 2  0.1011 2

Y el resultado completo es:

16 .6875 10  1000 .1011 2

Ejemplo. Convertir el número (2748.31640625)10 al sistema hexadecimal.

Tomando primero la parte entera:

2748 10   16

171
16 2748 R0  12  C LSD
10
16 171 R1  11  B
0
16 10 R2  10  A MSD

Por lo tanto, el resultado de la conversión de la parte entera es:

2748 10   16  R2 R1R0 16   ABC 16

Ahora, para la parte fraccionaria tenemos:

0.31640625 10  0. 16

16  0.31640625  5.0625 a1  5


16  0.0625  1.0 a2  1

Entonces, el resultado de la conversión de la parte fraccionaria es:

0.31640625 10  0. 16  0.a1a2 16  0.5116

Y el resultado completo es:

9
Electrónica Básica: Sistemas de Numeración

16 .125 10   ABC .5116

USO DEL SISTEMA BINARIO PARA EL MANEJO DE INFORMACIÓN

Además de ser un dígito del sistema binario, un bit es también la unidad mínima (o
básica) de información ya que sólo puede tomar dos valores: “0” ó “1”, apagado o
encendido, falso o verdadero, etc.

Usualmente los números binarios se escriben en grupos de cuatro u ocho bits. Una
cadena de cuatro bits se denomina un nibble, mientras que a un conjunto de ocho bits se le
conoce como un byte.

A los bits agrupados para representar cierta información en conjunto, se les llama
palabras de datos o simplemente palabras. Usualmente, el tamaño de las palabras se
define en potencias de 2 (la base). Así, podríamos tener, por ejemplo, palabras de 2, 4, 8,
16, 32, 64 o más bits.

Una cantidad positiva se representa mediante lo que se denomina una palabra no


signada, mientras que para representar cantidades negativas se requiere utilizar palabras
signadas. La diferencia entre ambos tipos de palabras radica, en principio, en el manejo
que se hace del MSB, ya que en una palabra signada dicho bit se convierte en un indicador
(o bandera) para determinar el signo del número (0=positivo, 1=negativo), mientras que en
una palabra no signada dicho bit representa únicamente el valor correspondiente a la
posición que ocupe.

Si representamos con n el tamaño en bits de una palabra no signada, la mayor cantidad


que podremos representar con ella será 2 n-1. Sin embargo, el número de valores distintos
que podemos representar con ella es de 2 n.

Mientras que con una palabra signada de n bits, la mayor cantidad que podremos
representar será 2 n-1-1, la menor cantidad será –(2n-1) y el número de valores distintos que
podemos representar con ella sigue siendo de 2 n.

Ejemplo. ¿Cuáles son los valores del MSB y de la palabra completa en sistema decimal
para cada uno de los siguientes casos?

Tipo de palabra Palabra Valor del MSB Valor de la palabra


No signada (0101)2 Cero. 5
No signada (1010)2 Ocho. 10
Signada (0011)2 Sin valor. Indica signo positivo. 3
Signada (1111)2 Sin valor. Indica signo negativo. -1

10
Electrónica Básica: Sistemas de Numeración

Ejemplo. ¿Cuál es la mayor cantidad que puede representarse con una palabra no
signada de 3 bits? ¿Cuántos valores diferentes puede representar esa palabra? ¿Cuáles son
esos valores?

La cantidad más grande será: 23  1  8  1  7

El número de valores distintos es: 23  8

Los valores son:

000 001 010 011 100 101 110 111


0 1 2 3 4 5 6 7

Ejemplo. ¿Cuál es la mayor cantidad que puede representarse con una palabra signada
de 3 bits? ¿Cuál es la menor cantidad? ¿Cuántos valores diferentes puede representar esa
palabra? ¿Cuáles son esos valores?

La cantidad más grande será: 231  1  22  1  4  1  3

La cantidad más pequeña será:  231   2 2   4

El número de valores distintos es: 23  8

Los valores son:

100 101 110 111 000 001 010 011


 4  3  2 1 0 1 2 3

Para poder entender el uso de palabras signadas y cómo obtener su valor en sistema
decimal es necesario introducir otro concepto, por lo que pospondremos la explicación
hasta la sección “Complemento de un número”.

Tarea. Investigue:

1) ¿Qué es, cómo y en dónde se utiliza el sistema BCD (binary coded decimal)?
2) ¿Cómo se representa el código ASCII en sistema binario?

Sistema BCD (binary coded decimal)

Este es otro sistema de numeración comúnmente utilizado en el campo de la electrónica


digital. Consiste en representar cada dígito decimal como una palabra de 4 bits (nibble),
por lo que el valor máximo que ésta puede representar es 9.

Una diferencia importante con respecto al sistema binario es que cuando se trabaja con
el sistema BCD no pueden desecharse los ceros a la izquierda (al inicio) de la palabra.
11
Electrónica Básica: Sistemas de Numeración

Este sistema se utiliza cuando es necesario transmitir información decimal desde o


hacia una máquina digital, por ejemplo: relojes digitales, calculadoras, voltímetros
digitales, contadores.

Código ASCII en sistema binario

12
Electrónica Básica: Sistemas de Numeración

OPERACIONES ARITMÉTICAS

Las operaciones aritméticas con números de base b siguen las mismas reglas que los
números decimales, pero debe tenerse el cuidado de utilizar sólo los b dígitos permisibles.

En esta sección analizaremos únicamente las operaciones en sistema decimal y en


sistema binario. Las primeras servirán sólo como referencia para ilustrar las segundas, que
son las utilizadas para el manejo de sistemas digitales.

Suma

Cuando se suman números de varios dígitos, el procedimiento consiste en ir sumando


uno a uno los dígitos que ocupan la misma posición, y se producen acarreos cuando el
resultado excede el valor del mayor dígito permisible (b-1).

Ejemplo. Sumar los números (12345)10 y (98760)10.

1 1 1 Acarreos
1 2 3 4 5 Sumando
 9 8 7 6 0 Sumando
1 1 1 1 0 5 Total

Ejemplo. Sumar los números (10110)2 y (10011)2.

1 1 Acarreos
1 0 1 1 0 Sumando
 1 0 0 1 1 Sumando
1 0 1 0 0 1 Total

Resta

Cuando se restan números de varios dígitos, el procedimiento consiste en ir restando


uno a uno los dígitos que ocupan la misma posición, y se producen préstamos provenientes
del dígito en la siguiente posición más significativa cada vez que el sustraendo excede al
valor del minuendo.

Ejemplo. Restar el número (18395)10 al número (94760)10.


1 1 1
8 4 6 5 0 Pr éstamos
9 4 7 6 0 Minuendo
 1 8 3 9 5 Sustraendo
7 6 3 6 5 Diferencia

13
Electrónica Básica: Sistemas de Numeración

Ejemplo. Restar el número (10110)2 al número (11011)2.


1
0 0 Pr éstamos
1 1 0 1 1 Minuendo
 1 0 1 1 0 Sustraendo
0 0 1 0 1 Diferencia

Comprobación: la operación hecha es 27 10  22 10  510 .

Multiplicación

Cuando se multiplican números de varios dígitos, el procedimiento consiste en ir


multiplicando sucesivamente todos los dígitos de un factor por cada dígito del otro factor e
ir colocando los productos obtenidos de forma ordenada y escalonada para después
sumarlos y obtener el resultado buscado. En las multiplicaciones intermedias y en la suma
final pueden irse generando acarreos siempre que el resultado exceda el valor del mayor
dígito permisible (b-1).

Ejemplo. Multiplicar el número (2468)10 por el número (120)10.

2 4 6 8 Factor
 1 2 0 Factor
0 0 0 0
4 9 3 6
2 4 6 8
2 9 6 1 6 0 Pr oducto

Ejemplo. Multiplicar los números (1011)2 y (101)2.

1 0 1 1 Factor
 1 0 1 Factor
1 0 1 1
0 0 0 0
1 0 1 1
1 1 0 1 1 1 Pr oducto

COMPLEMENTOS

En las computadoras digitales se usan complementos para simplificar la operación de


resta y para efectuar manipulaciones lógicas. Hay dos tipos de complementos para cada
sistema base b: el complemento a la base y el complemento a la base disminuida. El
primero se denomina complemento a b, mientras que el segundo es el complemento a (b-1).
14
Electrónica Básica: Sistemas de Numeración

Ejemplo. ¿Cuáles son los dos tipos de complemento que existen en el sistema decimal?

Complemento a diez y complemento a nueve.

Ejemplo. ¿Cuáles son los dos tipos de complemento que existen en el sistema binario?

Complemento a dos y complemento a uno.

Complemento a la base disminuida

Dado un número N en base b que tiene n dígitos, su complemento a (b-1) se define


como:
bn 1  N
Nota: Como puede observarse en la expresión anterior, cuando se trabajan
complementos es fundamental establecer el número de dígitos (n) con los que se
representarán los números, por lo cual no pueden desecharse los ceros a la izquierda (al
inicio de las cantidades).

Ejemplo. ¿Cuál es el complemento a nueve de (546700)10?

Se tienen n=6 dígitos, por lo tanto:


10 6

 1  546700  999 ,999  546 ,700  453 ,299

Ejemplo. ¿Cuál es el complemento a nueve de (012398)10?

Se tienen n=6 dígitos, por lo tanto:


10 6

 1  012398  999 ,999  012 ,398  987 ,601

Ejemplo. ¿Cuál es el complemento a uno de (1011000)2?

Se tienen n=7 dígitos, por lo tanto:


1111111
 
2  1  1011000  1011000
7

0100111

Ejemplo. ¿Cuál es el complemento a uno de (0101101)2?

Se tienen n=7 dígitos, por lo tanto:


1111111
 
2  1  0101101   0101101
7

1010010

15
Electrónica Básica: Sistemas de Numeración

Como se observa, al obtener el complemento a uno, el minuendo queda formado por n


unos y al efectuar las restas de cada dígito las únicas opciones que podemos tener son:

1  0  1 y 1 1  0

De aquí se infiere que el resultado de cada resta tendrá siempre el valor opuesto al del
sustraendo (el número original) y, por lo tanto, como puede apreciarse, el complemento a
uno de un número binario cualquiera puede obtenerse simplemente cambiando sus unos por
ceros y sus ceros por unos.

Complemento a la base

Dado un número N en base b que tiene n dígitos, su complemento a b se define como:

bn  N , para N  0 y 0 para N  0

Por lo tanto, el complemento a la base de un número es la cantidad que se le tiene que


sumar a ese número para llegar a la siguiente potencia de su base.

Ejemplo. ¿Cuál es el complemento a 10 de (52520)10?

Se tienen n=5 dígitos, por lo tanto:

10 5 - 52520  100,000 - 52,520  47,480

Ejemplo. ¿Cuál es el complemento a 10 de (0.3267)10?

En este caso no hay parte entera, por lo tanto n=0 y:

100 - 0.3267  1  0.3267  0.6733

Ejemplo. ¿Cuál es el complemento a 2 de (101100)2?

Se tienen n=6 dígitos, por lo tanto:

1000000
2  101100   0101100
6

0010100
Comprobación:
2 
6
10  6410
1011002  4410
64  4410  (20)10  101002

16
Electrónica Básica: Sistemas de Numeración

Ejemplo. ¿Cuál es el complemento a 2 de (0.011)2?

En este caso no hay parte entera, por lo tanto n=0 y:

1.000
2  0.011   0.011
0

0.101
Comprobación:
2   1
0
10 10

0.0112  0.37510
1  0.37510  (0.625)10  0.1012
Otra forma para obtener el complemento a b de un número es sumarle 1 a su
complemento a (b-1):

b n
N  = b n
 
1  N 1

Como se observa en los siguientes ejemplos, este procedimiento alternativo simplifica


notablemente el cálculo cuando se trabaja con el sistema binario.

Ejemplo. ¿Cuál es el complemento a 10 de (52520)10?

Se tienen n=5 dígitos, por lo tanto:

10 5

- 1 - 52520  1  99,999 - 52,520   1  47,479  1  47,480

Ejemplo. ¿Cuál es el complemento a 2 de (101100)2?

Intercambiando los bits del número original, para obtener su complemento a uno, y
sumándole un uno al resultado se obtiene:
010011
 000001
010100

Como puede verse, los resultados obtenidos utilizando este procedimiento alternativo
coinciden con los obtenidos previamente.

Cuando el número original incluye parte fraccionaria, deberá quitarse temporalmente el


punto decimal para formar el complemento a b o a (b-1), y volver a colocarlo después en el
número complementado en la misma posición relativa.

Ejemplo. ¿Cuál es el complemento a 2 de (100.101) 2?

17
Electrónica Básica: Sistemas de Numeración

011010
 000001 Por lo tanto, el resultado es: (11.011)2
011011
Comprobación:
100.101
 011.011
1000.000

Por la definición del complemento a la base al sumar el resultado obtenido con el


número original, considerando que tenemos n=3 dígitos enteros, debemos obtener el valor
de:
b n  23 10  1000 2

Lo cual, como puede observarse, coincide con el resultado obtenido.

Ejemplo. ¿Cuál es el complemento a 2 de (0.011)2?

En este caso, si se desea únicamente el complemento de la parte fraccionaria no debe


incluirse el cero de la parte entera, pero si se están utilizando i bits para la parte entera
entonces deberán rellenarse todas las posiciones con los ceros correspondientes.

100
 001 Por lo tanto, el resultado es: (0.101)2
101

Se observa que este resultado también coincide con el obtenido anteriormente.

Por otra parte, el complemento del complemento restablece el valor original del
número. El complemento a b de N es bn  N . El complemento del complemento es
b n  (b n  N )  N , o sea, el número original.

Aplicación del complemento a dos (o dos complemento)

El método directo que se enseña en la escuela primaria para restar utiliza el concepto de
préstamo. Se pide prestado un uno de la siguiente posición más significativa cuando el
dígito del minuendo es menor que el del sustraendo. El método funciona bien cuando se
resta con lápiz y papel, pero cuando la resta se implementa en hardware digital el método es
menos eficiente que si se usan complementos.

Normalmente se utiliza el dos complemento de un número entero signado (A) para


representar al mismo número pero con signo contrario (-A). Es decir:

A   A  0

18
Electrónica Básica: Sistemas de Numeración

Como ya se había dicho, en un número signado el MSB se utiliza solamente para


indicar el signo del número, de tal forma que:

0 = número positivo
1 = número negativo

El procedimiento usual para obtener el dos complemento de un número entero signado


es, como ya se vio:

1. Intercambiar los ceros por unos y los unos por ceros en todos los bits de la palabra.
2. Sumarle un uno al resultado obtenido.

Ejemplo. Obtener el dos complemento del número (0111)2.

1. Intercambio: (1000)2
2. Sumar uno: (1001)2

Por lo tanto, el número buscado es: (1001)2

Comprobación:
0111
 1001
1 0000

Se observa que el resultado obtenido de sumar el número original (7) 10 con el número
obtenido arroja un resultado de cero para los cuatro bits que se están utilizando para
representar la información, por lo tanto el número obtenido mediante el procedimiento del
dos complemento representa el valor de (–7)10. Adicionalmente, se obtuvo un uno como un
quinto bit debido al acarreo, pero éste normalmente será desechado por exceder las
dimensiones definidas para la palabra (4 bits), al no existir un espacio predestinado para
almacenarlo.

Además, con la convención establecida, el MSB de la palabra original nos indica que se
tiene una cantidad positiva y, para el resultado obtenido, ese mismo bit nos indica, en
cambio, que tenemos una cantidad negativa.

En general, el procedimiento para efectuar la resta de dos números M  N , ambos sin


signo, en la misma base b y de n dígitos cada uno, es el siguiente:

1. Sumar el minuendo, M, al complemento a b del sustraendo, N. Con ello se obtiene:


M  b n  N   M  N  r n .
2. Si M  N , la suma producirá un acarreo final, bn, que puede desecharse; lo que
queda es el resultado M  N .

19
Electrónica Básica: Sistemas de Numeración

3. Si M  N , la suma no produce acarreo final y es igual b n  N  M  , que es el


complemento a b de N  M  . Para obtener la respuesta en una forma conocida, se
toma el complemento a b de la suma y se le antepone un signo negativo.

Ejemplo. Utilizando el complemento a 10, calcular (72532)10 menos (3250)10.

Al obtener el complemento del sustraendo [N=(3250) 10] es necesario considerar que


ambos números deben tener igual número de cifras (n=5), por lo tanto:

72532 Minuendo (M)


+96750 Complemento a 10 de N
169282 Suma
-100000 Desecho del acarreo final (105)
69282 Resultado

Ejemplo. Utilizando el complemento a 10, calcular (3250)10 menos (72532)10.

03250 Minuendo (M)


+27468 Complemento a 10 de N
30718 Suma (no hay acarreo final)
69282 Complemento a 10 de la suma
-69282 Resultado (se antepone el signo negativo)

Puesto que estamos manejando números sin signo y M  N , en realidad es imposible


obtener un resultado sin signo en este caso. Al restar con complementos, la respuesta
negativa se reconoce por la ausencia de acarreo final y por el resultado complementado.

Ejemplo. Dados los números binarios X=(1010100)2 y Y=(1000011)2, realizar las


restas a) X  Y y b) Y  X , utilizando complemento a 2.

a) X  Y
1010100 Minuendo (X)
+0111101 Complemento a 2 de Y
10010001 Suma
-10000000 Desecho del acarreo final (27)
0010001 Resultado
b) Y  X
1000011 Minuendo (Y)
+0101100 Complemento a 2 de X
1101111 Suma (no hay acarreo final)
0010001 Complemento a 2 de la suma
-0010001 Resultado (se antepone el signo negativo)

La resta de números sin signo también se puede efectuar usando el complemento a


(b-1). Recordemos que este complemento es uno menos que el complemento a b. Por ello,
el resultado de sumar el minuendo al complemento del sustraendo produce una suma
20
Electrónica Básica: Sistemas de Numeración

disminuida en una unidad con respecto a la diferencia correcta cuando hay acarreo final.
Quitar el acarreo final y sumar 1 a la suma se denomina acarreo circular.

Ejemplo. Dados los números binarios X=(1010100)2 y Y=(1000011)2, realizar las


restas a) X  Y y b) Y  X , utilizando complemento a 1.

a) X  Y

1010100 Minuendo (X)


+0111100 Complemento a 1 de Y
10010000 Suma
-10000000 Desecho del acarreo final (27)
Acarreo circular
+1 Sumar 1
0010001 Resultado

b) Y  X

1000011 Minuendo (Y)


+0101011 Complemento a 1 de X
1101110 Suma (no hay acarreo final)
0010001 Complemento a 1 de la suma
-0010001 Resultado (se antepone el signo negativo)

El procedimiento con acarreo circular también es válido para restar números sin signo
en otras bases. En el caso de números decimales habría que emplear complemento a nueve.

Números binarios con signo

Los números binarios, tanto con signo como sin él, se representan en las computadoras
como una cadena de bits. El usuario determina si el número tiene signo o no. Si el número
binario posee signo se utilizará, como ya se ha dicho, el bit de la extrema izquierda para
representarlo.

El sistema de complemento con signo es el que ya se ha explicado.

Otra opción, menos utilizada comúnmente, es la convención de magnitud con signo.


En esta notación se representa el signo con el bit de la extrema izquierda y el resto de los
bits se leen normalmente para obtener la magnitud del número.

Ejemplo. ¿Qué cantidad representa la cadena (01001)2 bajo la convención de magnitud


con signo?

El bit de la extrema izquierda nos indica que se trata de un valor positivo y el resto de la
palabra tiene un valor de 9, por lo tanto:

(01001 ) 2  910

21
Electrónica Básica: Sistemas de Numeración

Ejemplo. ¿Qué cantidad representa la cadena (11001)2 bajo la convención de magnitud


con signo?

El bit de la extrema izquierda nos indica que se trata de un valor negativo, en este caso,
y el resto de la palabra tiene un valor de 9, por lo tanto:

(11001 ) 2   910

El sistema de complemento con signo es el más utilizado por ser el más conveniente y
puede utilizar el complemento a uno o a dos, aunque este último es el más común.

Ejemplo. ¿Cómo pueden representarse las cantidades de (9)10 y (-9)10 con ocho bits?

00001001 Única forma para representar (9)10


10001001 Representación de magnitud con signo para (-9)10
11110110 Representación de complemento a 1 con signo para (-9)10
11110111 Representación de complemento a 2 con signo para (-9)10

El sistema de magnitud con signo se usa en aritmética ordinaria, pero resulta torpe en
aritmética de computadoras porque hay que manejar por separado el signo y la magnitud.
Es por ello que normalmente se usa el complemento con signo. El complemento a uno
conlleva ciertas dificultades y casi nunca se emplea en operaciones aritméticas. Es útil
como operación lógica porque el cambio de uno a cero o de cero a uno equivale a una
operación de complemento lógico. Se pueden aplicar los mismos procedimientos al
sistema de complemento a uno con signo si se incluye el acarreo circular, como se hizo en
el caso de los números sin signo.

Cuando se suman dos números de n bits, hay que tener cuidado de que el resultado no
exceda la capacidad de almacenamiento para el resultado, ya que si la suma ocupa n+1 bits,
ocurrirá un desbordamiento (overflow). Esto se debe a que los números se almacenan en
un número finito de bits y no cabrá si se excede la capacidad.

En el sistema de complemento con signo, los números binarios se suman y restan


siguiendo las mismas reglas básicas de suma y resta que los números sin signo. Por ello,
las computadoras sólo necesitan un circuito en hardware para manejar ambos tipos de
aritmética. El usuario o programador deberá interpretar de diferente manera los resultados
de tales sumas o restas, dependiendo de si supone que los números tienen signo o no.

22
Electrónica Básica: Sistemas de Numeración

SISTEMAS DE NUMERACIÓN

Tarea. Trabajo de investigación y práctica en el manejo de distintos sistemas de


numeración.

1. Investigue:

a) Los principios para la representación de cantidades en los distintos sistemas de


numeración (binario, octal, decimal, hexadecimal, etc.).
b) Los conceptos de dígito más significativo (MSD) y dígito menos significativo
(MSD).
c) El procedimiento para realizar cambios de base, para poder representar una
misma cantidad en distintos sistemas de numeración.
d) El manejo de palabras signadas y palabras no signadas.
e) El concepto de complemento de un número en base b y el procedimiento para
calcularlo.
f) Los principios para realizar operaciones aritméticas en los distintos sistemas de
numeración (suma y multiplicación).
g) Las reglas del Álgebra de Boole.

2. Realice los siguientes cambios de base:

a) (17)10= (10001)2= (21)8= (11)16


b) (11100111)2= (743)8= (231)10= (E7)16
c) (123)8= (1010011)2= (83)10= (53)16
d) (2A4)16= (1010100100)2= (1244)8= (676)10
e) (100)10= (10201)3= (400)5= (202)7= (121)9= (84)12= (50)20
f) (4.90625)10= (100.11101)2= (4.72)8= (4.E8)16
g) (10111011.10111011)2= (273.566)8= (187.73046875)10= (BB.BB)16
h) (354.674)8= (11101100.1101111)2= (236.8671875)10= (EC.DE)16
i) (907.534)16=(100100000111.0101001101)2=(4407.2464)8=(2311.3251953125)10
j) (78.45)10= (2220.110011001100110011001)3= (303.211111111111111)5=
(141.310231023102)7= (86.40404040404)9= (66.5497249724)12= (3I.9)20

3. Convierta los valores indicados al sistema binario, utilizando la representación de


complemento a dos para números signados con el menor número de bits necesario,
y haga la suma aritmética, dejando el resultado final expresado en base dos:

a) (10)10+(5)10= (01010)2+(00101)2= (01111)2


b) (10)10+(-5)10= (01010)2+(11011)2= (00101)2
c) (-10)10+(5)10= (10110)2+(00101)2= (11011)2
d) (-10)10+(-5)10= (10110)2+(11011)2= (10001)2
e) (7)10+(13)10= (00111)2+(01101)2= (010100)2
f) (7)10+(-13)10= (00111)2+(10011)2= (111010)2
g) (-7)10+(13)10= (11000)2+(01101)2= (000110)2
23
Electrónica Básica: Sistemas de Numeración

h) (-7)10+(-13)10= (11000)2+(10011)2= (101100)2


i) (2)10+(10)8= (00010)2+(01000)2= (01010)2
j) (2)10+(-10)8= (00010)2+(11000)2= (11010)2
k) (-2)10+(10)8= (11110)2+(01000)2= (00110)2
l) (-2)10+(-10)8= (11110)2+(11000)2= (10110)2
m) (1A)16+(10)10= (0011010)2+(0001010)2=(0100100)2
n) (1A)16+(-10)10= (0011010)2+(1110110)2=(0010000)2
o) (-1A)16+(10)10= (1100110)2+(0001010)2=(1110000)2
p) (-1A)16+(-10)10= (1100110)2+(1110110)2=(1011100)2
q) (1A)16+(10)10= (0011010)2+(0001010)2=(0100100)2
r) (1A)16+(-10)10= (0011010)2+(1110110)2=(0010000)2
s) (-1A)16+(10)10= (1100110)2+(0001010)2=(1110000)2
t) (-1A)16+(-10)10= (1100110)2+(1110110)2=(1011100)2
u) (10)7+(10)9= (000111)2+(001001)2=(010000)2
v) (10)7+(-10)9= (000111)2+(110111)2=(111110)2
w) (-10)7+(10)9= (111001)2+(001001)2=(000010)2
x) (-10)7+(-10)9= (111001)2+(110111)2=(110000)2

24

También podría gustarte