You are on page 1of 46

L gica digital y prog_ U 01-final.

qxp 28/02/2007 18:42 Pgina 1

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

1 Lgica digital y microprogramable

1. Seales y sistemas de control.


Codificacin de magnitudes
El instrumento por el que los seres humanos son capaces de adaptar el entorno a sus necesidades es
la tecnologa. sta permite a los humanos controlar y actuar sobre el entorno para cambiar las condi-
ciones fsicas o circunstancias del mismo por otras ms convenientes para su supervivencia o para su
bienestar.

Actualmente la principal tecnologa de control de procesos la proporciona la electrnica digital. Pero,


sea cual sea la tecnologa de control empleada, no hay que olvidar que lo que se pretende, en un prin-
cipio, es sustituir la presencia de un ser humano por una mquina (el avance de la tecnologa permi-
tir adems ampliar y superar las capacidades del ser humano en algunos aspectos). Es necesario, por
lo tanto, estudiar las caractersticas de los procedimientos de control para poder emularlos mediante
mquinas. En estos procedimientos intervienen en general tres elementos fundamentales, como se
muestra en la figura siguiente:

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.

El cuerpo humano posee estos tres elementos, que son


los sentidos, la inteligencia y los brazos y piernas res-
pectivamente.

Una mquina que pretenda sustituir al hombre en las


tareas de control, tambin deber de tener estos tres
elementos, y para su desarrollo ser necesario conocer
la naturaleza de las magnitudes fsicas que se desean
controlar para disear los sensores y actuadores.
Tambin ser necesario conocer la naturaleza de los
procesos bsicos de la inteligencia humana para dise-
ar el procesador. En el estudio de la naturaleza de las
magnitudes fsicas, stas se pueden clasificar aten-
diendo a tres criterios:

Valor de la medida de la magnitud.


Magnitudes analgicas: la magnitud observable puede tomar cualquier valor dentro de un mar-
gen fsicamente razonable. Magnitudes analgicas son: la luminosidad, la intensidad elctrica,
el sonido, la velocidad, etc.
Magnitudes digitales: la magnitud observable no puede tomar cualquier valor dentro del mar-
gen fsicamente razonable, sino slo ciertos valores permitidos, habitualmente cantidades ente-
ras. Magnitudes digitales son: nmero de perforaciones en un tubo, nmero de barriles de petr-
leo producidos, nmero de bombillas encendidas en un rbol de Navidad, etc.

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

Naturaleza fsica de la magnitud.


Introduccin a la electrnica digital
1
Teniendo en cuenta la naturaleza fsica del fenmeno que genera la magnitud observable, las
magnitudes se clasifican en:
Electromagnticas
Mecnicas
Trmicas
Hidrulicas
Neumticas
etc.

En las figuras siguientes se muestran representaciones grficas de algunos ejemplos de los diferentes
tipos de magnitudes que se pueden encontrar.

Ejemplo 1: magnitud analgica continua. Ejemplo 2: magnitud digital continua.

Ejemplo 3: magnitud analgica discreta. Ejemplo 4: magnitud digital discreta.

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

1 Lgica digital y microprogramable

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.

La codificacin empleada en los procesadores digi-


tales es el sistema binario. A continuacin se des-
cribir este sistema, as como otros que tambin se
utilizan en el diseo de los procesadores digitales.

1.1.1 El sistema de numeracin decimal


En el caso del procesador humano, un sistema de codificacin de magnitudes digitales adecuado a su
naturaleza, y universalmente el ms empleado, es el sistema de numeracin decimal. Las caractersti-
cas que hacen adecuado este sistema son:

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

Introduccin a la electrnica digital

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).

Descripcin del sistema decimal


Es un sistema de numeracin de base diez: esto quiere decir que el sistema consta de diez sm-
bolos, denominados dgitos.

{0,1,2,3,4,5,6,7,8,9}

Las cantidades se codifican mediante un dgito o combinacin de varios, obteniendo un nmero.


tres: 3
veinticuatro: 24
ciento noventa y ocho: 198
En un nmero, cada dgito representa una cantidad, que es su contri- Trescientos veinticuatro: 3 2 4
bucin a la cantidad total representada por el nmero. La cantidad
total representada por un nmero es la suma de las cantidades repre- contribuciones
sentadas por cada uno de los dgitos que forman el nmero:
trescientos veinte cuatro


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

1 Lgica digital y microprogramable

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

Posicin cero: unidades: peso = diezcero = uno

Posicin uno: decenas: peso = diezuno = diez

Posicin dos: centenas: peso = diezdos = cien

Posicin tres: unidades de millar: peso = dieztres = mil

El clculo de la cantidad que representa un nmero puede hacerse por lo tanto con la ayuda de una
tabla como la que sigue:

nmero posicin valor base peso contribucin: suma


valor base x peso
cero cinco uno cinco
uno dos diez veinte
75025 dos cero cien cero setenta y cinco
tres cinco mil cinco mil mil veinticinco
cuatro siete diez mil setenta mil

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:

nmero posicin valor base peso contribucin: suma


valor base x peso
0 5 1 5x1=5
1 2 10 2x10=20
75025 2 0 100 0x100=0 75025
3 5 1000 5x1000=5000
4 7 10000 7x10000=70000

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.

1.1.2 El sistema de numeracin binario (binario natural)


Dado lo bien que funciona el sistema decimal para el ser humano, se podra pensar en fabricar un pro-
cesador electrnico que trabaje con el mismo sistema. Para ello, habra que definir 10 smbolos elctri-
cos que representaran a los dgitos. Podran ser 10 tensiones distintas, por ejemplo: 0V, 1V, 2V, ..., 9V. Si
el procesador dispusiera de 8 hilos por ejemplo, y en cada uno se pudiera aplicar cualquiera de esos
voltajes, el sistema ya podra representar elctricamente cualquier nmero del 00000000 al 99999999.

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

