Professional Documents
Culture Documents
UNIDAD 1
Introduccin a la electrnica digital
Objetivos
Aprender para qu sirve un sistema electrnico digital, los
elementos bsicos de que consta, y los aspectos bsico
necesarios para su implementacin.
Conocer los motivos que justifican el estudio de las mate-
rias que se van a ensear en las dems unidades del libro.
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 2
Los sensores: son los elementos que permiten observar el medio fsico.
El procesador: interpreta lo observado en relacin con el objetivo a conseguir.
Los actuadores: son los elementos que permiten actuar sobre el medio para cambiarlo.
Evolucin de la magnitud.
Magnitudes continuas: el modo de evolucin de las sucesivas medidas se hace de acuerdo con
un patrn continuo, es decir, entre cualquier par de medidas existen infinitas medidas.
Magnitudes continuas son: el voltaje de una pila a lo largo de un mes, el nmero de lobos de un
bosque a lo largo de un siglo, la potencia electromagntica de una onda en un rango de frecuen-
cias, la altura de un terreno sobre el nivel del mar, etc.
Magnitudes discretas: el modo de evolucin de las sucesivas medidas se hace de acuerdo con un
patrn discreto, es decir, entre cualquier par de medidas existe un nmero limitado de medidas.
Magnitudes discretas son: la temperatura a las 8:00 de la maana a lo largo de un ao, las coor-
denadas geogrficas de las intersecciones entre ciertos meridianos y paralelos, el peso de las cien
primeras cajas de galletas de un lote de produccin, etc.
2
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 3
En las figuras siguientes se muestran representaciones grficas de algunos ejemplos de los diferentes
tipos de magnitudes que se pueden encontrar.
Del mismo modo que el ser humano dispone de sentidos, el procesador digital tambin deber de dis-
poner de rganos que transformen la naturaleza fsica original de las magnitudes a controlar en natu-
raleza electrnica. Estos rganos son los sensores transductores. La magnitud fsica entregada por el
transductor se llama seal.
3
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 4
Por lo tanto, una seal es una magnitud fsica de distinta naturaleza que la de la magnitud que se pre-
tende controlar, pero igual a ella (o proporcional) en cuanto a valores y a evolucin. Del mismo modo
que las magnitudes fsicas, las seales sern analgicas o digitales, continuas o discretas. El procesa-
dor digital trabaja con seales elctricas digitales discretas. En general, se realizan una serie de trans-
formaciones, tal como se esquematiza en la figura siguiente, para hacer llegar seales elctricas digi-
tales discretas al procesador.
Puede
encontrarse
informacin
ampliada sobre sea-
les y sistemas en los
documentos incluidos En la figura siguiente se resumen todos los procesos involucrados en un sistema de procesamiento digi-
en el disco proporcio- tal (en el ejemplo, de 8 bits). Cada uno de los bloques representa un subsistema electrnico encarga-
nado con el libro. do de realizar la funcin especificada.
1.1 Sistemas de
numeracin y
codificacin
Las seales elctricas digitales proporcionan infor-
macin al procesador digital, acerca de la magni-
tud fsica que se pretende controlar, mediante una
codificacin, que es una forma de asignar a cada
uno de los diferentes valores que puede tomar una
informacin, un smbolo o combinacin nica de
smbolos denominada cdigo, de acuerdo con unas
reglas de asignacin determinadas.
El sistema consta de diez smbolos que estn representados por los dgitos arbigos: {0,1,2,
3,4,5,6,7,8,9}.
Cada smbolo se representa por un trazado geomtrico fcil de realizar por el ser humano en un
papel o cualquier otra superficie, y tambin fcilmente representable en su mente.
4
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 5
La cantidad de smbolos distintos a recordar (diez) est dentro de las posibilidades memorsticas
1
del ser humano sin necesidad de grandes esfuerzos.
La codificacin de magnitudes se realiza por combinacin de smbolos segn unas reglas
sencillas.
Los cdigos resultantes de la codificacin son fcilmente interpretables por el ser humano.
El sistema de codificacin aporta valores aadidos que facilitan la manipulacin algebraica de
las magnitudes codificadas.
Existen otros cdigos o sistemas de numeracin, pero por uno u otro motivo no se adecan tan bien al
procesador humano como el sistema decimal, por lo que no son tan empleados. Por ejemplo:
Sistemas de numeracin chinos: el trazado geomtrico de los smbolos no es sencillo.
Sistemas mesopotmicos: constaban de muchos smbolos distintos (del orden de sesenta), por lo
que sera necesario un esfuerzo memorstico para recordarlos.
Sistema romano: la manipulacin algebraica es muy compleja.
Aunque parezca una trivialidad, no est de ms en este momento repasar el sistema de numeracin
decimal e interpretar perfectamente cada uno de los puntos de la descripcin del sistema (para evitar
el uso de lo definido en la propia definicin, las cantidades a representar numricamente se expresa-
rn en castellano).
{0,1,2,3,4,5,6,7,8,9}
trescientos veinticuatro
El sistema es posicional, lo que quiere decir que la contribucin de Cuatrocientos cuarenta y cuatro: 4 4 4
un dgito de un nmero depende de la posicin de ese dgito. Por
ejemplo, el dgito 4 puede contribuir con la cantidad cuatro, cuaren- contribuciones
ta o cuatrocientos al total segn donde est situado:
cuatrocientos cuarenta cuatro
La cantidad con la que contribuye cada dgito se calcula multipli-
cando el valor base del dgito por un peso atribuido a la posicin cuatrocientos cuarenta y cuatro
que ocupa:
valores base: 0: cero 1: uno 2: dos 3: tres
4: cuatro 5: cinco 6: seis 7: siete
8: ocho 9: nueve
5
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 6
Pesos: por ser base diez, el peso atribuido a la posicin n-sima es diez elevado a n. Las posi-
ciones se cuentan de derecha a izquierda, empezando por el cero. Adems, cada posicin
tiene un nombre: unidades, decenas, centenas, etc., que tiene relacin con el peso correspon-
diente a dicha posicin.
4 8 4 3
El clculo de la cantidad que representa un nmero puede hacerse por lo tanto con la ayuda de una
tabla como la que sigue:
Ahora que ya est definido el sistema, se puede emplear el propio sistema para representar las canti-
dades, de modo que la tabla anterior se puede representar ms cmodamente como sigue:
Aunque todo lo anterior pueda parecer una trivialidad, es necesario interpretar perfectamente los deta-
lles del sistema de numeracin decimal para aplicar los mismos razonamientos a otros tipos de siste-
mas de numeracin, que por ser novedosos puede que parezcan complicados, pero no tienen ms ni
menos complejidad que el sistema decimal. La nica diferencia es que el uso cotidiano le hace al ser
humano olvidar los detalles del sistema de numeracin decimal hasta el punto de usarlo de modo
mecnico, parecindole una trivialidad. Hecho que, por otro lado, es la prueba de lo bien adecuado
que es el sistema a las caractersticas del procesador: el ser humano.
Aunque esto es posible, desde el punto de vista de las posibilidades de la tecnologa electrnica no es
el mtodo ms adecuado, por razones tcnicas que no vienen al caso. Sin embargo, lo que s resulta
adecuado tecnolgicamente hablando, es hacer un procesador electrnico que trabaje, en vez de con
6
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 7
diez, con slo dos valores distintos de tensin. El sistema de numeracin que utilizara tal procesador
1
estara basado nicamente en dos smbolos, es decir, sera el sistema binario.
Cabra aqu la duda de si tal procesador, tecnolgicamente factible, podra tener algn inters prcti-
co a la hora de controlar procesos, por estar basado en un sistema de numeracin tal como el binario.
La respuesta evidente (ah estn los ordenadores) es que s. En este libro se estudiarn las bases de
tales procesadores y se ver justificada la respuesta.
De momento, y ya que es de inters por ser el sistema que emplean los procesadores electrnicos digi-
tales, es necesario estudiar el sistema binario. Se har de modo paralelo a como se hizo con el siste-
ma decimal (en este caso, para representar las cantidades se usar el castellano o tambin el sistema
decimal segn convenga).
En un nmero, cada dgito representa una cantidad, que es su contribucin a la cantidad total
representada por el nmero. La cantidad total representada por un nmero es la suma de las can-
tidades representadas por cada uno de los dgitos que forman el nmero.
El sistema es posicional, lo que quiere decir que la contribucin de un dgito de un nmero
depende de la posicin de ese dgito, igual que ocurra en el decimal
La cantidad con la que contribuye cada dgito se calcula multiplicando el valor base del dgito
por un peso atribuido a la posicin que ocupa.
valores base:
0: cero.
1: uno.
Pesos: por ser base 2, el peso atribuido a la posicin n-sima es 2 elevado a n. Las posicio-
nes se cuentan de derecha a izquierda, empezando por el cero.
1 1 0 1
Posicin 0: peso = 20 = 1
Posicin 1: peso = 21 = 2
Posicin 2: peso = 22 = 4
El bit de menos peso es el situado ms a la derecha, y tambin se llama bit menos significa-
tivo o LSB (del ingls: Least Significant Bit).
El bit de mayor peso es el situado ms a la izquierda, y tambin se llama bit ms significa-
tivo o MSB (del ingls: Most Significant Bit).
El clculo de la cantidad que representa un nmero puede hacerse con la ayuda de una tabla
como la que sigue:
7
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 8
Como se puede apreciar, el sistema binario y decimal siguen en esencia los mismos mecanismos; son
de hecho sistemas posicionales, en los que la nica diferencia es la base, 2 y 10 respectivamente. Sin
embargo, el sistema binario no parece muy adecuado para el procesador humano, ya que, como se ir
viendo con la prctica, cantidades no muy grandes requieren de bastantes dgitos para ser represen-
tadas en el sistema binario (por ejemplo: 174 en decimal es 10101110 en binario), y estas largas
secuencias de unos y ceros no son fciles de leer, memorizar e interpretar por parte del ser humano.
Por lo tanto, por un lado es necesario manejar el binario para poder disear procesadores electrnicos
digitales, pero por otro, el ser humano se maneja mejor en decimal. Ser necesario entonces conocer
tcnicas que permitan pasar fcilmente de un sistema al otro.
Adems, como se van a manejar cantidades en ambos sistemas, ser necesario establecer un mtodo
para diferenciar cundo un nmero est escrito en un sistema o en el otro. Por ejemplo, el nmero 1101
puede ser tanto binario como decimal. En los casos en que haya duda, se pondr al lado del nmero
un subndice indicando la base del sistema al que pertenece. Por ejemplo, cuando se quiera poner
1101 del sistema decimal, se pondr 110110, y cuando se quiera poner el 1101 del sistema binario, se
pondr 11012. En los casos en los que no exista duda no ser necesario poner el subndice.
8
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 9
dgitos pesos
1
Si el dgito es 0: cero. 0 0
1 2
1 4
1 8
0 0
1 32
0 0
1 128
suma ->
Sumar las cantidades que aparecen en la columna de los pesos. El resul- dgitos pesos
tado obtenido es el equivalente decimal del nmero binario que se que-
ra convertir. 0 0
1 2
1 4
1 8
0 0
1 32
0 0
1 128
suma -> 174
Por lo tanto: 101011102=17410
Paso de decimal a binario: con la ayuda de una tabla, dividir sucesivamente por 2 el nmero deci-
mal, y formar el nmero binario tomando el ltimo cociente como MSB y los restos de las divisiones
hasta llegar al primer resto que ser el LSB. Por ejemplo, pasar 174 a binario.
Dividir por 2 el nmero decimal que se desea convertir, anotando el resto de la divisin (que
ser 1 0 necesariamente).
1 7 4 2
1 6 8 7 cociente
1 4
1 4
0 resto 0
Tomar el cociente de la divisin anterior y volverlo a dividir por 2, anotando de nuevo el resto
de la divisin.
8 7 2
8 4 3 cociente
0 7
6
1 resto 1
9
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 10
Una vez acabadas todas las divisiones, tomar de la tabla el ltimo cociente como MSB, y continuar
construyendo el nmero binario aadiendo de izquierda a derecha, comenzando por el ltimo resto
obtenido, los dems restos de las divisiones tomados de abajo a arriba hasta llegar al LSB, que ser el
primero de los restos de la tabla.
Ejemplo resuelto 1
Pasar los siguientes nmeros decimales a binario: 57 y 325.
Solucin
cocientes restos cocientes restos
57 1 325 1
28 0 162 0
14 0 81 1
7 1 40 0
3 1 20 0
1 10 0
5 1
2 0
1
5710=1110012 32510=1010001012
Ejemplo resuelto 2
Pasar los siguientes nmeros binarios a decimal: 1110011 y 1010000111.
Solucin
dgitos peso dgitos pesos
1 1 1 1
1 2 1 2
0 0 1 4
0 0 0 0
1 16 0 0
1 32 0 0
1 64 0 0
suma 115 1 128
0 0
1 512
suma 647
11100112=11510 10100001112=64710
10
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 11
Una vez dominados estos mtodos de conversin, el ser humano puede estudiar y disear procesado-
1
res electrnicos digitales de forma sencilla empleando su sistema habitual que es el decimal. Cuando
tenga que pasarle informacin al sistema, simplemente tendr que convertir los nmeros decimales
con los que se trabaj al sistema binario que es el que entiende la mquina. Al revs, cuando tenga
que leer informacin proporcionada por la mquina, que vendr en binario, se podr traducir al deci-
mal para interpretarla de modo ms sencillo. En definitiva, en el trabajo con procesadores digitales,
los mtodos de conversin entre sistemas hacen que el decimal pueda ser una buena herramienta para
manipular las cantidades binarias con las que trabaja a mquina, sin el inconveniente de tener que
manejar largas listas de unos y ceros que inducen fcilmente a la confusin, y no son sencillas de
interpretar.
Aunque la conversin entre los sistemas binario y decimal no es nada dificultosa, no es inmediata, ya
que requiere hacer algunas cuentas. Con la prctica, estas cuentas se pueden llegar a hacer con ms
o menos soltura, pero no sern inmediatas, salvo si son pequeas cantidades. Por lo tanto, en usos
intensivos del binario, el decimal como herramienta alternativa de manipulacin de cantidades puede
no ser del todo adecuada, debido al trabajo de conversin que supone.
En un nmero, cada dgito representa una cantidad, que es su contribucin a la cantidad total
representada por el nmero.
La cantidad total representada por un nmero es la suma de las cantidades individuales repre-
sentadas por cada uno de los dgitos que forman el nmero.
El sistema es posicional, lo que quiere decir que la contribucin de un dgito del nmero depen-
de de la posicin de ese dgito. La cantidad con la que contribuye cada dgito se calcula multi-
plicando el valor base del dgito por un peso atribuido a la posicin que ocupa.
pesos: por ser base 16, el peso atribuido a la posicin n-sima es 16n. Las posiciones se cuen-
tan de derecha a izquierda, empezando por el cero.
11
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 12
4 D 9 A
En algunos casos, la notacin del subndice 16 indicador del sistema hexadecimal se susti-
tuye por la letra H o el smbolo $. De este modo, el nmero hexadecimal 4D9A se indicara
de cualquiera de las formas siguientes:
4D9A16 = 4D9AH = 4D9A$
No se debe confundir la H con un dgito hexadecimal, ya que stos slo llegan hasta la F.
Slo indica que se trata de un nmero hexadecimal, careciendo de todo valor numrico.
El clculo de la cantidad que representa un nmero puede hacerse por lo tanto con la ayuda de
una tabla como la que sigue:
Como se pudo observar, la conversin entre sistemas decimal y hexadecimal no es nada inmediata,
y slo se realizar cuando sea realmente necesario. El verdadero sentido del uso del hexadecimal es
en su aplicacin para manipular cantidades dadas en binario, por la sencillez del paso de un siste-
ma a otro.
Relacin hexadecimal-b
binario
Cada uno de los dgitos hexadecimales representa una cantidad del 0 al 15, que es su valor base. Estas
cantidades, expresadas en binario, pueden requerir hasta 4 bits, tal como se indica en la siguiente tabla:
12
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 13
La tabla anterior constituye el paso de hexadecimal a binario o viceversa para cantidades de 0 a 15.
1
El paso para cantidades mayores se hace en base a la tabla de equivalencias anterior de acuerdo con
los mtodos siguientes:
Aclaracin importante
Obsrvese que la conversin entre hexadecimal y binario se hace directamente por la relacin dgito
hexadecimal cuatro dgitos binarios. Este mtodo no se puede aplicar para la conversin entre bina-
rio y decimal, ya que dara resultados errneos. Es decir, para pasar un nmero decimal a binario, no
se puede pasar dgito a dgito, sino por el mtodo expuesto en su momento.
Paso de decimal a hexadecimal: con la ayuda de una tabla, dividir sucesivamente por 16 el nme-
ro decimal y formar el nmero hexadecimal tomando el ltimo cociente como dgito de mayor peso y
los restos de las divisiones hasta llegar al primer resto que ser el dgito de menor peso. Por ejemplo:
pasar 1986610 a hexadecimal.
Dividir por 16 el nmero decimal que se desea convertir, anotando el resto de la divisin (que
ser 15 o menos necesariamente).
1 9 8 6 6 1 6
1 6 1 2 4 1 cociente
3 8
3 2
6 6
6 4
2 6
1 6
1 0 resto=10
Tomar el cociente de la divisin anterior y volverlo a dividir por 16, anotando de nuevo el resto
de la divisin.
13
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 14
1 2 4 1 1 6
1 1 2 7 7 cociente
1 2 1
1 1 2
9 resto=9
Volver a tomar el cociente de la divisin anterior y volverlo a dividir por 16, anotando de
nuevo el resto de la divisin. Y as sucesivamente hasta que el cociente obtenido no se pueda
dividir ms por 16 (ser por lo tanto 15 o menos). El proceso de divisiones sucesivas por 16
se puede anotar en una tabla como la que se muestra seguidamente:
cocientes y posteriores dividendos restos
19866 10 resto de 19866/16 (primer resto)
cociente de 19866/16 1241 9 resto de 1241/16
cociente de 1241/16 77 13 resto de 77/16 (ltimo resto)
(ltimo cociente) cociente de 77/16 4
Una vez realizadas todas las divisiones, tomar las cantidades decimales del ltimo cociente
y de los restos obtenidos y transformarlas en un dgito hexadecimal, de acuerdo con la tabla
de valores base de los dgitos hexadecimales.
Los mtodos descritos para el cambio base entre los sistemas hexadecimal y binario son los siguientes:
Paso de hexadecimal a binario: obtener el nmero binario a partir de los equivalentes binarios de
cuatro bits de los dgitos hexadecimales. Por ejemplo: pasar 8C6EH a binario.
Sustituir cada uno de los dgitos del nmero hexadecimal por su equivalente binario de 4
bits.
dgitos 8 C 6 E
equivalente en binario de 4 bits 1000 1100 0110 1110
0 aadido a la izquierda para completar los cuatro bits
Formar el nmero binario buscado juntando los bits procedentes de cada dgito hexadecimal
en el mismo orden que stos.
dgitos 8 C 6 E
equivalente en binario de 4 bits 1000 1100 0110 1110
Paso de binario a hexadecimal: distribuir el nmero binario en grupos de cuatro bits comenzando por
1
el LSB, y sustituir cada grupo por su equivalente hexadecimal. Por ejemplo: pasar 101011011111012
a hexadecimal.
Comenzando por el LSB (por la derecha), distribuir el nmero binario a convertir en grupos
de cuatro bits. Si el ltimo grupo no llega a cuatro bits, se deja como est.
nmero binario 10101101111101
orden a seguir en el agrupamiento
grupos formados 10 1011 0111 1101
el ltimo grupo puede no ser de cuatro bits
A partir del nmero binario de cuatro bits de cada grupo, obtener el equivalente en hexade-
cimal, que estar formado por un nico dgito por grupo.
Nmero binario 10101101111101
orden a seguir en el agrupamiento
grupos formados 10 1011 0111 1101
equivalente hexadecimal 2 B 7 D
Formar el nmero hexadecimal buscado juntando los dgitos procedentes de cada grupo y en
el mismo orden que stos.
nmero binario 10101101111101
orden a seguir en el agrupamiento
grupos formados 10 1011 0111 1101
equivalente hexadecimal 2 B 7 D
Ejemplo resuelto 1
Pasar los siguientes nmeros hexadecimales a decimal y binario: F7 y D0C5.
Solucin
Paso a decimal:
15
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 16
Paso a binario:
dgitos F 7
equivalente en binario de 4 bits 1111 0111
F9H=111101112
dgitos D 0 C 5
equivalente en binario de 4 bits 1101 0000 1100 0101
D0C5H=11010000110001012
Ejemplo resuelto 2
Pasar los siguientes nmeros decimales a hexadecimal: 236 y 12587.
Solucin
cocientes restos hexadecimal cocientes restos hexadecimal
236 12 C 12587 11 B
14 E 786 2 2
49 1 1
3 3
23610=ECH 1258710=312BH
Ejemplo resuelto 3
Pasar los siguientes nmeros binarios a hexadecimal: 1110011 y 1010000110.
Solucin
nmero binario 1110011
grupos formados 111 0011
equivalente hexadecimal 7 3
nmero hexadecimal buscado 73
11100112=73$
nmero binario 1010000110
grupos formados 10 1000 0110
equivalente hexadecimal 2 8 6
nmero hexadecimal buscado 286
10100001102=286$
16
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 17
En un nmero, cada dgito representa una cantidad, que es su contribucin a la cantidad total
representada por el nmero.
La cantidad total representada por un nmero es la suma de las cantidades individuales repre-
sentadas por cada uno de los dgitos que forman el nmero.
El sistema es posicional, lo que quiere decir que la contribucin de un dgito del nmero depen-
de de la posicin de ese dgito. La cantidad con la que contribuye cada dgito se calcula multi-
plicando el valor base del dgito por un peso atribuido a la posicin que ocupa.
Tabla de valores base: dgito valor base dgito valor base dgito valor base dgito valor base
pesos: por ser base 8, el peso atribuido a la posicin n-sima es 8n. Las posiciones se cuentan de
derecha a izquierda, empezando por el cero.
4 7 0 3
El clculo de la cantidad que representa un nmero puede hacerse por lo tanto con la ayuda de una
tabla como la que sigue:
17
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 18
Relacin octal-b
binario
Cada uno de los dgitos octales representa una cantidad del 0 al 7, que es su valor base. Estas canti-
dades, expresadas en binario, pueden requerir de hasta 3 bits, tal como se indica en la siguiente tabla:
La tabla anterior constituye el paso de octal a binario o viceversa para cantidades de 0 a 7. El paso
para cantidades mayores se hace en base a la tabla de equivalencias anterior de acuerdo con los mto-
dos siguientes:
Aclaracin importante
Igual que en el caso del hexadecimal, la conversin entre octal y binario se hace directamente por la
relacin dgito octal tres dgitos binarios. De nuevo es necesario insistir en que este mtodo no se
puede aplicar para la conversin entre binario y decimal, ya que dara resultados errneos.
18
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 19
Paso de decimal a octal: con la ayuda de una tabla, dividir sucesivamente por 8 el nmero decimal,
1
y formar el nmero octal tomando el ltimo cociente como dgito de mayor peso y los restos de las
divisiones hasta llegar al primer resto que ser el dgito de menor peso. Por ejemplo, pasar 1986610
a octal.
Construccin del nmero octal comenzando por el ltimo cociente y siguiendo por los restos
tomados del ltimo al primero:
Como en el caso del hexadecimal, la conversin entre sistemas decimal y octal tampoco es inmediata,
y slo se har cuando sea realmente necesario. El verdadero sentido del uso del octal est en su aplica-
cin para manipular cantidades dadas en binario, debido a la sencillez del paso de un sistema al otro.
Los mtodos descritos para el cambio base entre los sistemas octal y binario son los siguientes:
Paso de octal a binario: obtener el nmero binario a partir de los equivalentes binarios de tres bits
de los dgitos octales. Por ejemplo: pasar 37258 a binario.
Sustituir cada uno de los dgitos del nmero octal por su equivalente binario de 3 bits.
dgitos 3 7 2 5
equivalente en binario de 3 bits 011 111 010 101
0 aadido a la izquierda para completar los tres bits
Formar el nmero binario buscado juntando los bits procedentes de cada dgito octal en el
mismo orden que stos.
dgitos 3 7 25
equivalente en binario de 3 bits 011 111 010 101
Por lo tanto, eliminando el cero ms a la izquierda, que no contribuye con ningn valor (igual que en
decimal, los ceros a la izquierda no cuentan), 37258=111110101012.
Paso de binario a octal: distribuir el nmero binario en grupos de tres bits comenzando por el LSB,
y sustituir cada grupo por su equivalente octal. Por ejemplo: pasar 10111111012 a octal.
Comenzando por el LSB (por la derecha), distribuir el nmero binario a convertir en grupos
de tres bits. Si el ltimo grupo no llega a tres bits, se deja como salga.
19
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 20
A partir del nmero binario de tres bits de cada grupo, obtener el equivalente en octal, que
estar formado por un nico dgito por grupo.
nmero binario 1011111101
Ejemplo resuelto 1
Pasar los siguientes nmeros octales a decimal y binario: 74 y 1564.
Solucin
Paso a decimal:
Paso a binario:
dgitos 7 4
equivalente en binario de 3 bits 111 100
748=1111002
20
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 21
dgitos 1 5
Introduccin a la electrnica digital
6 4
1
equivalente en binario de 3 bits 001 101 110 100
15648=11011101002
Ejemplo resuelto 2
Pasar los siguientes nmeros decimales a octal: 236 y 12587.
Solucin
cocientes restos cocientes restos
236 4 12587 3
29 5 1573 5
3 196 4
24 0
3
23610=3548 1258710=304538
Ejemplo resuelto 3
Pasar los siguientes nmeros binarios a octal: 1110011 y 1010000110.
Solucin
nmero binario 1110011
grupos formados 1 110 011
equivalente octal 1 6 3
nmero hexadecimal buscado 163
11100112=1638
Pero la existencia de esta herramienta no debe inducir a despreocuparse de hacer manualmente los
cambios de base y olvidar los detalles de los sistemas de numeracin estudiados. Al contrario, en un
principio debe emplearse como herramienta de apoyo en el estudio de los sistemas para la verifica-
cin de los resultados obtenidos manualmente, y slo cuando se dominen perfectamente las tcnicas,
emplearla como herramienta de trabajo.
21
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 22
Llegados a este punto, el estudiante ya debe comprender el sentido de la aplicacin y el uso del octal
y el hexadecimal. Como se pudo comprobar, el manejo de largas listas de unos y ceros no es sencillo y
se presta fcilmente a la confusin, mientras que pasando esas cifras a hexadecimal u octal, el mane-
jo es muy sencillo.
y escribiendo calc en la barra Abrir de la ventana Ejecutar que aparece y pulsando Aceptar.
Una vez realizada alguna de las instrucciones anteriores, aparecer la ventana de la aplicacin de la
calculadora de Windows. Esta calculadora tiene dos posibles apariencias: estndar o cientfica. La que
se necesita para trabajar con los diferentes sistemas de numeracin es la cientfica.
Si la versin que apareciese fuera la estndar, habra que cambiarla a la cientfica en la opcin:
Ver Cientfica
de la barra de mens de la calculadora, tal como se indica en la figura pequea. El aspecto de la cal-
culadora cientfica es el siguiente:
En pantalla aparecer el equivalente binario del nmero introducido, que para el 2B7DH es el
101011011111012.
22
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 23
El sistema decimal es adecuado para prcticamente todas las actividades contables del ser
humano .
Los sistemas octal y hexadecimal son adecuados para el trabajo con procesadores electrnicos
digitales.
El sistema binario descrito en los apartados anteriores no es el nico que se puede definir utilizando
slo dos smbolos. De hecho, existen ms cdigos binarios que tambin pueden ser empleados en los
procesadores electrnicos digitales, ya que para ello slo es necesario manejar los smbolos uno y cero.
Seguidamente se dar una breve relacin de otros sistemas de codificacin binarios.
El mtodo es semejante al empleado en los sistemas octal y hexadecimal, pero aplicado al decimal. Es
necesario tener siempre presente, que el nmero binario BCD no es el equivalente binario natural del
nmero decimal convertido.
Paso de decimal a BCD: obtener el nmero BCD a partir de los equivalentes binarios de cuatro bits
de los dgitos decimales. Por ejemplo: pasar 187910 a BCD.
23
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 24
Sustituir cada uno de los dgitos del nmero decimal por el equivalente binario de 4 bits.
dgitos 1 8 7 9
equivalente en binario de 4 bits 0001 1000 0111 1001
0 aadido a la izquierda para completar los cuatro bits
Formar el nmero BCD buscado juntando los bits procedentes de cada dgito decimal en el mismo
orden que stos.
dgitos 1 8 7 9
equivalente en binario de 4 bits 0001 1000 0111 1001
Paso de BCD a decimal: distribuir el nmero BCD en grupos de cuatro bits comenzando por el LSB,
y sustituir cada grupo por su equivalente decimal. Por ejemplo: pasar 10100101110101BCD a decimal.
Comenzando por el LSB (por la derecha), distribuir el nmero BCD a convertir en grupos de cua-
tro bits. Si el ltimo grupo no llega a cuatro bits, se deja como salga.
A partir del nmero binario de cuatro bits de cada grupo, obtener el equivalente en decimal, que
estar formado por un nico dgito por grupo. Si esto no ocurre, es que el nmero BCD est mal
construido, y realmente no se trata de BCD.
Formar el nmero decimal buscado juntando los dgitos procedentes de cada grupo y en el
mismo orden que stos.
Ejemplo resuelto 1
Pasar los siguientes nmeros decimales a BCD: 35 y 5907.
24
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 25
Solucin
Introduccin a la electrnica digital
1
dgitos 3 5
equivalente en binario de 4 bits 0011 0101
3510=110101BCD
dgitos 5 9 0 7
equivalente en binario de 4 bits 101 1001 0000 0111
590710=101100100000111BCD
Ejemplo resuelto 2
Pasar los siguientes nmeros BCD a decimal: 1110011 y 1010000110.
Solucin
nmero BCD 1110011
grupos formados 111 0011
equivalente decimal 7 3
nmero decimal buscado 73
1110011BCD=7310
nmero BCD 1010000110
grupos formados 10 1000 0110
equivalente decimal 2 8 6
nmero decimal buscado 286
1010000110BCD=28610
Segn el valor numrico asignado a cada smbolo alfanumrico, se pueden definir muchos sistemas de
codificacin distintos. En la prctica existen slo unos pocos, siendo el ms empleado el sistema, cdi-
go o tabla ASCII (American Standard Code for Information Interchange, cdigo estndar americano
para intercambio de informacin). En este sistema hay que distinguir entre el cdigo ASCII estndar y
el ASCII extendido.
ASCII estndar: codifica las cantidades empleando 7 bits, de modo que se representan 27=128
smbolos alfanumricos distintos. La tabla recoge los smbolos ms habituales y es nica en el
mundo.
ASCII extendido: codifica las cantidades empleando 8 bits, de modo que se representan 28=256
smbolos alfanumricos distintos. En los 128 primeros cdigos los smbolos coinciden con los de
la tabla ASCII estndar (el MSB del cdigo es 0). Los ltimos 128 cdigos (el MSB del cdigo es
1) recogen smbolos particulares de los alfabetos de diferentes pases, de modo que esta parte de
la tabla puede cambiar de un sitio a otro.
Adems del ASCII, existen otros sistemas de codificacin alfanumrica, como el EBCDIC, pero son
menos empleados. Las tablas de este y otros cdigos se pueden consultar en Internet.
25
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 26
2. Lgica proposicional
y lgebra de Boole
En este apartado se analizarn los aspectos relativos a los procesos de la inteligencia, de modo que se
sienten las bases para el desarrollo de procesadores electrnicos digitales que sean capaces de emu-
lar el razonamiento humano bsico, pudiendo realizar tareas de control.
2.1 La lgica
La lgica es la disciplina que estudia las condiciones bajo las que, a partir de ciertas premisas, se llega
correctamente a unas conclusiones; es decir, estudia los principios de los razonamientos correctos. No
se plantea la certeza o no de las premisas, sino la validez del razonamiento.
La lgica no garantiza que las conclusiones obtenidas sean siempre correctas, ya que algunas veces
las premisas de partida pueden ser errneas. Slo garantiza que en las conclusiones no surgen ms
errores que los posibles derivados de la falsedad de las premisas, no del razonamiento.
Proposicin
Un enunciado declarativo proposicional o simplemente proposicin es una frase en la que lo que se
declara puede ser verdadero o falso, pero no ambos a la vez.
Son proposiciones los siguientes enunciados declarativos, ya que son o verdaderos o falsos:
"Tres ms dos son cinco": la proposicin es verdadera.
"Cuatro ms seis son ocho": la proposicin es falsa.
"Maana va a llover": aunque hoy no se sepa, ser verdadera o falsa.
"Madrid est en Espaa y Roma en Francia": en conjunto se enunci una falsedad.
Los siguientes enunciados declarativos no son proposiciones, ya que de ninguno de ellos se puede
decir que sean verdaderos o falsos; son simplemente deseos, consejos o enumeraciones:
Valor lgico
Es el carcter de verosimilitud o falsedad de una proposicin.
En los ejemplos anteriores, la primera proposicin es verdadera, luego su valor es verdadero; la segun-
da es falsa, luego su valor es falso; la tercera ser verdadera o falsa, pero no se sabr hasta maana.
La cuarta es una proposicin que tiene una parte que es verdadera y otra falsa, pero tal como est
enunciada, en conjunto su valor lgico es falso.
Los valores lgicos se representan con los smbolos V para el verdadero y F para el falso.
26
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 27
Por ejemplo, p puede representar la proposicin "tres ms dos son cinco". Por lo tanto, se puede expre-
sar que el valor lgico de la proposicin es verdadero del modo siguiente:
pV
Conectivas
Una conectiva es un mecanismo para obtener nuevas proposiciones a partir de otras ya existentes por
combinacin de ellas.
En el lenguaje humano, las conectivas vienen representadas por las conjunciones: copulativas, adver-
sativas, disyuntivas, etc. Dada la riqueza y redundancia de los lenguajes, estas expresiones, formal-
mente distintas, muchas veces equivalen a una misma forma de combinacin lgica.
Las conectivas ms simples que se vern en esta unidad y el smbolo con el que se representan en el
lenguaje de la lgica, son las siguientes:
A partir del uso de las conectivas, las proposiciones se clasifican en dos tipos:
Proposiciones simples o atmicas: son las proposiciones que no estn compuestas a partir de otras
mediante conectivas. Ejemplo: "Madrid est en Espaa".
Proposiciones compuestas o moleculares: son las proposiciones que estn compuestas a partir de otras
mediante conectivas. Las proposiciones compuestas se descomponen en proposiciones atmicas o tam-
bin en otras proposiciones compuestas a su vez. En el ltimo nivel de descomposicin, las proposicio-
nes moleculares se descomponen en proposiciones atmicas. Ejemplo: "Madrid est en Espaa y Roma
est en Francia".
Expresin lgica
Es la representacin de una proposicin mediante las variables lgicas de las proposiciones que la
constituyen y las conectivas que las combinan. En el caso de proposiciones atmicas, su expresin lgi-
ca es simplemente la variable lgica que la representa. Ejemplos:
27
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 28
Signos auxiliares
Son signos empleados en la notacin de las relaciones lgicas para evitar las ambigedades que, a
veces, presenta la lengua hablada. Se trata de parntesis, corchetes y llaves que agrupan adecuada-
mente las variables lgicas dentro de una expresin. Ejemplo:
proposicin expresin
el reo va a la crcel p
el reo muere q
el reo paga una multa r
el reo va a la crcel y, muere o paga una multa p y (q o r)
el reo va a la crcel y muere, o paga una multa (p y q) o r
Aunque en la lengua hablada las dos ltimas proposiciones se expresen casi del mismo modo, expre-
san situaciones bien distintas, tal como se refleja en su expresin lgica. De ser ciertas en su conjunto
las anteriores proposiciones, en el primer caso, el reo va a ir fijo a la crcel, y all deber pagar una
multa si no quiere morir. En el segundo caso, el reo puede ir a la crcel y morir en ella, o bien librar-
se de todo pagando una multa. Como se ve, las situaciones son muy distintas.
Ley de la conectiva y: la proposicin compuesta con la conectiva y es verdadera cuando las dos
proposiciones conectadas son verdaderas simultneamente, y falsa cuando cualquiera de las dos
o las dos son falsas.
Por ejemplo, cuando uno dice "la sal es dulce y el agua moja", en conjunto dice una falsedad, ya que
una de las proposiciones conectadas por y es falsa.
Del mismo modo, el razonamiento que interpreta la conectividad o da lugar a otra ley:
Ley de la conectiva o: la proposicin compuesta con la conectiva o es verdadera cuando alguna
de las proposiciones conectadas, o las dos, son verdaderas, y falsa cuando las dos son falsas.
Por ejemplo, cuando uno dice "la sal es dulce o el agua moja", en conjunto dice una verdad, ya que al
menos una de las proposiciones conectadas por o es verdadera.
Anlogamente, para cada una de las conectivas, tanto las vistas hasta ahora como otras, existe una
regla de funcionamiento derivada del raciocinio humano, constituyendo las reglas o leyes bsicas de
la lgica.
Adems, existen otras relaciones lgicas ms complejas que permiten deducir el valor lgico de las
proposiciones compuestas, a partir de sus proposiciones constituyentes. Estas relaciones se clasifican
tambin en leyes y mtodos deductivos.
Mediante la aplicacin de las leyes de la lgica se puede evaluar el valor lgico en conjunto de una
proposicin compuesta.
Reglas de precedencia
Son reglas que definen el orden en el que se tienen que interpretar las relaciones lgicas dentro de una
expresin en la que aparecen varias conectivas. Ante una posible duda en la interpretacin, las conec-
tivas de mayor precedencia son las que se aplican primero. El orden de precedencia de las conectivas
lgicas es el siguiente:
28
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 29
Es correcto: No es correcto:
p o q y no r p o q y no r
1 1 2
no r)
(n (poq) ( no r )
2 3
[ q y ( no r ) ] (p o q) y ( no r )
3
p o [q y ( no r ) ]
El empleo de parntesis permite aclarar o alterar los rdenes de precedencia, haciendo que se eval-
en en primer lugar los trminos entre parntesis.
Las reglas de precedencia en la lgica funcionan igual que en el clculo aritmtico con las operacio-
nes suma, multiplicacin, etc., por lo que su aplicacin no debe presentar mayores problemas.
Tabla de verdad
Una tabla de verdad es un mtodo para expresar la relacin lgica entre una proposicin compuesta
y sus proposiciones constituyentes. En una parte de la tabla se disponen las proposiciones constituyen-
tes, debajo de las que se recogen todas sus posibles combinaciones de valores lgicos. En la otra parte
de la tabla se dispone la proposicin compuesta, debajo de la que se indica el valor lgico que toma
para cada una de las combinaciones de valores de las proposiciones constituyentes.
Por ejemplo, una proposicin representada por la expresin p o q. La tabla de verdad que describe la
relacin entre la proposicin compuesta y p y q ser:
p q poq
F F F
F V V
V F V
V V V
Debajo de p y q se recogieron todas las posibles combinaciones de valores lgicos que pueden presen-
tar; a saber, las dos falsas, una verdadera y otra falsa, y viceversa, y las dos verdaderas. Al lado de
cada combinacin se indica el valor lgico que le corresponde a la expresin p o q de acuerdo con las
leyes de la lgica.
La anterior tabla de verdad constituye un buen mtodo de expresar el enunciado de la ley de la conec-
tiva o, mejor que el lenguaje habitual empleado anteriormente para definirla.
Del mismo modo, cada una de las leyes elementales de la lgica se puede expresar por medio de su
tabla de verdad, como se muestra a continuacin:
29
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 30
Expresiones equivalentes
Son expresiones equivalentes aquellas formalmente distintas, pero que conducen al mismo resultado
lgico para todos los valores de sus proposiciones constituyentes. Por lo tanto, dos expresiones son
equivalentes si tienen la misma tabla de verdad. Por ejemplo, ms adelante se podr comprobar que
la expresin no (p y q) es equivalente a no p o no q.
Ejemplo resuelto 1
Identificar los siguientes elementos lgicos de la proposicin enunciada:
Solucin
Proposiciones elementales constituyentes de la proposicin y asignacin de variables lgicas: del
enunciado se deduce que hay dos proposiciones elementales ,por lo que se definirn dos va-
riables:
pyq
Tabla de verdad de la expresin: dado que hay dos variables, las posibles combinaciones de valo-
res lgicos para ellas son cuatro: las dos verdaderas, las dos falsas, una verdadera y otra falsa, y
viceversa. El valor lgico de la expresin para cada combinacin se obtiene directamente de la
ley de la conectiva y, segn se muestra en la tabla:
p q pyq
F F F
F V F
V F F
V V V
Llegados a este punto, se podra continuar con el estudio del lenguaje de la lgica y de las leyes y
mtodos que incluye. Sin embargo, no se van estudiar ms elementos de este lenguaje que los ya
expuestos en los apartados anteriores, ya que en el mbito de la electrnica se emplea un lenguaje
ms generalista para el tratamiento de los elementos de la lgica, tal como es el lgebra de Boole, que
se ver en el apartado siguiente.
30
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 31
En el caso a tratar aqu, resulta que la estructura de la lgica proposicional se adapta perfectamen-
te a las caractersticas del lgebra de Boole. Por lo tanto, todas las conclusiones y resultados que pro-
porciona el lgebra de Boole pueden ser aplicados directamente a la lgica. Adems, el lenguaje
empleado en el lgebra de Boole se adapta muy bien para su aplicacin a los procesadores electr-
nicos digitales.
La adaptacin entre la lgica, el lgebra de Boole y la electrnica digital es tan fuerte, que constan-
temente se mezclan conceptos y trminos de unas con otras. En este sentido, a continuacin se
expondr el lgebra de Boole en sus propios trminos, pero algunos se irn sustituyendo por otros
que pertenecen, a la electrnica o a la lgica, segn es prctica comn en el mbito de la electrni-
ca digital.
Definicin formal
Sea un conjunto B de elementos cualesquiera, sobre el que se definen dos operaciones internas. Para
representar estas operaciones se emplearn los smbolos "+" y "", por lo que a la primera operacin
se le llamar suma booleana y a la segunda producto booleano. No se deben de confundir estas ope-
raciones con la suma y el producto aritmtico empleados habitualmente.
Por ser operaciones internas, a cada par de elementos de B se les hace corresponder otro elemento de
B. Esto se expresa como sigue:
+
B xB B xB
(a,b) (a + b) B (a,b) (a b) B
El conjunto B con las operaciones definidas es un lgebra de Boole si se cumplen las siguientes con-
diciones o postulados:
31
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 32
Un elemento neutro para el producto, denominado elemento uno "1", tal que:
a1=a
Los elementos 0 y 1 son nicos en el conjunto B y sirven para todos sus elementos, es decir, son uni-
versales en B.
La equivalencia anterior refleja el hecho de que la lgica proposicional es una entidad concreta que se
corresponde con el modelo matemtico del lgebra de Boole. En efecto:
El conjunto B
Es el conjunto de valores lgicos que puede tomar una proposicin lgica, es decir:
B={V, F}
Como en todo conjunto booleano tiene que haber un 0 y un 1, V y F se identifican necesariamente con
estos elementos. Como se ver ms adelante, F se corresponde con el 0 y V con el 1, segn las leyes
de la lgica.
En el mbito de la electrnica se habla de los valores lgicos 0 y 1, lo que es un abuso del lenguaje
por ser una mezcla de trminos, ya que 0 y 1 son valores booleanos, pero esto no supone ningn pro-
blema ni debe inducir a confusin.
Variables booleanas
Son las proposiciones o variables lgicas, que representan o toman uno de los dos valores lgicos V (1)
o F (0).
En el mbito de la electrnica, los trminos variable booleana y variable lgica se emplean indistin-
tamente.
32
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 33
Las operaciones
Introduccin a la electrnica digital
1
Suma booleana: se corresponde con la conectiva o, de modo que se puede establecer la
siguiente equivalencia:
poq Q p+q
En el mbito de la electrnica, los trminos producto lgico, suma lgica, y producto booleano y suma
booleana, se emplean indistintamente.
El orden de precedencia en las operaciones booleanas es el mismo que en sus equivalentes lgicos, y
el mismo que en la aritmtica, por lo que no debe suponer ningn problema aplicarlo correctamente:
tiene mayor precedencia la negacin, seguida del producto y finalmente la suma. Los parntesis sir-
ven para alterar este orden.
Los postulados
Segn las leyes de la lgica y con la ayuda de las tablas de verdad no es difcil comprobar que se cum-
plen. En efecto:
Propiedad conmutativa:
Por la ley de la conectiva o
p+qpoq=qopq+p
Propiedad distributiva:
Segn las leyes de la lgica se cumple la igualdad
p ( q + r ) p y ( q o r ) = ( p y q ) o ( p y r ) ( p q) + ( p r )
Axioma del complemento: existe complemento para cualquier elemento de B, que en este
caso slo tiene dos elementos, de modo que:
0=1 ya que: 0+0=0+1 F o V = V 1
y: 00=01 F y V = F 0
De lo anterior se puede relacionar la existencia del complemento booleano con la conectiva lgi-
ca no, de forma que el resultado de aplicar la conectiva es el complemento booleano. Es decir, son
equivalentes:
no p p
Como se acaba de ver, la lgica de proposiciones es un lgebra de Boole. En adelante, todas las
manipulaciones de conceptos lgicos se harn a partir de las herramientas que proporciona el lge-
33
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 34
bra de Boole, que de cara a la electrnica digital son ms adecuadas que las del lenguaje formal de
la lgica.
La tarea de la simplificacin empleando los teoremas del lgebra de Boole no tiene una regla fija, y
segn los teoremas que se apliquen se puede llegar a una u otra expresin. Alcanzar la ms simplifi-
cada es cuestin de experiencia en la eleccin del teorema ms adecuado para aplicar en cada caso,
adems de que se puede llegar de diferentes formas al mismo resultado.
Ejemplo resuelto 1
Simplificar la siguiente expresin:
abc+abc
34
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 35
Solucin
Introduccin a la electrnica digital
1
Sacando factor comn ab en ambos trminos:
a b c + a b c = a b (c + c )
Ejemplo resuelto 2
Simplificar la siguiente expresin:
abc+abc +abc+a
Solucin
Al primer y segundo trminos se les puede aplicar el resultado del ejemplo 1, y aplicando la ley
de absorcin a los tercer y cuarto trminos se tiene:
[a b c + a b c ] = a b (a bc+a)=a
[a b c + a b c ] = ( a b c + a ) = a b + a
f : (BxBx...xB) B
f
( a 1 , a 2 , . . . , a n ) f ( a 1, a 2, . . . , a n) B
Dicho de otro modo, una funcin lgica o booleana es la forma matemtica de representar una rela-
cin por la que a una proposicin se le asigna un valor lgico a partir de los valores lgicos de otra u
otras proposiciones.
Por ejemplo, cuando se dice hay que subir la temperatura si hace fro, el valor lgico de la proposi-
cin hay que subir la temperatura depende del valor lgico de la proposicin hace fro. Si hace
fro es verdadero entonces tambin ser cierto que hay que subir la temperatura, mientras que si
hace fro es falso, entonces hay que subir la temperatura tambin es falso.
35
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 36
Expresin: la expresin lgica por la que se combinan las variables para asignarle un valor a la
funcin es la expresin de la funcin. En las expresiones aparecern las variables de la funcin
combinadas por operadores lgicos o booleanos.
Por ejemplo, cuando se dice hay que abrir el portn si hay coches en la entrada o si pulsan el interrup-
tor, se pueden identificar las siguientes proposiciones, representadas por sendas variables lgicas:
Del enunciado se deduce que el valor lgico de f depende de los valores lgicos de a y b, por lo tanto,
segn se defini anteriormente:
f funcin
a, b variables
La expresin lgica de la funcin, por la que se define la dependencia entre f y a y b, ser la siguiente:
En lo que sigue, en general ya slo se emplear esta ltima forma de expresin booleana abandonan-
do la forma lgica, aunque por abuso del lenguaje se le llame tambin expresin lgica a la expresin
booleana.
a b f=a+b
0 0 0
0 1 1
1 0 1
1 1 1
Como en este ejemplo, de ahora en adelante, en las tablas de verdad se van a emplear valores boole-
anos (1 y 0) abandonando en la notacin los valores lgicos (V y F).
El mtodo de interpretar las combinaciones de valores lgicos como nmeros binarios permite
obtener fcilmente todas las posibles combinaciones que hay que recoger en una tabla de ver-
dad. Para ello no hay ms que disponer las variables en un determinado orden, y contar en bina-
rio desde todos los bits a 0 hasta todos a 1, imaginando que cada variable representa un bit.
36
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 37
medio del nmero binario asociado a ella, o ms cmodamente, por su equivalente en decimal
1
o hexadecimal. As por ejemplo, por entrada 2 de la tabla del ejemplo anterior se entiende la fila
que tiene la combinacin a=1 y b=0, ya que 102=210.
Tipos de funciones
Funciones primitivas
Las funciones lgicas ms sencillas que se pueden definir se llaman funciones primitivas y se cons-
truyen a partir de las conectivas lgicas. De este modo se puede hablar de la funcin y, de la fun-
cin o y de la funcin no. Adems de stas, tambin se puede definir la funcin identidad, que es
una funcin igual a la nica variable de la que depende: f (a)=a.
En el mbito de la electrnica digital es costumbre llamar a las funciones primitivas por su nom-
bre en ingls. En la tabla siguiente se muestran las funciones primitivas, su nombre en ingls entre
parntesis y la tabla de verdad que define su funcionamiento.
funciones primitivas
funcin identidad negacin (NOT) suma o o (OR) producto o y (AND)
a f =a a f =a a b f =a+b a b f =ab
0 0 0 1 0 0 0 0 0 0
0 1 1 0 1 0
1 1 1 0 1 0 1 1 0 0
1 1 1 1 1 1
Funciones elementales
Son funciones que se definen a partir de relaciones lgicas sencillas que aparecen con frecuencia
en el mbito de la electrnica digital. Una de ellas es por ejemplo la funcin o exclusivo o suma
exclusiva, que representa la situacin lgica en la que la funcin es verdadera cuando exclusiva-
mente slo una de las dos variables de las que depende es verdadera, y falsa cuando las dos varia-
bles son falsas o las dos son verdaderas.
Esta funcin refleja situaciones como por ejemplo la siguiente: en un cajero automtico, el pago
es correcto si se entrega un billete de 10 o dos de 5. Las posibles situaciones son: si no se entre-
ga ningn billete (caso 1 de la tabla) el pago no es correcto. Si slo se entrega un billete de 10
(caso 2) el pago s es correcto. Si se entregan dos billetes de 5 (caso 3) el pago tambin es correc-
to. Finalmente, si se entrega un billete de 10 y tambin se entregan dos billetes de 5 (caso 4),
en total se entregan 20 por lo que el pago no es correcto, ya que slo se deban de entregar 10.
La funcin lgica o exclusivo o suma exclusiva tiene su propio signo u operador, que para el lge-
bra de Boole es el siguiente:
a o exclusivo b Q a b
suma exclusiva
ab=ab+ab
ab=ab+ab
Otras funciones elementales se definen a partir de las funciones primitivas combinadas con el ope-
rador de la negacin, de modo que se obtienen las funciones y negado, o negado, etc.
37
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 38
En el mbito de la electrnica digital tambin es costumbre llamar a las funciones elementales por
su nombre en ingls. En la tabla siguiente se muestran las funciones elementales, su nombre en
ingls entre parntesis y la tabla de verdad que define su funcionamiento.
funciones elementales
suma o o exclusivo (XOR) o negado (NOR) y negado (NAND) suma o o exclusivo negado
(XNOR)
a b f=ab a b f=a+b a b f=ab a b f=ab
0 0 0 0 0 1 0 0 1 0 0 1
0 1 1 0 1 0 0 1 1 0 1 0
1 0 1 1 0 0 1 0 1 1 0 0
1 1 0 1 1 0 1 1 0 1 1 1
Funciones compuestas
Son funciones que definen relaciones ms complejas que las primitivas y las elementales, y estn
formadas por combinacin de funciones primitivas o elementales, por ejemplo f (a,b,c ) =a b c.
En el diseo de sistemas electrnicos digitales, el primer paso siempre consiste en identificar la fun-
cin o funciones lgicas que se definen a partir del enunciado que describe el sistema a disear. En la
identificacin de las funciones se seguirn los siguientes pasos:
Identificar la funcin.
Identificar las variables de la funcin.
Identificar la relacin lgica que define la expresin de la funcin o bien su tabla de verdad.
Ejemplo resuelto 1
Identificar la funcin y las variables que se definen en el siguiente enunciado, y determinar su expre-
sin o tabla de verdad:
"Un jurado formado por tres miembros emite un fallo favorable o desfavorable sobre cierta cuestin. El
fallo emitido se hace por mayora de los votos emitidos por cada uno de sus miembros".
Solucin
En este caso las funciones y las variables no se encuentran explcitamente en el enunciado, sino que
hay que interpretarlo como sigue (tambin son posibles otras interpretaciones):
Funcin: la nica proposicin que se puede encontrar que depende de otras es el fallo emitido
por el jurado, ya que depende de lo que vota cada uno de sus miembros. Por lo tanto, la funcin
se puede enunciar como sigue:
f el fallo emitido es favorable
Este enunciado puede ser verdadero o falso segn los votos de los miembros del jurado.
Variables: la funcin anterior depende de los votos de los tres miembros del jurado, luego habr
tres variables, que pueden ser enunciadas como sigue:
a el primer miembro vot favorablemente
b el segundo miembro vot favorablemente
c el tercer miembro vot favorablemente
las tres variables pueden ser verdaderas o falsas cada una de ellas, segn haya sido realmente
el voto de los miembros del jurado.
38
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 39
(Observacin: tngase en cuenta que cabran otras interpretaciones, como por ejemplo tomar
1
como funcin "el fallo es desfavorable", o como variable "el primer miembro vot desfavorable-
mente", que tambin sern verdaderas o falsas. En cualquier caso, la interpretacin queda a la
eleccin de cada uno, y slo ser necesario mantener el criterio a lo largo de toda la resolucin.)
Relacin lgica: en este caso, encontrar la expresin que relaciona la funcin con las variables
no es sencillo a partir del enunciado. Sin embargo, s es posible hacer una tabla de verdad para
la funcin, planteando todos los casos posibles de votos del jurado, y el valor de la funcin (fallo
emitido) para cada uno de los casos. Puesto que son tres miembros, y cada uno slo tiene dos
opciones de voto: favorable (variable=1 por ser verdadera) o desfavorable (variable=0 por ser
falsa), las posibles combinaciones de votos son ocho. Para obtener las ocho combinaciones se
seguir el mtodo de generar las entradas de la tabla de verdad contando en binario con tres bits
segn se muestra en la siguiente tabla:
entradas a b c f (a,b,c)
0 0 0 0 0 fallo desfavorable: hubo mayora absoluta de votos desfavorables
1 0 0 1 0 fallo desfavorable: hubo 2 votos desfavorables contra 1 favorable
2 0 1 0 0 fallo desfavorable: hubo 2 votos desfavorables contra 1 favorable
3 0 1 1 1 fallo favorable: hubo 2 votos favorables contra 1 desfavorable
4 1 0 0 0 fallo desfavorable: hubo 2 votos desfavorables contra 1 favorable
5 1 0 1 1 fallo favorable: hubo 2 votos favorables contra 1 desfavorable
6 1 1 0 1 fallo favorable: hubo 2 votos favorables contra 1 desfavorable
7 1 1 1 1 fallo favorable: hubo mayora absoluta de votos favorables
Ejemplo resuelto 2
La alarma de una casa dispone de dos sensores V1 y V2 en sendas ventanas, y un sensor P en una
puerta. Los sensores se activan cuando se abren las ventanas o la puerta respectivamente. Adems, la
alarma dispone de un terminal de control A que sirve para poner la alarma en estado activo de vigi-
lancia o bien desactivarla. El sistema presenta un terminal de salida S para indicar situaciones de esta-
do de alarma, que se deber activar cuando la puerta o alguna ventana se abran, estando la alarma
en estado activo de vigilancia.
Determinar las funciones, las variables y la relacin lgica que las relaciona.
Solucin
Funcin: la nica funcin que hay en el enunciado es el estado del terminal de salida S, que
puede ser activo o no, y que depende del estado de apertura de las ventanas y de la puerta, y de
si el sistema est en estado de vigilancia. Si S=1 quiere decir que est activo y por lo tanto hay
situacin de alarma, y si S=0 significa que no est activo, y por lo tanto no hay estado de alarma.
Variables: las variables de las que depende la funcin son V1, V2, P y A, es decir, del estado acti-
vo o no de los sensores y del estado de vigilancia del sistema. Por ejemplo, si V1=1, el sensor de
la ventana est activo y si V1=0 no est activo.
Relacin lgica: en este caso se puede deducir la expresin lgica directamente del enunciado
del problema:
S ( A,V 1 ,V 2 ,P ) = A ( V 1 + V 2 + P )
Minterm o trmino cannico producto: es un producto donde aparecen multiplicadas todas las
variables, directamente o negadas, una y slo una vez. Por ejemplo, dada una funcin f (a,b,c,d):
39
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 40
Maxterm o trmino cannico suma: es una suma donde aparecen todas las variables, directa-
mente o negadas, una y slo una vez. Por ejemplo, dada una funcin f(a,b,c,d):
Expresiones cannicas: de entre todas las expresiones equivalentes que puede tener una fun-
cin, siempre se pueden encontrar un par de ellas que se llaman expresiones cannicas y que
tienen las siguientes caractersticas:
Expresin cannica suma: est formada nicamente por suma de minterms. Por ejemplo:
Expresin cannica producto: est formada nicamente por producto de maxterms. Por
ejemplo:
f (x , y , z ) = (x y z ) + (x y z ) + (x y z )
Para los minterms: suponer que las variables sin negar representan al 1 y las negadas al 0.
Por ejemplo: (abc ) se refiere a la entrada 1012=510.
Para los maxterms: suponer que las variables sin negar representan al 0 y las negadas al 1.
Por ejemplo: (a + b + c ) se refiere a la entrada 0102=210.
La tabla se forma asignando los siguientes valores a la funcin, segn cul sea su expresin ca-
nnica:
Expresin suma: valor 1 en las entradas referidas por los minterms, y valor 0 en las dems
entradas.
Expresin producto: valor 0 en las entradas referidas por los maxterms, y valor 1 en las
dems entradas.
Expresin reducida de la funcin: en relacin con lo anterior, existe una notacin que permite
representar abreviadamente la expresin de una funcin cuando viene dada en forma cannica:
Expresin cannica suma: se indica con el smbolo del operador sumatorio:
Expresin cannica producto: se indica con el smbolo del operador productorio:
Al pie del operador se indicar el nmero de variables de las que depende la funcin.
En el interior del operador se disponen los nmeros en decimal o hexadecimal de las entra-
das de la tabla referidas por los minterms o maxterms segn el caso. Por ejemplo:
f (a,b,c,d ) = a b c d + a b c d + a b c d + a b c d + a b c d = 4 (3,4,7,A,D )
g (x,y,z ) = (x + y + z ) (x + y + z ) (x + y + z ) = 3 (6,3,0)
40
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 41
f (a,b,c,d ) = a b c d + a b c d + a b c d + a b c d + a b c d + a b c d
Solucin
Notacin reducida:
f (a,b,c,d ) = a b c d + a b c d + a b c d + a b c d + a b c d + a b c d
cambiar variables por 1 y negadas por 0 v v v v v
por ser expresin suma 0001 0011 0100 1001 1010 1111
v v v v v v
1 3 4 9 A F
f (a,b,c,d ) = 4 (1,3,4,9,A,F )
Tabla de verdad:
entradas a b c d f (a,b,c,d)
0 0 0 0 0
1 0 0 0 1 1
2 0 0 1 0
3 0 0 1 1 1
4 0 1 0 0 1
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1 1
A 1 0 1 0 1
B 1 0 1 1
C 1 1 0 0
D 1 1 0 1
E 1 1 1 0
F 1 1 1 1 1
41
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 42
entradas a b c d f (a,b,c,d)
0 0 0 0 0 0
1 0 0 0 1 1
2 0 0 1 0 0
3 0 0 1 1 1
4 0 1 0 0 1
5 0 1 0 1 0
6 0 1 1 0 0
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 1
A 1 0 1 0 1
B 1 0 1 1 0
C 1 1 0 0 0
D 1 1 0 1 0
E 1 1 1 0 0
F 1 1 1 1 1
Ejemplo resuelto 2
Obtener la expresin cannica suma y producto de la funcin dada por la tabla de verdad del ejerci-
cio 1.10 del apartado de autoevaluacin de este tema.
Solucin
La tabla de verdad es la siguiente, a partir de la que se pueden obtener los minterms (los 1's) o los
maxterms (los 0's):
Ejemplo resuelto 3
Obtener una expresin cannica de la siguiente funcin:
f (a,b,c,) = a b + a b +a c + a c
42
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 43
Solucin
Introduccin a la electrnica digital
1
En este caso, la funcin ya casi est expresada como suma de productos no cannicos. Aplicando De
Morgan al tercer trmino, ya est completamente desarrollada:
f (a,b,c,) = a b + a b +a c + a c = a b + a b +a + c + a c
Para que cada trmino sea cannico se aadir la variable que falta del modo siguiente:
f (a,b,c,) = ab + ab + a + c + ac
falta c v falta c v faltan b y c v faltan a y b v falta b v
f (a,b,c,) = a b (c + c )+ a b (c + c ) + a (b + b ) (c + c ) + c (a + a ) (b + b ) + a c (b+ b )
Obsrvese que multiplicar por trminos del tipo (x+x ) no cambia nada ya que por el postulado del com-
plemento es igual que multiplicar por 1, lo que no altera los valores segn el postulado de los neutros.
f (a,b,c,) = a b (c + c )+ a b (c + c ) + a (b + b ) (c + c ) + c (a + a ) (b + b ) + a c (b+ b ) =
= a b c + a b c + a b c + a b c + a b c + a b c + a b c + a b c + c a b + c a b +
c a b + c a b + a c b + a c b
Finalmente, aplicando la ley de idempotencia (x+x=x) para eliminar los trminos repetidos, se obtie-
ne la expresin cannica:
f (a,b,c,d ) = a b c + a b c + a b c + a b c + a b c + a b c + a b c = 3(0,1,2,3,4,6,7)
Como ya se pudo intuir a partir de los ejercicios desarrollados hasta el momento, los sistemas de con-
trol ms sencillos, como el ejemplo del portn, se pueden representar mediante funciones lgicas, esta-
bleciendo las siguientes relaciones:
P (C,I) = C + I
Esta funcin lgica est presente en la mente del controlador del portn cuando se trata de un ser
humano. En el caso de querer sustituirlo por un sistema electrnico digital, se debern de llevar a cabo
los siguientes procesos:
43
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 44
Disponer de sensores que proporcionen las seales elctricas que representen a los valores lgi-
cos de las variables C y I. Es decir, un sensor dar por ejemplo 5V cuando haya coches en la entra-
da (C=1) y 0V cuando sea falso que los haya (C=0). Otro sensor podr dar 5V cuando pulsen el
interruptor (I=1) y 0V cuando sea falso que lo pulsen (I=0). Las seales obtenidas pueden deno-
minarse como seal C y seal I respectivamente, para mejor identificar su sentido.
Disponer de un motor actuador que mueva la puerta, controlado por una lnea de tensin. Si en
la lnea de control se aplica una seal de por ejemplo 5V al motor, la puerta se abrir, y si se apli-
can 0V se cerrar (porque tira de ella un resorte, por ejemplo). La seal que controla la puerta
puede denominarse seal P, de modo que se identifique con la funcin de control P.
Disponer de un circuito electrnico que a partir de las seales C y I genere la seal P con los valo-
res adecuados segn la relacin que define la funcin lgica de control. En este caso, el circuito
electrnico deber de funcionar como la funcin lgica suma o OR. Tal circuito existe, se llama
puerta OR y funciona segn la tabla de la funcin OR:
A partir del enunciado o especificaciones del sistema de control, identificar las variables y las
funciones.
A partir del enunciado o especificaciones, construir la tabla de verdad.
A partir de la tabla de verdad, obtener una expresin cannica de la funcin.
A partir de la expresin cannica, obtener una expresin simplificada, empleando los teoremas
del lgebra de Boole.
Una vez obtenida la funcin simplificada que define el sistema de control, implementarla circui-
talmente con las puertas y circuitos que proporciona la electrnica digital.
En las siguientes unidades se describirn otras tcnicas que simplifican el proceso de diseo descrito
anteriormente.
Obsrvese que los valores lgicos de las variables no dependen del propio sistema, sino que vienen
dados por el entorno exterior y por lo tanto, en principio, pueden tomar cualquier valor. Por otro lado,
los valores que debe tomar la funcin son los que tiene que generar el sistema de control, y por lo tanto
es responsabilidad del sistema que la funcin tome los valores adecuados en todas las circunstancias.
Tampoco hay que olvidar que detrs de cada seal digital hay una variable lgica y por lo tanto una
proposicin, aunque a veces sea difcil de identificar o enunciar en el lenguaje hablado habitual.
En las siguientes unidades se estudiarn los diferentes circuitos electrnicos digitales que permiten la
implementacin de funciones lgicas, y permiten por lo tanto el desarrollo de controladores electrni-
cos digitales. Tambin se estudiarn diferentes mtodos para la obtencin de las funciones lgicas que
definen los sistemas de control.
44
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 45
La electrnica digital siempre trabaja con dos niveles distintos de tensin para representar el 0 y el 1
lgicos. Los valores concretos de tensin dependen de la tecnologa con que se trabaje. Segn el dise-
ador elija, arbitrariamente por la conveniencia en cada caso, la relacin entre los valores lgicos y los
niveles de tensin, se hablar de dos tipos de lgica en la electrnica digital:
lgica positiva: el 1 est representado por el nivel mayor de tensin y el 0 por el nivel menor de
tensin.
lgica negativa: el 0 est representado por el nivel mayor de tensin y el 1 por el nivel menor de
tensin.
3. Autoevaluacin
Ejercicio 1.1
Pasar los siguientes nmeros hexadecimales a decimal y binario: E8, D1A, FE0, CACA, CAFE, DE5E0.
Ejercicio 1.2
Pasar los siguientes nmeros decimales a hexadecimal: 256, 3687, 12584, 698574, 12234842.
Ejercicio 1.3
Pasar los siguientes nmeros binarios a hexadecimal: 1100110, 1001111101, 110101010101,
111100000001110, 111110001101010100011110.
Ejercicio 1.4
Pasar los siguientes nmeros octales a decimal y binario: 2654, 5752, 25467, 2101445.
Ejercicio 1.5
Pasar los siguientes nmeros decimales a octal: 256, 3687, 12584, 698574, 12234842.
Ejercicio 1.6
Realizar los cambios de base de los ejercicios anteriores empleando la calculadora de Windows.
Ejercicio 1.7
Pasar los siguientes nmeros decimales a BCD: 38, 568, 785, 1111, 5566.
Ejercicio 1.8
Pasar los siguientes nmeros BCD a decimal: 1100110, 10110010110, 111100110000111,
10000000110000001.
Ejercicio 1.9
Simplificar la siguiente expresin:
(a+b+c)(a+b+c)(a+b+c)(a+c)(a+c)
45
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 46
Ejercicio 1.10
Identificar la funcin y las variables que se definen en el siguiente enunciado, y determinar su expre-
sin o tabla de verdad:
"Una familia de cuatro miembros: Andrs, Beatriz, Carlos y Diana, votan para ir a cenar a uno de dos
posibles restaurantes: Casa Pepe o Casa Juan. El restaurante elegido es el vota-do por mayora. En caso
de empate, el restaurante elegido ser el que vot Beatriz".
Ejercicio 1.11
Obtener la tabla de verdad de la siguiente funcin, y expresarla en notacin reducida:
f(a,b) = ab+ab
Ejercicio 1.12
Obtener una expresin cannica de la siguiente funcin:
f (a,b,c ) = a (b +c ) + c
Ejercicio 1.13
Obtener una expresin cannica de la siguiente funcin:
f (a,b) = a b
46