Diseño de circuitos digitales y tecnología de computadores/Sistemas de numeración

De Wikilibros, la colección de libros de texto de contenido libre.

Representación posicional de los números[editar]

En un sistema de numeración de base B, cada número se expresa con un conjunto de cifras. En el sistema decimal (B=10) el conjunto de cifras es {0,1,2,3,4,5,6,7,8,9}, mientras que en el sistema binario (B=2) es {0,1}. Cada cifra ni contribuye con un valor que depende de la cifra en sí y de la posición i que ocupa dentro del número:

N = ...n4 n3 n2 n1 n0 , n-1 ... = ...n4·b4 + n3·b3 + n2·b2 + n1·b1 + n0·b0 + n-1·b-1 + ...


Por ejemplo, el número 4964,85 en base 10 se puede expresar según la fórmula anterior del siguiente modo

4964,84)10 = 4·103 + 9·102 + 6·101 + 4·100 + 8·10-1 + 5·10-2


Esta fórmula se utiliza para obtener el valor decimal de un número expresado en cualquier otra base.

ejercicio
ejercicio

Cambio de una base B a base 10


Transformar el número 10100,001 en base 2 a su representación en decimal


Transformación de decimal a otra base B[editar]

  • La parte entera se obtiene dividiendo por B (sin decimales) la parte entera del número decimal y de los cocientes que sucesivamente se vayan obteniendo. Los restos y el último cociente son las cifras del número en base B. El último cociente es la cifra más significativa y el primer resto es la cifra menos significativa.
  • La parte fraccionaria se obtiene multiplicando por B sucesivamente la parte fraccionaria del número decimal y las partes fraccionarias que se van obteniendo en los productos sucesivos. El número en base B se forma con las partes enteras de los productos obtenidos.


ejercicio
ejercicio

Cambio de base 10 a base 2


Transformar el número decimal 29,375 a su representación en binario


Para transformar números enteros binarios no muy grandes a decimal se puede utilizar un método más rápido. Dado que el sistema binario sólo utiliza los elementos 0 y 1, basta con sumar los pesos de las posiciones de un número cuya cifra es 1. El siguiente ejemplo ilustra el cambio de base del número binario 1010)2 a decimal:

Posición (p) 3 2 1 0
Peso (2p) 8 4 2 1
Dígito binario 1 0 1 0
Resultado 8+2=10
Se suman los valores decimales con las casillas de unos


Operaciones aritméticas en binario[editar]

Suma en binario natural (sin signo)[editar]

0+0=0
0+1=1
1+0=1
1+1=0 (acarreo = 1)

Complemento a 2 y complemento a 1[editar]

El complemento a la base b de un número N de n cifras se calcula según la fórmula:

Cb(N) = bn - N


ejercicio
ejercicio

Complemento a la base en decimal


Hallar el complemento a la base del número decimal 67


En binario, el complemento a la base se denomina complemento a dos (Ca2).

ejercicio
ejercicio

Complemento a 2


Hallar el complemento a dos del número binario 1010


El complemento a la base menos uno (b-1) de un número N se calcula según la fórmula:

Cb-1(N) = (bn -1) - N


ejercicio
ejercicio

Complemento a la base menos uno en decimal


Hallar el complemento a la base menos uno del número decimal 67


En binario, el complemento a la base menos uno se denomina complemento a uno (Ca1) y se obtiene directamente complementando cada una de las n cifras binarias.

ejercicio
ejercicio

Complemento a uno


Hallar el complemento a uno del número binario 1010


Debido a que el complemento a uno se obtiene directamente complementando cada cifra binaria, la forma más sencilla de obtener el complemento a dos de un número binario es sumando uno a su complemento a 1.

ejercicio
ejercicio

Complemento a uno


Hallar el complemento a uno del número binario 1010


Resta en binario natural (sin signo)[editar]

Para restar números naturales, el minuendo debe ser siempre mayor que el sustraendo.

0-0=0
0-1=1 (acarreo = 1)
1-0=1
1-1=0

La resta de dos números binarios se puede realizar mediante una suma usando cualquiera de los dos métodos siguientes:

  • método del complemento a dos: sumando al minuendo el complemento a dos del sustraendo, despreciando el acarreo,
  • método del complemento a uno: sumando al minuendo el complemento a uno del sustraendo, sumando al resultado el acarreo generado por la suma.


ejercicio
ejercicio

Resta binaria usando el complemento a 1


Realizar la resta binaria 1000111 - 10010 por el método del complemento a uno

ejercicio
ejercicio

Resta binaria usando el complemento a 2


Realizar la resta binaria 1000111 - 10010 por el método del complemento a dos


Suma y resta de números enteros (con signo)[editar]

La resta de dos números enteros equivale a la suma del minuendo más el sustraendo cambiando el signo a éste último:

Minuendo - Sustraendo ≡ Minuendo + (-Sustraendo)

La suma de números enteros del mismo signo se realiza del mismo modo que la suma de números naturales, siendo el signo del resultado el mismo que el de los operandos.

Para sumar dos números enteros con distinto signo, se realiza la resta en binario natural de los dos sumandos, tomando como minuendo el sumando con mayor valor absoluto. El signo del resultado es el mismo que el del sumando con mayor valor absoluto.

ejercicio
ejercicio

Suma de enteros de distinto signo


Realizar la suma binaria +10010 + (-1000111)


Códigos intermedios[editar]

Los sistemas de numeración octal y hexadecimal, usados como códigos intermedios, facilitan la transformación de un número de base 2 a base 10, y viceversa. Esta ventaja se debe a que ambos sistemas (octal y hexadecimal) tienen como base una potencia de 2.

Octal[editar]

En el sistema de numeración octal (base = 8) el conjunto de cifras es {0,1,2,3,4,5,6,7}. Para expresar en binario cada una de las 8 cifras octales se necesitan exactamente 3 bits (23 = 8). Gracias a esto, se puede pasar directamente de binario a octal y viceversa, utilizando la siguiente correspondencia entre dígitos octales y palabras binarias de tres bits:

octal binario
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111


ejercicio
ejercicio

Cambio de base 2 a base 10 usando el código octal


Transformar el número binario 10001101100,1101 a decimal usando el sistema de numeración octal como código intermedio

ejercicio
ejercicio

Cambio de base 10 a base 2 usando el código octal


Transformar el número decimal 760,73 a binario usando el sistema de numeración octal como código intermedio


Hexadecimal[editar]

En el sistema de numeración hexadecimal (base = 16) el conjunto de cifras es {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}. Para expresar en binario las 16 cifras hexadecimales se necesitan exactamente 4 bits (24 = 16). Gracias a esto, se puede pasar directamente de binario a hexadeciaml y viceversa, utilizando la siguiente correspondencia entre dígitos hexadecimales y palabras binarias de cuatro bits:

decimal hexadecimal binario
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
10 A 1010
11 B 1011
12 C 1100
13 D 1101
14 E 1110
15 F 1111


ejercicio
ejercicio

Cambio de base 2 a base 10 usando el código hexadecimal


Transformar el número binario 10100111100110001100,0001111 a decimal usando el sistema de numeración hexadecimal como código intermedio

ejercicio
ejercicio

Cambio de base 10 a base 2 usando el código hexadecimal


Transformar el número decimal 4573,79 a binario usando el sistema de numeración hexadecimal como código intermedio