Introduccin a la electrnica digital

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).

Descripcin del sistema binario


El binario es un sistema de numeracin de base 2: esto quiere decir que el sistema consta de 2
smbolos, tambin denominados dgitos o bits (del ingls: BInary digiTS).
{0,1}

Las cantidades se codifican mediante un dgito o combinacin de varios, obteniendo un nmero


de uno o ms bits.
uno: 1
tres: 11
veintitrs: 10111
cincuenta y dos : 110100

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

Posicin tres: peso = 23 = 8

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

1 Lgica digital y microprogramable

nmero posicin valor base peso=2posicin contribucin suma


valor base x peso
0 1 20=1 1x1=1
1 0 21=2 0x2=0
1101 2 1 22=4 1x4=4 13
3 1 23=8 1x8=8
binario decimal

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.

Paso de binario a decimal


La descripcin del sistema binario expuesta anteriormente constituye un mtodo para la conversin
de nmeros en sistema binario a nmeros en sistema decimal. El mtodo utiliza una tabla rpida
basada en la anterior, en la que se disponen en una columna los dgitos del nmero binario, y a su
lado los pesos correspondientes a los bits 1. Sumando los pesos se obtiene el nmero decimal equi-
valente.

Paso de decimal a binario


Existen varios mtodos, todos equivalentes, para realizar esta conversin. El que aqu se expone se
basa en divisiones sucesivas por 2: dividir sucesivamente por 2 el nmero decimal, y formar el nme-
ro binario tomando el ltimo cociente como MSB y los restos de las divisiones hasta llegar al primer
resto que ser el LSB.

1.1.3 Ejercicios de cambio de base entre los sistemas


decimal y binario
Los mtodos descritos para el cambio base entre los sistemas decimal y binario son los siguientes:

Paso de binario a decimal: empleando una tabla, disponer en dgitos pesos


una columna los dgitos del nmero binario, y a su lado los pesos 0
correspondientes a los bits 1. Sumando los pesos se obtiene el 1
nmero decimal equivalente. Por ejemplo, pasar 10101110 a 1
decimal. 1
Disponer los dgitos del nmero binario en la columna dgi- 0
tos, empezando por el LSB en la fila superior, y acabando 1
por el MSB en la fila inferior. 0
1
En la columna pesos, disponer junto a cada dgito, las
siguientes cantidades decimales: suma ->

8
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 9

Si el dgito es 1: el peso que le corresponde segn su posicin.


Introduccin a la electrnica digital

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

Volver a tomar el cociente de la divisin anterior y volverlo a dividir por 2, anotando de


nuevo el resto de la divisin, y as sucesivamente hasta que el cociente obtenido no se pueda
dividir ms por 2 (ser por lo tanto 1 0). El proceso de divisiones sucesivas por 2 se puede
anotar en una tabla como la que se muestra a continuacin:
cocientes y posteriores dividendos restos
174 0 resto de 174/2 (primer resto)
cociente de 174/2 87 1 resto de 87/2
cociente de 87/2 43 1 resto de 43/2

9
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:42 Pgina 10

1 Lgica digital y microprogramable

cocientes y posteriores dividendos restos


cociente de 43/2 21 1 resto de 21/2
cociente de 21/2 10 0 resto de 10/2
cociente de 10/2 5 1 resto de 5/2
cociente de 5/2 2 0 resto de 2/2 (ltimo resto)
(ltimo cociente) cociente de 2/2 1

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.

cocientes y posteriores dividendos restos


174 0 LSB
87 1
43 1
21 1
10 0
5 1
2 0
MSB 1
10101110

Por lo tanto: 17410 = 101011102

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

Introduccin a la electrnica digital

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.

1.1.4 El sistema de numeracin hexadecimal


El sistema hexadecimal, sistema de numeracin posicional de base 16, al igual que el decimal, permi-
te trabajar con cantidades de un modo ms sencillo para el ser humano, que el binario. Adems pre-
senta la ventaja de que la conversin entre hexadecimal y binario no requiere hacer ningn tipo de
operaciones, siendo prcticamente inmediato. El nico inconveniente es la falta de costumbre en el uso
del hexadecimal por parte del humano, problema que se resuelve con la prctica.

Descripcin del sistema hexadecimal


Se trata de un sistema de numeracin de base 16: esto quiere decir que el sistema consta de 16
smbolos o dgitos.
{0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}
Obsrvese que los dgitos elegidos para formar el sistema hexadecimal son los 10 dgitos arbi-
gos, igual que en el sistema decimal, y para los 6 dgitos que faltan se eligieron por comodidad
unos smbolos ya conocidos y que son las 6 primeras letras del alfabeto, que aqu actan como
nmeros.
Las cantidades se codifican mediante un dgito o combinacin de varios, obteniendo un nmero.
tres: 3.
diez: A.
veinticuatro: 18.
dos mil novecientos cuarenta y dos: B7E

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.

valores base: 0: cero 1: uno 2: dos 3: tres


4: cuatro 5: cinco 6: seis 7: siete
8: ocho 9: nueve A: diez B: once
C: doce D: trece E: catorce F: quince

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

1 Lgica digital y microprogramable

4 D 9 A

Posicin cero: peso = 160 = 1

Posicin uno: peso = 161 = 16

Posicin dos: peso = 162 = 256

Posicin tres: peso = 163 = 4096

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:

