Anda di halaman 1dari 12

SISTEMAS DE NUMERACIÓN Y CODIFICACIÓN DE DECIMAL A

BINARIO

Sistema decimal: es un sistema de numeración en base 10, tiene 10 posibles dígitos


(pi). En cada número, el valor que toman sus dígitos depende de la posición respecto
del primer dígito de referencia (10i). Cada número decimal se obtiene mediante la
suma ponderada de sus dígitos:
N= Σ(pi*10i)
1853=1*103+8*102+5*101+3*100

Sistema binario: sistema de numeración en base 2, tiene 2 posibles dígitos (0,1), al


igual que en el sistema de numeración decimal, el valor de cada dígito en un número
depende de su posición. Así, para convertir un número binario (en base 2) a decimal:

00101(2)= 0*24 +0*23 + 1*22 + 0*21+1*20 = 5(10) 24 23 22 21 20


0 0 1 0 1

Para convertir un número decimal a binario hay que realizar la operación inversa:
dividir entre 2 el número hasta descomponerlo y ordenar inversamente la secuencia.

9(10)= 1*23 + 0*22 + 0*21+ 1*20 9 2


1 4 2
0 2 2
0 1
Sistema hexadecimal: sistema de numeración en base 16, tiene 16 posibles dígitos
(0,......9,A,B,C,D,E,F). (A=10, B=11,...). Para convertir un número hexadecimal a
decimal o viceversa se procede igual que con el sistema binario:
23776 16
5CE0(16) = 5*163 + 12*162 + 14*161 + 0*160 = 23776(10)
0 1486 16
14 92 16
12 5

CÓDIGOS BINARIOS: Existen diversas formas de codificar números decimales en


binario. Los más usuales son:
- Código binario natural: a cada número decimal se le hace corresponder su
equivalente número binario (en base 2).

El número decimal 26 (24+ 23+21) codificado en binario natural sería : 11010

- Código decimal codificado en binario (Código BCD): cada número decimal se


descompone primero en cifras y a cada cifra se le asigna cuatro dígitos:
o Código BCD natural: cuatro dígitos por cifra decimal siendo sus pesos
8,4,2 y 1 (equivalente binario de cada cifra): 2 6
El número decimal 26 codificado en BCD natural sería : 0010 0110

o Código BCD Aiken: cuatro dígitos por cifra decimal siendo sus pesos
2,4,2 y 1: 2 6
El número decimal 26 codificado en BCD Aiken sería : 0010 1100
1
DISEÑO Y SIMPLIFICACIÓN DE FUNCIONES LÓGICAS.
1. INTRODUCCIÓN
La información de tipo digital (que utiliza señales con un número finito de valores,
generalmente basados en un sistema binario) es más precisa que la analógica (que
utiliza señales que pueden tener un número infinito de valores), es menos sensible al
ruido y a las perturbaciones externas y utiliza un número reducido de circuitos básicos
(llamados puertas lógicas) que se repiten muchas veces.

Estas características y gracias a las técnicas que han permitido incrementar la


velocidad a la que se procesa y envía la información, justifica el uso creciente de los
sistemas digitales, cuyo campo de aplicación es muy amplio, siendo sus aplicaciones
más representativas en los sistemas de control industrial (controladores o autómatas
programables), equipos de procesamiento de datos (ordenadores,.....) y otros equipos
y productos electrónicos como electrodomésticos, alarmas,...

El Álgebra de Boole fue desarrollada por George Boole durante el siglo XIX con
objeto de representar y sistematizar el razonamiento lógico, utiliza:
- Variables binarias que sólo pueden adoptar dos valores o estados: “0” y “1”
que representan los valores lógicos “verdadero” y “falso”
- Relaciones algebraicas (suma, producto,....) que representan las
conjunciones lógicas (“0”, “Y”, .....)

En 1938, Claude Shannon adaptó el álgebra de Boole al estudio de circuitos


electrónicos que podían adoptar dos estados posibles: nivel “0” o nivel “1” de las
diferentes variables eléctricas (tensión, corriente, potencia,.....), llamando puertas
lógicas a los circuitos equivalentes a operaciones lógicas básicas, de forma que en
lugar de representar todos los elementos del circuito que intervendrían (resistencias,
diodos, transistores, ....) se representa su esquema de conexionado mediante
símbolos que relacionan el/los valor/es lógico/s de entrada con el valor lógico de salida
a través de una puerta lógica.

