Académique Documents
Professionnel Documents
Culture Documents
SISTEMAS DIGITALES
SISTEMAS DIGITALES
REPRESENTACION DE NUMEROS En la Electrnica Digital, los nmeros pueden representarse de diferentes formas, dependiendo de la utilidad que se le quiera dar. En particular, cuando se trabaja con Controladores Programables, es necesario conocer algunas formas de representar los nmeros, ya que internamente el P.L.C. hace la transformacin de ellos a su propio cdigo. Cuando se trabaja con seales analgicas, estas deben digitalizarse para que el P.L.C. pueda trabajar con estos datos internamente. Para esto, las seales analgicas se transforman en un Nmero Binario. Cuando se est trabajando con seales digitales, no existe la necesidad de la transformacin de los valores, puesto que en este caso slo se trabaja con dos dgitos 1 y 0.
SISTEMAS DIGITALES
REPRESENTACION DE NUMEROS
As pues, en general, se puede decir que cualquier nmero en cualquier sistema numrico - est formado por varias cifras consecutivas. Por ejemplo, el nmero a4 a3 a2 a1 a0 representa la suma
en donde la letra " b " representa la base del sistema de numeracin que se quiere utilizar. Un corolario a esto es que se puede concluir que cada sistema de numeracin tiene tantos dgitos como lo indique la base b. En la siguiente tabla se muestra la estructura de los diferentes sistemas de numeracin.
SISTEMAS DIGITALES
REPRESENTACION DE NUMEROS
A continuacin se ver la forma en que se representan los nmeros en algunos de los sistemas de numeracin ms utilizados.
En el Sistema de Numeracin Decimal, el nmero : 7463 , se representa de la siguiente forma:
SISTEMAS DIGITALES
REPRESENTACION DE NUMEROS Como ejemplos, el nmero decimal 739 se representa en los diferentes sistemas de la siguiente manera:
SISTEMAS DIGITALES
CONVERSION ENTRE LOS DIFERENTES SISTEMAS DE NUMERACION
CONVERSIONES AL SISTEMA DECIMAL: A continuacin se representar un nmero en Sistema Binario a Sistema Decimal. 1101102 = 1*25 + 1*24 + 0*23 + 1*22 + 1*21 + 1*20 = 54 En el siguiente ejemplo, se representar un nmero en Sistema Hexadecimal a Sistema Decimal. DA9H = 13*162 + 10*161 + 9*160 = 3497 De manera similar, para convertir un nmero desde la representacin octal a decimal, se procede de la forma siguiente: 5678 = 5*82 + 6*81 + 7*80 = 375
COMO CONVERTIR DE UN SISTEMA A OTRO? El mtodo genrico es la divisin sucesiva por la base. Lo veremos a travs de dos ejemplos: Sea el nmero 370 en decimal. Para convertirlo a binario: 370 0 2 185 1 2 92 0 2 46 0 2 23 1 2 11 1 2 5 1 2 2 0 2 1 1 2 0
1011100102
370 2
8 46 6 8 5 5 8 0
5628
El mtodo anterior sirve para convertir a cualquier base numrica, sin embargo para convertir de octal a binario existe una manera extremadamente simple, consistente en descomponer cada una de las cifras del nmero octal a su equivalente binario en 3 bits. Veamos el mismo nmero anterior:
562 =
5 101
6 110
2 010
Es decir
5628 = 1011100102
Que es el mismo nmero que ya habamos obtenido anteriormente.
SISTEMAS DIGITALES
CONVERSION DE SISTEMA DECIMAL A SISTEMA HEXADECIMAL
Para este tipo de conversiones, se procede de la misma forma que en el caso anterior, excepto que en el sistema Hexadecimal la base b=16.
195 : 16 = 12 12 : 16 = 0
resto 3 resto 12
----a0 = 3 ---a1 = C
SISTEMAS DIGITALES
CONVERSION DE SISTEMA BINARIO A SISTEMA HEXADECIMAL
Para hacer este tipo de transformacin, es necesario pasar por el Sistema Decimal. Por ejemplo, se desea convertir el nmero Binario 100111 en Sistema Hexadecimal
Primero, se debe traspasar a nmero decimal: 100111 = 1*25 + 0*24 + 0*2) + 1*22 + 1*21 + 1*20 = 39 Luego, se traspasa a Sistema Hexadecimal
39 : 16 = 2 2 : 16 = 0
resto 7 resto 2
----a0 = 7 ----al = 2
Por lo tanto, el nmero Binario 100111 corresponde a 27 en Sistema Hexadecimal. Para hacer esta transformacin, tambin se podra haber traspasado primero a Cdigo BCD y luego a Hexadecimal.
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Definiciones Antes de entrar a definir los diferentes cdigos, es necesario conocer algunos conceptos tiles muy utilizados en sistemas digitales, puesto que simplifican el trabajo con agrupaciones de nmeros, adems de facilitar los clculos. Un " Bit " corresponde a una cifra, que puede tomar slo dos valores : 1 o 0. Un "Byte" corresponde a un conjunto de 8 Bits. Un Word o palabra, corresponde a dos Bytes o 16 Bits Un Dword o doble palabra corresponde a dos Words, cuatro Bytes o 32 Bits Un Nibble corresponde a Bye o 4 Bits
En el Cdigo BCD cada cifra decimal se representa mediante 4 "Bits" (o un Nibble). El valor decimal se obtiene de la conversin de las cifras representadas por los cuatro "Bits".
La siguiente, tabla muestra la equivalencia entre el Sistema Decimal y el Cdigo BCD.
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
CODIGO BCD
Por ejemplo, si se desea representar el nmero 58 en el Sistema Decimal, en el Sistema Binario y en cdigo BCD, se tendr:.
SISTEMAS DIGITALES
CODIGO BCD
Sin embargo existen otros sistemas de representacin que son binarios en el sentido de que slo usan los dos dgitos 0 y 1, sin embargo tienen pesos diferentes. Algunos de estos sistemas, tambin conocidos como cdigos son los siguientes: Cdigo AIKEN: Similar al BCD, pero con los pesos cambiados. Cada dgito decimal se representa mediante 4 bits, siendo los pesos de estos bits: 2, 4, 2 y 1. Cdigo GRAY: Son una familia de cdigos que se caracterizan porque el paso de un nmero al siguiente implica que slo se modifica un bit.
SISTEMAS DIGITALES
Es requisito fundamental para comprender el funcionamiento Programables, tener un conocimiento de Sistemas Digitales. de los controladores
Estado Digital : Un circuito digital, slo puede reconocer dos estados. Estos dos estados son: ON y OFF (1 y 0 respectivamente). Tambin se conoce como Estado Binario.
Nivel Lgico : Representa el valor que toma una variable lgica. Este valor representa el estado lgico en que se encuentra la variable. Normalmente, con un 1 se representa un nivel lgico alto; de manera similar, con un 0 se representa un nivel lgico bajo.
SISTEMAS DIGITALES
FUNCIONES LOGICAS
En sistemas digitales, las funciones lgicas corresponden al equivalente a las operaciones matemticas usuales del sistema decimal. En otras palabras, representan las operaciones que son posibles de realizar entre variables lgicas a fin de obtener un determinado resultado. A) FUNCION LOGICA " Y " ( AND ) La funcin lgica " Y " permite consultar si dos o ms condiciones se cumplen simultneamente. Todas las condiciones deben cumplirse obligatoriamente. Su simbologa, tabla de verdad y funcionamiento son los siguientes:
SISTEMAS DIGITALES
FUNCIONES LOGICAS
B) FUNCION LOGICA " 0 " ( OR ) La funcin lgica " OR " permite consultar si cualquiera de las condiciones se cumple. Basta con que una de las condiciones se cumpla, aunque se pueden cumplir varias de ellas a la vez. Su simbologa, tabla de verdad y funcionamiento son los siguientes:
SISTEMAS DIGITALES
FUNCIONES LOGICAS
C) FUNCION LOGICA " EXOR " ( OR Exclusivo) Esta funcin lgica permite consultar cuando slo una de las condiciones se cumple. Su simbologa, tabla de verdad y funcionamiento son los siguientes:
SISTEMAS DIGITALES
FUNCIONES LOGICAS
D) FUNCION LOGICA " NOT" Esta funcin lgica permite invertir o negar el estado de una variable lgica. Su simbologa, tabla de verdad y funcionamiento son los siguientes:
SISTEMAS DIGITALES
FUNCIONES LOGICAS
E) OTRAS FUNCIONES Es del caso mencionar que, comercialmente, las funciones lgicas ms utilizadas corresponden al NOR (el valor complementario de OR NO-OR) y al NAND, que es el valor complementario de la funcin AND ( NO-AND)
La razn de esto es netamente prctica, ya que como veremos, es posible obtener a partir de cualquiera de ellos, cualquiera de las otras funciones.
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
Para describir un circuito digital utilizaremos ecuaciones matemticas. Sin embargo, estas ecuaciones tienen variables y nmeros que NO SON REALES, por lo que NO podemos aplicar las mismas propiedades y operaciones que conocemos. Hay que utilizar nuevas operaciones y nuevas propiedades, definidas en el ALGEBRA DE BOOLE.
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
Negacin (NOT)
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
Elemento inverso
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
Teoremas importantes
Asociatividad
Idempotencia:
Ley de Absorcin
SISTEMAS DIGITALES
ALGEBRA DE BOOLE
Leyes de De Morgan
Teorema de Shannon
SISTEMAS DIGITALES
FUNCIONES BOOLEANAS
Las Funciones booleanas, son exactamente iguales a las funciones matemticas a las que estamos habituados pero con la particularidad de que las variables son booleanas y que los valores devueltos por la funcin tambin son booleanos, es decir, una funcin booleana slo puede tomar los valores 0 1. Como ejemplo, veamos una funcin de una sola variable:
El valor devuelto por la funcin es el negado del que se le pasa por la variable. Como la variable A es booleana, slo puede tomar los valores 0 y 1. Los que la funcin F toma son:
SISTEMAS DIGITALES
FUNCIONES BOOLEANAS
Veamos que ocurre con una funcin ms compleja, de dos variables y calculemos el valor de F para el resto de valores de entrada de A y B:
F(0,0) = (0 + 0) . 1 = 0 F(0,1) = (0 + 1) . 0 = 0 F(1,0) = (1 + 0) . 1 = 1 F(1,1) = ( 1 + 1) . 0 = 0 Fijndonos en esta funcin tan sencilla, podemos darnos cuenta de varias cosas: Puesto que las variables de entrada A y B, slo pueden tomar los valores 0 y 1, hay 4 casos distintos: a) A=0, B=0 b) A=0, B=1 c) A=1, B=0 d) A=1, B=1
Antes de calcular los valores que toma la funcin, segn lo que valgan A y B, se pueden aplicar algunas propiedades para obtener una funcin ms simplificada.
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
FUNCIONES BOOLEANAS
Las funciones booleanas pueden ser de muchas variables, sin embargo por simplicidad de anlisis, normalmente se trabaja agrupndolas en no ms de 4 variables.
SISTEMAS DIGITALES
FUNCIONES BOOLEANAS Y TABLAS DE VERDAD
Existe ms de una maneras de representar una funcin booleana. Una ya la conocemos, y es utilizado expresiones booleanas. As por ejemplo se puede definir la funcin booleana siguiente:
F(a,b) = a + b
SISTEMAS DIGITALES
FUNCIONES BOOLEANAS Y TABLAS DE VERDAD
Cunto vale G si A=0 y B=1?. De la tabla vemos que G vale 1. Esta forma de definir funciones booleanas es muy sencilla. El nmero de filas de la tabla de verdad depende del nmero de variables que usemos.
Cuanto mayor nmero de variables, mayor cantidad de filas tendr la tabla de verdad.
La regla que se cumple es la siguiente: Si la funcin tiene N variables, la tabla de verdad tendr N * N filas. Veamos algunos ejemplos:
Si una funcin tiene 2 variables, su tabla de verdad tendr 4 filas Si la funcin tiene 3 variables, la tabla tendr 8 filas Si la funcin tiene 4 variables, la tabla tendr 16 filas Si la funcin tiene 5 variables, la tabla tendr 25 filas En la prctica sin embargo - normalmente no se construyen tablas de verdad de ms de 4 variables.
SISTEMAS DIGITALES
Obtencin de una tabla de verdad a partir de una expresin
2) Se dibuja una tabla de verdad con 4 filas, poniendo en la parte de la izquierda el nmero de fila en binario natural, comenzando por la fila 0
SISTEMAS DIGITALES
Obtencin de tablas de verdad a partir de expresiones
Aplicando la expresin, vamos calculando el valor de F. La primera fila se corresponde con F(0,0), la segunda con F(0,1), la tercera con F(1,0) y la ltima con F(1,1):
3)
SISTEMAS DIGITALES
Obtencin de una expresin a partir de una tabla de verdad
En la prctica diaria ser muy normal tener una tabla de verdad que haya que convertir a expresiones booleanas. El proceso es sencillo y podemos obtener las expresiones aplicando las propiedades del lgebra de Boole, sin embargo se debe tener presente que dada una tabla de verdad se pueden obtener multitud de expresiones diferentes, todas ellas equivalentes. La misin del programador ser obtener la expresin ms simplificada posible. Existen dos tipos de expresiones que se obtienen directamente de la tabla de verdad, de forma inmediata. Se denominan formas cannicas. Se caracterizan porque en todos los trminos de estas expresiones aparecen todas las variables. Primera forma cannica Una funcin que est en la primera forma cannica se caracteriza porque est formada por sumas de productos. Un ejemplo de una funcin de 3 variables, expresada en la primera forma cannica es la siguiente: _ _ _ F=ABC + ABC + ABC
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Obtencin de una expresin a partir de una tabla de verdad
Se observa que la funcin est constituida por la suma de tres trminos y en cada uno de los trminos estn todas las variables. La obtencin de la primera forma cannica, a partir de una tabla de verdad es inmediato. El proceso se denomina desarrollo de la tabla de verdad por unos. Se toma la tabla de verdad y slo se consideran en las filas en las que la funcin vale 1, olvidando del resto. Por cada una de estas filas se tendr un sumando, constituido por el producto de todas las variables, al aplicar la siguiente regla: Si una variable est a 0, en la fila escogida, se utiliza la variable negada, y si est a 1, se usa la variable sin negar. A cada uno de los sumandos de una expresin en la primera forma cannica, le corresponde una fila de la tabla de verdad, es decir, un nmero en decimal. As en la funcin anterior se tienen los valores 1, 3 y 7, que se expresa: F = (1,3,7)
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Obtencin de una expresin a partir de una tabla de verdad
Segunda forma cannica Un funcin en la segunda forma cannica se caracteriza porque est formada por un producto de sumas. Y en todos sus trminos deben aparecer todas sus variables, bien negadas o no. Por ejemplo: _ _ _ _ F = ( A + B + C ) ( A + B + C ) ( A + B + C) est constituida por tres trminos que van multiplicados, y cada uno de ellos est formado por sumas. La obtencin de la segunda forma cannica, a partir de una tabla de verdad es inmediato. El proceso se denomina desarrollo de la tabla de verdad por ceros. Tomamos la tabla de verdad y slo nos fijamos en las filas en las que la funcin vale 0, olvidndonos del resto. Por cada una de estas filas tendremos un trmino, constituido por la suma de todas las variables, aplicando la siguiente regla: Si una variable est a 1, en la fila escogida, se usa la variable negada, y si est a 0, la variable sin negar.
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Obtencin de una expresin a partir de una tabla de verdad
Es decir, que esta regla es justo la contraria de la primera forma cannica. Para la segunda forma cannica se usa otra notacin. La funcin F anterior est constituida por tres trminos multiplicados. Si nos fijamos en el primero: se corresponde con la fila de la tabla de verdad en la que A=0, B=1, C=0, que si lo ponemos en decimal es el nmero 2. De esta manera podemos usar la siguiente notacin para representar a F:
F = (2, 4, 6)
SISTEMAS DIGITALES
Simplificacin de funciones booleanas
Normalmente las formas cannicas no son las expresiones ms simplificadas, porlo cual, a fin de hacer ms manejables y fcilmente programables las expresiones, se acostumbra simplificarlas eliminando trminos redundantes. Existen tres maneras tpicas: 1.Utilizando las propiedades y Teoremas del Algebra de Boole. Se denomina mtodo analtico de simplificacin de funciones. Hay que manejar muy bien estas propiedades para poder eliminar la mayor cantidad de trminos y variables. 2.Utilizando el mtodo de Karnaugh. Es un mtodo grfico que si lo aplicamos bien, nos garantiza que obtendremos la funcin ms simplificada posible, a partir de una tabla de verdad. 3.Usando el mtodo de Quinn-Mclusky. Que corresponde a un mtodo analtico, prctico para funciones de ms de cuatro variables
SISTEMAS DIGITALES
Mtodo analtico de simplificacin de funciones
Desgraciadamente no existe tal mtodo. Hay que basarse en la experiencia y en el conocimiento de las propiedades y teoremas del Algebra de Boole a fin de lograr las simplificaciones. Lo mejor es ver un ejemplo: Ejemplo: Simplificar la siguiente funcin:
Aplicando la propiedad distributiva, lo que normalmente se denomina sacar factor comn. Operando con los trminos 1 y 3:
La fguncion final es
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Mtodo de Karnaugh
Es un mtodo para obtener la funcin ms simplificada a partir de una tabla de verdad. Supongamos que tenemos una funcin F(A,B,C) de tres variables, cuya tabla de verdad es:
SISTEMAS DIGITALES
Mtodo de Karnaugh
Veremos como aplicando el mtodo de Karnaugh podemos simplificar esta funcin. Vamos a organizar esta misma tabla de la siguiente manera:
Observamos lo siguiente: Si tomamos dos casillas adyacentes cuyo valor es 1 y desarrollamos por la primera forma cannica, desaparecer una de las variables. Slo permanecen las variables que no cambian
Si tomamos dos casillas adyacentes cuyo valor es 1 y desarrollamos por la primera forma cannica, desaparecer una de las variables. Slo permanecen las variables que no cambian
CURSO DE AUTOMATIZACION INDUSTRIAL SISTEMAS DIGITALES
SISTEMAS DIGITALES
Mtodo de Karnaugh
Criterio de mxima simplificacin: Para obtener una funcin que no se puede simplificar ms hay que tomar el menor nmero de grupos con el mayor nmero de 1 en cada grupo.
Hay que tener en cuenta que los grupos que se tomen slo pueden tener un tamao de 1, 2, 4, 8, 16,... bloques, (es decir, slo potencias de dos). Esa es la razn por la que en el ejemplo anterior los grupos que se han tomado son de tamao 4 (y no se han tomado de tamao 3).
SISTEMAS DIGITALES
Mtodo de Karnaugh