nmero posicin dgito valor base peso=16posicin contribucin suma


en decimal valor base x peso
0 A 10 1 10x1=10
1 9 9 16 9x16=144
4D9A 2 D 13 256 13x256=3328 19866
3 4 4 4096 4x4096=16384
hexadecimal decimal

Por lo tanto, 4D9A16 = 1986610

Paso de hexadecimal a decimal


Al igual que ocurra con el binario, la descripcin del sistema hexadecimal ya proporciona un mtodo
para convertir de hexadecimal a decimal, utilizando una tabla como la del ejemplo anterior.

Paso de decimal a hexadecimal


El mtodo propuesto para la conversin de decimal a hexadecimal es similar al utilizado en el paso de
decimal a binario y se basa en divisiones sucesivas por 16: dividir sucesivamente por 16 el nmero
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

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:

hexadecimal binario hexadecimal binario hexadecimal binario hexadecimal binario


0 0000 1 0001 2 0010 3 0011
4 0100 5 0101 6 0110 7 0111
8 1000 9 1001 A 1010 B 1011
C 1100 D 1101 E 1110 F 1111

12
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 13

Introduccin a la electrnica digital

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:

Paso de hexadecimal a binario


Obtener el nmero binario a partir de los equivalentes binarios de cuatro bits de los dgitos hexadecima-
les, sustituyendo cada uno de los dgitos del nmero hexadecimal por su equivalente binario de 4 bits.

Paso de binario a hexadecimal


Esta conversin sigue el procedimiento inverso a la conversin anterior: distribuir el nmero binario en
grupos de cuatro bits comenzando por el LSB, y sustituir cada grupo por su equivalente hexadecimal

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.

1.1.5 Ejercicios de cambio de base entre los sistemas


hexadecimal y decimal o binario
Los mtodos descritos para el cambio base entre los sistemas hexadecimal y decimal son los siguientes:
Paso de hexadecimal a decimal: con la ayuda de una tabla, sumar los valores base de cada dgito
hexadecimal multiplicados por los pesos correspondientes a la posicin que ocupan. Por ejemplo,
pasar 4D9A16 a decimal.

nmero posicin dgito valor base peso=16posicin contribucin suma


en decimal valor base x peso
0 A 10 1 10x1=10
1 9 9 16 9x16=144
4D9A 2 D 13 256 13x256=3328 19866
3 4 4 4096 4x4096=16384
hexadecimal decimal

Por lo tanto, 4D9A16=1986610

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 Lgica digital y microprogramable

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.

cocientes y posteriores dividendos restos dgitos hexadecimales


19866 10 A primer resto
1241 9 9
77 13 D ltimo resto
ltimo cociente 4 4

Construir el nmero hexadecimal tomando como dgito de mayor peso el de ms abajo de la


tabla (el que viene del ltimo cociente), y continuando hacia arriba (del ltimo resto al pri-
mer resto).
cocientes y posteriores dividendos restos dgitos hexadecimales
19866 10 A
1241 9 9
77 13 D
4 4
4D9A

Por lo tanto, 1986610=4D9AH

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

nmero binario buscado 1000110001101110

Por lo tanto, 8C6E16=10001100011011102


14
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 15

Introduccin a la electrnica digital

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

nmero hexadecimal buscado 2B7D

Por lo tanto, 101011011111012=2B7DH.

Ejemplo resuelto 1
Pasar los siguientes nmeros hexadecimales a decimal y binario: F7 y D0C5.

Solucin
Paso a decimal:

nmero dgito valor base en decimal peso valor base x peso


7 7 1 7
F7 F 15 16 240
suma: 247
F7H=24710

nmero dgito valor base en decimal peso valor base x peso


5 5 1 5
C 12 16 192
D0C5 0 0 256 0
D 13 4096 53248
suma: 53445
DC05H=5355610

15
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 16

1 Lgica digital y microprogramable

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$

1.1.6 El sistema de numeracin octal


Del mismo modo que el sistema hexadecimal, el sistema de numeracin octal permite manejar canti-
dades binarias de forma sencilla, permitiendo conversiones entre los sistemas prcticamente inmedia-
tas. No es tan empleado como el hexadecimal ya que los nmeros obtenidos a partir de un nmero
binario resultan ms largos, en general, en el sistema octal, y por lo tanto el hexadecimal permite com-
primir en menos espacio el nmero binario transformado. Sin embargo, dado que tambin se utiliza,
conviene conocerlo.

16
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 17

Descripcin del sistema octal


Introduccin a la electrnica digital
1
Se trata de un sistema de numeracin de base 8: esto quiere decir que el sistema consta de 8 sm-
bolos o dgitos.
{0,1,2,3,4,5,6,7}
Obsrvese que los dgitos elegidos para formar el sistema octal son slo los 8 primeros dgitos
arbigos. Por lo tanto, en un nmero octal no puede aparecer el dgito 8 ni el 9.

Las cantidades se codifican mediante un dgito o combinacin de varios, obteniendo un nmero.


tres: 38.
diez: 108.
veintisis: 328.
dos mil novecientos cuarenta y dos: 55768.

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

0 cero 1 uno 2 dos 3 tres


4 cuatro 5 cinco 6 seis 7 siete

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

Posicin cero: peso = 80 = 1

Posicin uno: peso = 81 = 8

Posicin dos: peso = 82 = 64

Posicin tres: peso = 83 = 512

El clculo de la cantidad que representa un nmero puede hacerse por lo tanto con la ayuda de una
tabla como la que sigue:

nmero posicin dgito valor base peso=8posicin contribucin suma