2. ÁLGEBRA DE BOOLE
2.1. Elementos y operaciones
- Es una lógica bivaluada (binaria): cada variable puede tomar dos valores:
Verdadero (1), falso (0).
- Las variables se designan por letras.
- Las operaciones son reglas de combinación de elementos y se representan
mediante operadores. Funciones básicas:
o Adición o unión o función O (OR): f(A,B) = A+B
o Producto o intersección o función Y (AND): f(A,B) = A*B
o Complementación o inversión, negación o función NO (NOT) :
f(A) = A (también podéis verlo escrito como A´)
- Otras operaciones:
o Función No O (NOR): f(A,B) = A+B = A * B
o Función No Y (NAND): f(A,B) = A*B = A + B
o Función O Exclusiva (EXOR): f(A,B) = A ⊕ B = A * B +A * B
o Función equivalencia (EXNOR): f(A,B) = A ∆ B = A ⊕ B = A * B+A *B

2
2.2. Teoremas en el álgebra de Boole
- Teorema de dualidad: a cada ley lógica le corresponde una dual construida
intercambiando + con “y” y 1 con 0.

3. REPRESENTACIÓN DE FUNCIONES LÓGICAS


3.1. Expresión algebraica
Combinación de constantes (0,1), variables (A,B,C,..) y operadores (+, * , ). La
expresión algebraica de una función no es única.

3.2. Tabla de verdad


Es la representación en una tabla o cuadro de la función lógica. La tabla de verdad
de una función es única. Está formada por:
o 1 columna por variable (n columnas) i A B C f(i)
o 1 fila por cada combinación posible de 0 0 0 0 0
n
variables (2 filas) 1 0 0 1 0
o 1 columna para registrar el valor de la 2 0 1 0 1
función según la combinación de 3 0 1 1 1
variables 4 1 0 0 1
5 1 0 1 0
6 1 1 0 1
7 1 1 1 1
3.3. Formas canónicas de una función lógica:
- Primera forma canónica: expresión algebraica de una función en forma de suma de
minterms (mi). Minterm es un término de una función constituido por el producto de las
n variables de la función. Cada variable aparece una y sólo una vez, ya sea en su
forma normal o complementada. n
2 −1
f ( X 1 , X 2 ,..., X n ) = ∑ f (i ) * m i
Ejemplo: i=0

f(A,B,C) = Σ (2,3,4,6,7)

- Segunda forma canónica: expresión algebraica de una función en forma de producto


de maxterms (Mi). Maxterm es un término de una función constituido por la suma de
las n variables de la función. Cada variable aparece una y sólo una vez, ya sea en su
forma normal o complementada.

f ( X 1 , X 2 ,..., X n ) = ∏ i = 0 ( f (i ) + M 2 n −1− i )
2 n −1

Ejemplo:
F(A,B,C) = Π (7,6,2) = M7 * M6 * M2 = ( A + B + C ) * ( A + B + C ) * ( A + B + C )

3
Paso de una forma canónica a la tabla de verdad:
- Primera forma: cada minterm genera un “1” en la columna de la función. En
cada minterm se hace la siguiente sustitución: variables sin complementar =
“1”, variables complementadas “0”.
- Segunda forma: cada maxterm genera un “0” en la columna de la función.
En cada maxterm se hace la siguiente sustitución: variables sin
complementar = “0”, variables complementadas “1”.
0=A; 1= A 0 =A; 1= A
Para el ejemplo anterior:

i A B C f(i) (S) mi salidas 1 M2n-1-i salidas 0


0 0 0 0 0 m0 M7 A+B+C
1 0 0 1 0 m1 M6 A+B+C´
2 0 1 0 1 m2 A´ *B *C´ M5
3 0 1 1 1 m3 A´ *B *C M4
4 1 0 0 1 m4 A *B´ *C´ M3
5 1 0 1 0 m5 M2 A´+B+C´
6 1 1 0 1 m6 A *B *C´ M1
7 1 1 1 1 m7 A *B *C M0
Podemos expresar la función como primera o segunda forma canónica:
minterms maxterms
Σ (2,3,4,6,7) Π (7,6,2)
m2+m3+m4+m6+m7 M7 * M6 * M2
(A´ *B *C´) +(A´ *B *C) + (A *B´ *C´) + (A *B *C´) + (A *B *C) (A+B+C) * (A+B+C´) *(A´+B+C´)