en decimal valor base x peso
0 3 3 1 3x1=3
1 0 0 8 0x8=0
4703 2 7 7 64 7x64=448 2499
3 4 4 512 4x512=2048
octal decimal

Por lo tanto, 47038=249910

17
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 18

1 Lgica digital y microprogramable

Paso de octal a decimal


Igual que ocurra en el hexadecimal, la descripcin del sistema octal ya proporciona un mtodo para
convertir de octal a decimal, utilizando una tabla como la del ejemplo anterior.

Paso de decimal a octal


El mtodo propuesto para la conversin de decimal a octal es semejante a los empleados en el paso de
decimal a hexadecimal o de decimal a binario, y se basa en divisiones sucesivas por 8: dividir sucesi-
vamente por 8 el nmero decimal 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.

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:

octal binario octal binario octal binario octal binario


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

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:

Paso de octal a binario


Obtener el nmero binario a partir de los equivalentes binarios de tres bits de los dgitos octales, sus-
tituyendo cada uno de los dgitos del nmero octal por su equivalente binario de 3 bits.

Paso de binario a octal


Esta conversin sigue el procedimiento inverso a la conversin anterior: distribuir el nmero binario en
grupos de tres bits comenzando por el LSB, y sustituir cada grupo por su equivalente octal.

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.

1.1.7 Ejercicios de cambio de base entre los sistemas octal


y decimal o binario
Los mtodos descritos para el cambio base entre los sistemas octal y decimal son los siguientes:
Paso de octal a decimal: con la ayuda de una tabla, sumar los valores base de cada dgito octal
multiplicados por los pesos correspondientes a la posicin que ocupan. Por ejemplo, pasar 47038 a
decimal.

nmero posicin dgito valor base peso=8posicin contribucin suma


en decimal valor base x peso
0 3 3 1 3x1=3
1 0 0 8 0x8=0
4703 2 7 7 64 7x64=448 2499
3 4 4 512 4x512=2048
octal decimal
Por lo tanto, 47038=249910

18
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 19

Introduccin a la electrnica digital

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 de la tabla de cocientes y restos:


cocientes y posteriores dividendos restos
19866 2 resto de 19866/8 (primer resto)
cociente de 19866/8 2483 3 resto de 2483/8
cociente de 2483/8 310 6 resto de 310/8
cociente de 310/8 38 6 resto de 38/8 (ltimo resto)
(ltimo cociente) cociente de 38/8 4

Construccin del nmero octal comenzando por el ltimo cociente y siguiendo por los restos
tomados del ltimo al primero:

cocientes y posteriores dividendos restos


19866 2
2483 3
310 6
38 6
4
46632

Por lo tanto, 1986610=466328

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

nmero binario buscado 011111010101

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

1 Lgica digital y microprogramable

nmero binario 1011111101


orden a seguir en el agrupamiento


grupos formados 1 011 111 101
el ltimo grupo puede no ser de tres bits

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

orden a seguir en el agrupamiento



grupos formados 1 011 111 101

equivalente octal 1 3 7 5
Formar el nmero octal buscado juntando los dgitos procedentes de cada grupo y en el
mismo orden que stos.
nmero binario 1011111101
orden a seguir en el agrupamiento


grupos formados 1 011 111 101

equivalente octal 1 3 7 5

nmero octal buscado 1375

Por lo tanto, 10111111012=13758.

Ejemplo resuelto 1
Pasar los siguientes nmeros octales a decimal y binario: 74 y 1564.

Solucin

Paso a decimal:

nmero dgito valor base en decimal peso valor base x peso


4 4 1 4
74 7 7 8 56
suma: 60
748=6010

nmero dgito valor base en decimal peso valor base x peso


4 4 1 4
6 6 8 48
1564 5 5 64 320
1 1 512 512
suma: 884
15648=88410

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

nmero binario 1010000110




grupos formados 1 010 000 110

equivalente hexadecimal 1 2 0 6

nmero hexadecimal buscado 1206


10100001102=12068

1.1.8 Herramientas informticas para el trabajo con


los sistemas de numeracin
Los sistemas operativos de la familia Windows ofrecen en sus ltimas versiones una calculadora que
permite trabajar en los sistemas de numeracin estudiados anteriormente, y que puede facilitar enor-
memente el trabajo con sistemas digitales binarios a la hora de hacer operaciones y conversiones entre
sistemas de numeracin.

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.

La calculadora de Windows tiene un funcionamiento semejante a una calculadora tradicional de sobre-


mesa.

21
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 22

1 Lgica digital y microprogramable

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.

1.1.9 Utilizacin de la calculadora de Windows para


la realizacin de cambios de base
La calculadora de Windows se encuentra normalmente en el siguiente punto de los mens del sistema:

Inicio Programas Accesorios Calculadora


O bien, eligiendo:
Inicio Ejecutar

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:

A partir de este punto, el fun-


cionamiento de la calculadora
es como el de cualquier otra,
con la particularidad de que
trabajar en el sistema de
numeracin seleccionado en la
barra correspondiente. En el
ejemplo de la figura siguiente
se puede ver que el sistema
seleccionado es el decimal.

Para seleccionar otro sistema


de numeracin simplemente
hay que pulsar con el puntero del ratn en el circulito blanco al lado del sistema deseado.

Para hacer una conversin de un sistema a otro se seguir el


siguiente procedimiento:

Seleccionar el sistema de numeracin de origen del nmero


a convertir. Por ejemplo, para convertir 2B7D16 a binario,
comenzar seleccionado hexadecimal (Hex). Obsrvese que al
seleccionar el sistema hexadecimal, los dgitos de la A a la F
que estn en la parte inferior de la calculadora, cambiaron
del color gris que tenan en el sistema decimal al color azul.
El color gris indicaba que esos dgitos no estaban permitidos en el sistema decimal, y el color
azul quiere decir que ahora s estn permitidos en el sistema hexadecimal

Introducir el nmero a convertir. En el ejemplo, escribir 2B7D.

Seleccionar el sistema de numeracin al que se quiere convertir el nmero introducido. En el


ejemplo, seleccionar binario (Bin). Obsrvese que al seleccionar binario, todos los dgitos cam-
bian a gris salvo el cero y el uno, que son los nicos permitidos en este sistema.

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

1.2 Otros sistemas de codificacin


Introduccin a la electrnica digital
1
En los apartados anteriores se describieron varios sistemas de codificacin de cantidades numricas,
adecuados cada uno a la naturaleza del procesador que los emplea y a la tarea en la que se van a
utilizar.

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 es adecuado para la realizacin de procesadores electrnicos digitales, ya que


al tener tan solo dos smbolos distintos, su representacin elctrica mediante dos tensiones dis-
tintas es sencilla empleando la tecnologa electrnica.

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.

1.2.1 Sistemas binarios numricos


A partir de los dgitos 1 y 0 se establecen diferentes mtodos de codificacin de las cantidades para
obtener diferentes sistemas de numeracin binarios.

Binario natural: es el descrito en los apartados anteriores.

BCD: permite trabajar fcilmente con cantidades decimales en binario.

Binario mdulo-signo: permite representar cantidades enteras positivas y negativas.

Complemento a uno: permite representar cantidades enteras positivas y negativas.

Complemento a dos: permite representar cantidades enteras positivas y negativas.

Punto fijo: permite representar cantidades fraccionarias positivas y negativas.

Punto flotante: permite representar cantidades fraccionarias positivas y negativas.

Cdigo Gray, Jhonson, etc.

De los anteriores, se describir, por ahora, el sistema BCD.

Sistema de codificacin numrica binaria BCD (Binary Coded Decimal)


El sistema BCD (Binario Codificado Decimal), como su nombre sugiere, es un sistema de codificacin
binario para el decimal. Esto es, dado un nmero decimal, se sustituye cada dgito decimal por su
equivalente binario de 4 bits. Y al revs, el nmero binario en BCD se pasa a decimal formando gru-
pos de 4 bits comenzando por el LSB y sustituyendo cada grupo por el dgito decimal equivalente.

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.

1.2.2 Ejercicios de cambio de base entre los


sistemas decimal y BCD
Los mtodos descritos para el cambio base entre los sistemas decimal y BCD son los siguientes:

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

1 Lgica digital y microprogramable

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

nmero BCD buscado 1100001111001

Por lo tanto, 187910=1100001111001BCD.


Obsrvese que se despreciaron los ceros a la izquierda, ya que carecen de valor.

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.

nmero BCD 10100101110101


orden a seguir en el agrupamiento


grupos formados 10 1001 0111 0101
el ltimo grupo puede no ser de cuatro bits

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.

nmero BCD 10100101110101


orden a seguir en el agrupamiento


grupos formados 10 1001 0111 0101

equivalente decimal 2 9 7 5

Formar el nmero decimal buscado juntando los dgitos procedentes de cada grupo y en el
mismo orden que stos.

nmero BCD 10100101110101


orden a seguir en el agrupamiento


grupos formados 10 1001 0111 0101

equivalente decimal 2 9 7 5

nmero decimal buscado 2975

Por lo tanto, 10100101110101BCD=297510.

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

1.2.3 Sistemas para codificacin alfanumrica


Mediante estos sistemas se pueden representar o codificar smbolos alfanumricos (letras, signos de
puntuacin, dgitos, etc.). Estos sistemas de codificacin se basan en la asignacin de un valor num-
rico a cada smbolo alfanumrico de acuerdo con una tabla. De este modo, un texto escrito se puede
representar como una secuencia de nmeros. Si el valor numrico se representa en binario, el sistema
permite manejar textos con un procesador electrnico digital.

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

1 Lgica digital y microprogramable

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.

2.2 La lgica proposicional


La lgica proposicional estudia los procesos deductivos ms simples de la lgica humana, como son
los razonamientos basados en los enunciados declarativos proposicionales, que se explican en los
siguientes apartados.

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:

Estudiad un poco ms.


Haz el bien y no mires a quin.
Vivan los novios.
Una caja.

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

Variable lgica o proposicional


Introduccin a la electrnica digital
1
Es la representacin simblica de una proposicin. Tradicionalmente, los smbolos empleados para
representar las proposiciones son las letras minsculas p, q, r, etc. Las variables proposicionales se
emplean por comodidad, para no tener que escribir todo el enunciado de la proposicin.

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:

conectiva Castellano smbolo ejemplo


V V V
conjuncin Y llueve y hace sol llueve hace sol p q
p=llueve
disyuncin O V llueve o hace sol llueve V hace sol pVq
q=hace sol
negacin no no llueve llueve p

Otras conectivas pueden consultarse en textos especficos de lgica. De ahora en adelante, no se


emplearn ms los smbolos lgicos de las conectivas por no complicar la notacin, y se emplear la
notacin lingstica en castellano y, o y no.

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:

proposicin expresin comentario


Madrid est Espaa p Es una proposicin atmica
Roma est en Francia q Tambin es una proposicin atmica
Roma no est en Francia no q Es una proposicin compuesta
Madrid est en Espaa y Roma no est en Francia p y no q Es otra proposicin compuesta
Madrid est en Espaa y Roma no est en Francia r = p y no q Es una proposicin compuesta a la que se asigna
la variable lgica r para simplificar su expresin
Los mapas mienten s Es una proposicin atmica
Madrid est en Espaa y Roma no est en Francia, r o s = p y no q o s Es una proposicin compuesta
o los mapas mienten