---LAS FORMAS CANÓNICAS DE UNA FUNCIÓN LÓGICA SON ÚNICAS----

3.4. Mapa de Karnaugh


El mapa de Karnaugh de una función de n variables es una tabla de 2n casillas,
cada una de ellas asociada a un minterm (o maxterm) de forma que al pasar de una
casilla a otra adyacente horizontal o verticalmente sólo cambia el estado de una
variable.

2 variables 3 variables 4 variables

4
4. SIMPLIFICACIÓN DE FUNCIONES LÓGICAS
4.1. Métodos algebraicos
En el ejemplo anterior, se demuestra mediante métodos algebraicos que ambas
funciones son equivalentes a otra más sencilla, que sería:

a) S= A*B + A * B = A ( B+B) = A*1 = A


b) S=(A+B) * (A+ B) = A*A+A* B+B*A+ B* B = A + [A ( B+B)] + 0 = A+A = A

4.2. Métodos numéricos


El más conocido es el de Quine-McCluskey, basados en procesos de
simplificación de funciones por medios informáticos.

4.3. A partir de mapas de Karnaugh


Utilizado para funciones con menos de seis variables. Se basa en los
teoremas:
a) S = A * B + A * B = B. (Si obtenemos la función más simple como suma de
productos)
b) S= ( A + B) * (A + B)= B (Si obtenemos la función más simple como
producto de sumas).

Se trata de agrupar por tanto dichas simplificaciones mediante bucles que


comprendan cuadros contiguos. En el primer caso agruparemos 1 y en el segundo 0.

a) Haciendo bucles con las salidas que valen 1:

B
A 0 1
A B
0 1 S = A * B + A * B = B.
AB
1 1
B

b) Haciendo bucles con las salidas que valen 0:

B
A 0 1 A+ B S = (A + B )* (A + B) = B.
0 0
1 0 A+B

El procedimiento para la simplificación será por tanto agrupar las casillas que
contienen “1”, procurando realizar el menor número de bucles posibles que
agrupen el mayor número de “1” (o de “0”) posible y teniendo en cuenta que los
extremos opuestos también son adyacentes:
1
00 01 11 10
00 1 1
01 1 1 1 1 2
11 1
10 1 1
3 5
5. DISEÑO E IMPLEMENTACIÓN DE FUNCIONES LÓGICAS

Implementar una función lógica es realizar el circuito digital que efectúe la función
lógica deseada. Para ello, tras ser deducida y simplificada la función lógica, se debe
proceder a su diseño mediante la representación gráfica de las puertas que en él
intervienen y posteriormente conectar los circuitos integrados diseñados.

Como esto implicaría disponer de un número elevado de circuitos integrados,


generalmente, las funciones lógicas suelen implementarse utilizando sólo las dos
puertas lógicas universales antes descritas: NOR y NAND, y que toda operación lógica
básica (suma, multiplicación o negación) puede transcribirse en forma de negación de
suma (NOR) o negación de multiplicación (NAND) tal y como se muestra en la tabla:

Símbolo y función Equivalencia NOR Equivalencia NAND

NOT

OR

A+B = A+B
A*B = A*B = A + B

AND

A*B = A*B A+B = A+B = A *B

6
6. CIRCUITOS COMBINACIONALES
Los circuitos integrados digitales se clasifican según su densidad de integración
(número de puertas lógicas que integran) en:
- Baja escala de integración (SSI): menos de 10 puertas
- Media escala de integración (MSI): entre 10 y 100 puertas
- Alta escala de integración (LSI): 100-1000 puertas
- Muy alta escala de integración (VLSI): más de 100 puertas

Los circuitos combinacionales son circuitos integrados MSI que se clasifican


según la función que realizan en:
- Circuitos de comunicación: codificadores, decodificadores, convertidores de
código, multiplexores, demultiplexores,...
- Circuitos aritméticos: sumadores, restadores y comparadores.

6.1. Codificadores
Codifican información digitalizada en su equivalente binario (o bien natural o bien
BCD). Los codificadores son circuitos combinacionales formados por 2n entradas y n
salidas. Al accionarse una de las entradas, en la salida aparece el código binario
asignado a esa entrada. El diagrama funcional sería
N ≤ 2n Codificador
n
entradas salidas

Por ejemplo un codificador de 8 a 3 líneas tendría 23=8 entradas: 0, 1, 2, ...., 7 y 3