27
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 28

1 Lgica digital y microprogramable

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.

Leyes de la lgica y mtodos deductivos


A partir de los conceptos y elementos descritos anteriormente, la lgica proposicional estudia los meca-
nismos del razonamiento humano, y los clasifica en reglas o leyes. Por ejemplo, el razonamiento lgi-
co frente a la conectiva y es que la proposicin compuesta con esta conectiva es verdadera cuando las
dos proposiciones conectadas son verdaderas simultneamente, y falsa cuando cualquiera de las dos
o las dos son falsas. Esto entonces, da la lugar a la siguiente ley:

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

orden de precedencia conectiva


Introduccin a la electrnica digital
1
mayor no
y
menor o

As por ejemplo, en la expresin p o q y no r, primero se evala no r, luego q y el resultado de no r,


y luego p o el resultado de la evaluacin anterior. Lo que no sera correcto es evaluar primero p o q, y
luego el resultado evaluarlo con y no r.

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

1 Lgica digital y microprogramable

Ley de la conectiva y Ley de la conectiva o Ley de la negacin


p q pyq poq no p
F F F F V
F V F V V
V F F V F
V V V V F

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.

2.2.1 Ejercicios de identificacin de los elementos lgicos


de una proposicin

Ejemplo resuelto 1
Identificar los siguientes elementos lgicos de la proposicin enunciada:

Proposiciones elementales constituyentes de la proposicin, y asignacin de variables lgicas.

Expresin lgica de la proposicin.

Tabla de verdad de la expresin.

Proposicin enunciada: la temperatura es inferior a 20C y hay combustible en el depsito.

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:

p la temperatura es inferior a 20C.


q hay combustible en el depsito.

Expresin lgica de la proposicin: en el enunciado se ve que la conectiva empleada es y, luego


la expresin ser:

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

2.3 El lgebra de Boole


Introduccin a la electrnica digital
1
El lgebra de Boole es una teora matemtica que trata sobre las propiedades de un determinado tipo
de conjuntos que cumplen ciertas caractersticas o requisitos. Como toda matemtica, es una teora
abstracta, que puede ser aplicada a cualquier situacin real concreta que se ajuste a las condiciones
de la teora.

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

donde a y b son elementos de B, o variables booleanas que representan elementos de B.

El conjunto B con las operaciones definidas es un lgebra de Boole si se cumplen las siguientes con-
diciones o postulados:

Postulado 1. Propiedad conmutativa


Para cualquier par de elementos (a,b) de B se verifica:
Conmutativa respecto de la suma:
a+b=b+a

Conmutativa respecto del producto:


ab=ba

Postulado 2. Propiedad distributiva


Para cualquier tro de elementos (a,b,c) de B se verifica:
Distributiva respecto de la suma:
a (b + c ) = a b + a c

Distributiva respecto del producto:


a + (b c) = (a + b) (a + c)

Postulado 3. Existencia de los elementos neutros


Para cualquier elemento a de B, existe:
Un elemento neutro para la suma, denominado elemento cero: "0", tal que:
a+0=a

31
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:43 Pgina 32

1 Lgica digital y microprogramable

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.

Postulado 4. Axioma del complemento


Para cada elemento a de B, existe otro elemento tambin de B, llamado complemento de a, comple-
mentario de a, negado de a u opuesto de a, y representado como a', a, -a, a/, a* o a, tal que verifica:

Complemento respecto de la suma:


a+a=1

Complemento respecto del producto:


aa=0

2.3.1 La lgica proposicional como lgebra de Boole


Una vez definido lo que es un lgebra de Boole, se podra comprobar la siguiente equivalencia entre
los elementos de la lgica y los del lgebra:

lgica proposicional lgebra de Boole


valor lgico V elemento 1
valor lgico F elemento 0
conectiva y operacin producto:
conectiva o operacin suma: +
conectiva no existencia del complemento
proposicin o variable lgica variable booleana
expresin lgica expresin booleana
leyes de la lgica postulados del lgebra

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

Producto booleano: se corresponde con la conectiva y, de modo que se puede establecer la


siguiente equivalencia:
pyq Q pq

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

 Por la ley de la conectiva y


pqpyq=qypqp

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 )

Segn las leyes de la lgica se cumple la igualdad


p + ( q r ) p o ( q y r ) = ( p o q ) y ( p o r ) ( p + q) ( p + r )

Elementos neutros: los neutros para la suma y el producto son respectivamente 0 F y 1 Q


V, ya que:
p+0poF=p p1QpyV=p

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

1=0 ya que: 1+1=1+0 V o F = V 1


y: 11=10 V y F = 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

En el mbito de la electrnica, el concepto de la conectiva no o equivalentemente del complemen-


to booleano, se denomina habitualmente complemento lgico, lo que de nuevo es una mezcla de
trminos, pero que no supone ningn problema.

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

1 Lgica digital y microprogramable

bra de Boole, que de cara a la electrnica digital son ms adecuadas que las del lenguaje formal de
la lgica.

2.3.2 Teoremas del lgebra de Boole


A partir de los postulados del lgebra de Boole, se pueden deducir una serie de relaciones entre varia-
bles booleanas que resultan de inters por su aplicacin a la manipulacin de expresiones lgicas,
sobre todo de cara a su simplificacin. Simplificar una expresin es obtener otra expresin equivalen-
te pero formalmente menos compleja.