salidas: A, B, C.
Si este codificador lo conectamos con los pulsadores de los números 0 a 7 de la
calculadora, los codifica en binario natural.

0 0 1 2 3 4 5 6 7 A B C
1 1 0 0 0 0 0 0 0 0 0 0
2 A 0 1 0 0 0 0 0 0 0 0 1
3 B 0 0 1 0 0 0 0 0 0 1 0
4 8÷3 0 0 0 1 0 0 0 0 0 1 1
5 0 0 0 0 1 0 0 0 1 0 0
6 C 0 0 0 0 0 1 0 0 1 0 1
7 0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1

6.2. Decodificadores
Los decodificadores realizan la operación inversa, convierten información binaria en su
decimal equivalente. Su diagrama funcional sería:
Así, un decodificador BCD tendría n
Decodificador N ≤ 2n
4
4 entradas y 10 salidas (10≤2 ). entradas salidas

0
1
La salida del decodificador puede ser por nivel alto (la salida 0
A 2 tendrá un nivel alto de tensión cuando la combinación de las
B 3 entradas sea 0000, o bien por nivel bajo (la salida 0 tendrá un
4 nivel bajo de tensión cuando la combinación de las entradas
4÷10 sea 0000). En los decodificadores con
C 5
6 salida por nivel bajo se añade un
D 7 cerito antes de la línea de salida:
8
9

7
Los decodificadores se suelen emplear como generadores de funciones lógicas. Así
por ejemplo, la función lógica:
F = A * B * C + A * B * C + A * B * C + A * B * C quedaría implementada :

Con un decodificador de nivel alto con uno de nivel bajo:


0
0

1 1
A A 2
2

3 3
B 3÷8 4
B 3÷8 4
5
C 5
6 C
6
7
7

6.3. Convertidores de código


Son en realidad decodificadores (convierten información binaria en información
digitalizada) el más común es el decodificador de BCD a código de 7 segmentos (sus
salidas se conectan a un visualizador de 7 segmentos, como los que utilizan las
calculadoras) convirtiendo el número codificado en binario a través de un visualizador
de 7 segmentos en su equivalente decimal.
decodificador de
pantalla o
7 segmentos
visualizador de
7 segmentos

6.4. Multiplexores y demultiplexores


Son circuitos que se caracterizan por dirigir la información que se presenta en
unas vías de entrada a otra de salida, mediante unas entradas de control. Los
diagramas funcionales de cada uno de estos circuitos serían:
Multiplexor Demultiplexor
n
2
entradas de S 2n
E salidas
información

n entradas de n entradas de
control o selección control

Los multiplexores se han utilizado como circuitos para comprimir información


(incorporan en una única señal varías señales de entrada en paralelo, que viaja a
través de la red telefónica y una vez en destino un demultiplexor se encarga de volver
a separarlas para que cada señal llegue a su destino.

8
Los multiplexores también se utilizan como generadores de funciones. En un
multiplexor de 4 entradas de información y 2 de selección su salida respondería a la
función:
D0
D1 S = D0 A B + D1 A B + D2 AB + D3 AB
D2 4÷1 S
D3

A B
Para implementar funciones con multiplexores:
- Elijo multiplexor con m-1 entradas de control (m=nº de variables de la
función a implementar)
- Escribo la función de forma que aparezcan todas las combinaciones
posibles de las variables asignadas a las entradas de control
- Asigno un valor o la variable a las entradas de información.
Por ejemplo, la función : S = A B C + ABC + AB
- Necesito un multiplexor de 2 entradas de control. Asigno A y B a las
entradas de selección, por lo que la función quedaría de la siguiente forma:
S = A B * C + A B * 0 + AB * 1 + AB * C
- Luego
C
D0 = C ; D1 = 0; D2 = 1; D3 = C y por
tanto el diagrama sería: Vcc 4÷1 S
C

A B
6.5. Comparadores
Son circuitos capaces de establecer las relaciones mayor (>) menor (<) e igual
entre dos configuraciones binarias. Por ejemplo, un comparador de dos dígitos
respondería a la tabla de verdad:
A B S0 S1 S2
S0 es la salida A>B S0 = A * B
0 0 0 0 1
0 1 0 1 0 S1 es la salida A<B S1= A * B
1 0 1 0 0
S2 es la salida A=B S2= A * B + A * B
1 1 0 0 1

6.6. Sumadores y restadores


Son circuitos que realizan la suma o resta de dos números binarios, uniendo las
entradas de los diferentes dígitos con el acarreo anterior se pueden sumar o restar
números binarios de varias cifras.
Tabla de verdad de un sumador total Tabla de verdad de un restador total
Co A B S C Co A B S C
0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 A Su 0 0 1 1 1
ma S
0 1 0 1 0 B 0 1 0 1 0
0 1 1 0 1 dor C 0 1 1 0 0
Co
1 0 0 1 0 1 0 0 1 1
1 0 1 0 1 1 0 1 0 1
1 1 0 0 1 1 1 0 0 0
1 1 1 1 1 1 1 1 1 1
Co: acarreo anterior
C: acarreo
9
7. CIRCUITOS SECUENCIALES
Son circuitos digitales en los que los valores de las salidas, en un determinado
momento, no dependen exclusivamente de los valores de las entradas en ese instante,
sino que también dependen del propio estado anterior de estas salidas. Son por tanto
circuitos con memoria, que responden al siguiente diagrama de bloques:

Los circuitos secuenciales más simples son los biestables, que poseen capacidad para
almacenar información binaria de 1 bit. La unión de biestables da lugar a contadores y
registros de desplazamiento, y aquellos integrados por un número mayor de biestables
origina autómatas finitos y memorias integradas.

Los biestables se clasifican a su vez en


- Asíncronos: aquellos que no necesitan un señal de reloj para ser activados.
Cada estado se mantiene hasta que cambian las entradas.
o Biestable R-S
o Biestable J-K
o Biestable T
- Síncronos: aquellos que se activan con una señal de reloj, de manera que cada
estado se mantiene hasta que cambian las entradas y una señal de reloj activa
el biestable.
o Activados por nivel o biestables LATCH
o Activados por flanco o biestables FLIP-FLOP

7.1. BIESTABLES ASÍNCRONOS


El más simple es el biestable R-S, cuyas salidas son complementarias excepto en el
caso de que ambas entradas sean 1 simultáneamente. Según su construcción pueden
ser de inscripción o borrado prioritario.

El biestable J-K elimina el defecto de funcionamiento del R-S cuando ambas entradas
valen 1, siendo ambas salidas siempre complementarias.

10
El biestable T se construye uniendo las dos entradas de un J-K

7.2. BIESTABLES SÍNCRONOS ACTIVADOS POR NIVEL


En estos los cambios de estado en las salidas se producen cuando además de
variar las entradas, una señal de reloj activa el biestable. Se dice que tienen por tanto
dos modos de trabajo: modo retención, cuando la señal de reloj está inactiva y por
tanto el biestable no cambia el estado de las salidas aunque cambien las entradas y
modo transparente, cuando la señal de reloj está activa y por tanto las salidas
responderán a los cambios que se produzcan en las señales de entrada.

Se construyen biestables R-S y J-K síncronos, que responderían a las siguientes


tablas de verdad:

Uno de los biestables síncronos más empleados es el biestable D, empleado para


construir registros de desplazamiento:

11
7.3. BIESTABLES SÏNCRONOS ACTIVADOS POR FLANCO

En este tipo de biestables se pretende que la señal de reloj dure sólo un instante,
evitando que el reloj esté activo más tiempo que el de respuesta del biestable. Este
tipo de biestables pueden estar activados por flanco de subida o de bajada y pueden
adoptar alguna de las dos configuraciones que aparecen en el libro página 419: edge-
triggered (disparo por flanco) o master-slave (maestro-esclavo).

7.4. CONTADORES
Un contador es un circuito secuencia cuyas salidas representan, en un
determinado código, el número de impulsos que se aplican en la entrada. Pueden ser
ascendentes o descendentes. El contador más simple que podemos construir sería un
contador asíncrono de cuatro bits, cuyo símbolo y construcción con biestables JK
sería:

7.5. REGISTROS DE DESPLAZAMIENTO


Son circuitos secuenciales de aplicación general formados por una serie de biestables
conectados en cascada, normalmente D, de tal forma que son capaces de almacenar
una palabra binaria formada por tantos bits como biestables contenga. Normalmente
se emplean en sistemas en los que además de almacenar la información sea
necesario efectuar conversiones de datos de serie a paralelo o paralelo a serie. El
dispositivo más sencillo es aquel que recibe la información en serie y la transmite
también en serie como se muestra:

12

Anda mungkin juga menyukai