A continuacin se da una enumeracin de algunas de estas relaciones booleanas a modo de teoremas.


No se incluyen las demostraciones de los teoremas ya que escapan a los objetivos del libro.

Teorema 1. Teorema de los elementos dominantes


a+1=1
a0=0

Teorema 2. Teorema de idempotencia


a+a=a
aa=a

Teorema 3. Ley involutiva o de la doble negacin


a=a

Teorema 4. Ley de absorcin


a ( a + b) = a
a + ( a b) = a

Teorema 5. Segunda ley de la absorcin


a ( a + b) = a b
a + ( a b) = a + b

Teorema 6. Propiedad asociativa


(a + b) + c = a + (b + c) = a + b + c
(a b) c = a (b c) = a b c

Teorema 7. Leyes de De Morgan


a + b = a b generalizando (a1 + a2 +...+an) = a1 a2 ...an
a b = a + b generalizando (a1 a2 ...an) = a1 + a2 +...+an

2.3.3 Ejercicios de simplificacin de expresiones lgicas


Los postulados y teoremas del lgebra de Boole establecen una serie de relaciones entre variables boo-
leanas que resultan de inters por su aplicacin a la manipulacin de expresiones lgicas, sobre todo
de cara su simplificacin.

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 )

Aplicando el axioma del complemento al parntesis:


a b (c + c ) = a b 1 = a b

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

Aplicando la segunda ley de absorcin:


ab+a=a+b

2.3.4 Funciones booleanas


Muchas de las leyes y mtodos deductivos de la lgica, que no se expusieron en la presentacin de la
lgica de proposiciones, se pueden interpretar ms fcilmente empleando el lenguaje del lgebra de
Boole. Concretamente, se pueden interpretar haciendo uso de las funciones booleanas, que de nuevo,
por abuso del lenguaje, se denominan a veces funciones lgicas en el mbito de la electrnica, lo cual
se debe asumir con naturalidad.

Definicin de funcin lgica o booleana


Matemticamente, una funcin booleana f es una aplicacin del producto cartesiano de n-simo orden
de B por s mismo, en B. Esto se representa como sigue:

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.

Elementos de una funcin


Teniendo en cuenta que, tanto la proposicin que depende de otras, como stas mismas, estn todas
representadas por variables lgicas, se distinguen en el mbito de la electrnica digital los siguientes
elementos, que suponen a veces un doble uso del mismo trmino:

Funcin: adems de la aplicacin matemtica ya definida, la proposicin o variable que depen-


de de otras se dice que es funcin de ellas, o simplemente que es la funcin. Matemticamente
sera la variable dependiente.
Variables: aunque lo sea tambin la variable dependiente (la funcin), en este contexto se lla-
man variables de la funcin o simplemente variables las proposiciones o variables lgicas de las
que depende la funcin. Matemticamente seran las variables independientes.

35
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 36

1 Lgica digital y microprogramable

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:

f hay que abrir el portn


a hay coches en la entrada
b pulsan el interruptor

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 dependencia de f con a y b se indica de la forma:

f (a, b) indica que f depende de a y b

La expresin lgica de la funcin, por la que se define la dependencia entre f y a y b, ser la siguiente:

f (a, b) = a o b expresin lgica

O empleando el lenguaje del lgebra de Boole, la expresin booleana ser:

f (a, b) = a + b expresin booleana

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.

Tabla de verdad de una funcin


Dado que una funcin viene definida por una expresin lgica, tambin se puede representar por la
tabla de verdad correspondiente a la expresin. De este modo, la funcin del anterior ejemplo del con-
trol de un portn: f(a,b)=a+b, se puede poner como sigue:

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).

Combinaciones de la tabla de verdad


El hecho de emplear unos y ceros permite imaginar que las diferentes combinaciones de valores
lgicos de las n variables de una funcin, forman un nmero en binario de n bits. Puesto que en
la tabla de verdad aparecen todas las posibles combinaciones de valores de las n variables, tam-
bin aparecern todos los nmeros binarios imaginados de n bits.

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.

Entradas de la tabla de verdad


La aplicacin de este mtodo permite adems identificar fcilmente cada una de las filas de la
tabla de verdad. A cada una de estas filas se le llama entrada de la tabla, y se identifica por

36
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 37

Introduccin a la electrnica digital

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.

se entrega un billete de 10 se entregan dos billetes de 5 el pago es correcto


caso 1 0 0 0
caso 2 0 1 1
caso 3 1 0 1
caso 4 1 1 0

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

Las siguientes equivalencias pueden ser tiles para hacer simplificaciones:

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

1 Lgica digital y microprogramable

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.

2.3.5 Ejercicios de identificacin de funciones lgicas


Una funcin lgica es la forma matemtica de representar una relacin por la que a una proposicin
se le asigna un valor lgico a partir de los valores lgicos de otra u otras proposiciones.

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

Introduccin a la electrnica digital

(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 )

2.3.6 Expresiones cannicas


Dada una funcin que depende de varias variables, se definen los siguientes conceptos:

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):

son minterms no son minterms


abcd abc falta la variable d
abcd acd falta la variable b
abcd cd Faltan las variables a y b
abcd abbcd la variable b aparece dos veces

39
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 40

1 Lgica digital y microprogramable

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):

son minterms no son minterms


a+b+c+d a+b+c falta la variable d
a+b+c+d a+c+d falta la variable b
a+b+c+d c+d Faltan las variables a y b
a+b+c+d a+b+b+c+d la variable b aparece dos veces

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:

f ( a,b,c,d ) = abcd + abcd + abcd + abcd

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 )

Empleo de las expresiones cannicas


La forma cannica de una funcin es de inters en ciertos casos como los que se indican a continuacin:
Uso de dispositivos configurables: como se ver ms adelante en la unidad correspondiente,
cuando se trabaje con dispositivos electrnicos digitales configurables tales como PLDs, PAL,
GAL, etc., es conveniente expresar las funciones en su forma cannica.
Obtencin de la tabla de verdad: dada una funcin en una forma cannica, es inmediato obte-
ner la tabla de verdad sin necesidad de evaluar las expresiones lgicas para cada una de las
entradas de la tabla.
El mtodo se basa en interpretar cada minterm (o maxterm segn la expresin cannica sea suma
o producto) como un nmero binario, que reflejar una entrada de la tabla:

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

Obtencin de la expresin cannica


Introduccin a la electrnica digital
1
A partir de la tabla de verdad: el mtodo es el inverso al expuesto en el apartado anterior para
la obtencin de la tabla a partir de la expresin cannica.
Expresin suma: obtener los minterms a partir de las entradas en las que la funcin vale 1.
Expresin producto: obtener los maxterms a partir de las entradas en las que la funcin vale 0.

A partir de una expresin no cannica: el procedimiento consta de dos pasos:


Mediante el empleo de los teoremas del lgebra de Boole, desarrollar la expresin no can-
nica hasta obtener una expresin formada slo por suma de productos (no cannicos posi-
blemente) o producto de sumas (no cannicas posiblemente) segn lo deseado.
Desarrollar cada trmino obtenido, hasta formar un trmino cannico. Para ello, aadir las
variables que le faltan para ser cannico empleando el postulado del complemento.

2.3.7 Ejercicios con las expresiones cannicas de las funciones


Ejemplo resuelto 1
Obtener la tabla de verdad de la siguiente funcin, y expresarla en 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
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:

Asignar el valor 1 a las entradas de la tabla determinadas por los minterms:

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

Completar la tabla con 0 en las dems entradas:

41
L gica digital y prog_ U 01-final.qxp 28/02/2007 18:44 Pgina 42

1 Lgica digital y microprogramable

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):

a b c d f(a,b,c,d) minterms maxterms


0 0 0 0 0 a+b+c+d
0 0 0 1 0 a+b+c+d
0 0 1 0 0 a+b+c+d
0 0 1 1 0 a+b+c+d
0 1 0 0 0 a+b+c+d
0 1 0 1 1 abcd
0 1 1 0 1 abcd
0 1 1 1 1 abcd
1 0 0 0 0 a+b+c+d
1 0 0 1 0 a+b+c+d
1 0 1 0 0 a+b+c+d
1 0 1 1 1 abcd
1 1 0 0 1 abcd
1 1 0 1 1 abcd
1 1 1 0 1 abcd
1 1 1 1 1 abcd

Expresin cannica suma:


f (a,b,c,d ) = 4(5,6,7,11,12,13,14,15)=
=abcd+abcd+abcd+abcd+abcd +abcd +abcd +abcd

Expresin cannica producto:


f (a,b,c,d ) = 4(0,1,2,3,4,8,9,10)=
= (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 ) (a + b + c + d )

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.

Aplicando la distributiva a cada parntesis se obtienen trminos cannicos:

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)

2.4 Aplicacin a los procesadores digitales


electrnicos
Como ya se expuso en su momento, un sistema de control trata de generar ciertas actuaciones a par-
tir de ciertas observaciones y ciertas condiciones de funcionamiento. Por ejemplo, el control del portn
de un aparcamiento trata de generar una actuacin (la apertura del portn) a partir de la observacin
de la presencia de coches y de la pulsacin de un interruptor. Adems, estas observaciones se combi-
nan con una condicin de funcionamiento como puede ser que alguna de las dos observaciones d un
resultado afirmativo. Esto se resume diciendo que hay que abrir el portn si hay coches en la entra-
da o pulsan el interruptor.

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:

Funcin: es el elemento a controlar.


Variables: son las observaciones a partir de las que se controlar el sistema.
Expresin: son las condiciones de funcionamiento.
El proceso de control queda representado por una funcin lgica. En el ejemplo del portn, haciendo
la siguiente definicin de variables:

P: el Portn debe abrirse funcin


C: hay Coches en la entrada variable
I: pulsan el Interruptor variable
la funcin lgica que define el proceso de control es:

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

1 Lgica digital y microprogramable

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:

valor de la seal C valor de la seal I valor generado para la seal P


0V 0V 0V
0V 5V 5V
5V 0V 5V
5V 5V 5V

donde el 1 est representado por la tensin de 5V y el 0 por la de 0V.

En general, cuando un sistema de


control puede estar representado
por una funcin lgica, la electr-
nica digital proporciona los circui-
tos necesarios para implementar
el comportamiento de esa funcin,
a partir de las seales elctricas
que representan los valores de las
variables lgicas. El proceso de
diseo, dados los conocimientos adquiridos hasta el momento, es el siguiente:

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

Lgica positiva y negativa


Introduccin a la electrnica digital
1
En el anterior ejemplo del portn, el valor lgico 1 (la verdad) estaba representado por la tensin de
5V y el valor lgico 0 (la falsedad) estaba representado por la tensin de 0V. Esta relacin es arbitra-
ria, ya que de hecho, el problema se podra haber resuelto haciendo la asignacin contraria, es decir,
el 1 representado por 0V y el 0 por 5V; aunque el circuito resultante sera diferente, hara la misma fun-
cin de control. El criterio queda a la eleccin del diseador.

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

1 Lgica digital y microprogramable

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

Nota: la solucin a todos los ejercicios se encontrarn en el disco adjunto al libro

46

You might also like