Documente Academic
Documente Profesional
Documente Cultură
2012
UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO
2012
adderly_157@hotmail.com
Pgina 1 de 37
Contenido
Portada de Presentacin1 ndice2 Ttulo...3 Introduccin...4 Medios y Materiales..6 Objetivos...7 Zona de estudio.8 Fundamentos Tericos.9 Cdigo binario, decimal y hexadecimal.9 Conversin de binario a decimal..10 Conversin de decimal a binario..11 Sistema hexadecimal12 Tabla de verdad13 Funciones lgicas.14 Suma lgica...14 Producto lgico..15 Negacin o inversin lgica..15 Funcin lgica a partir de la tabla de verdad....16 Tabla de verdad a partir de la funcin lgica..18 lgebra de Boole.20 Simplificacin de funciones lgicas21 Lenguaje mquina....22 Lenguajes de ensambladores y de alto nivel..23 Puertas lgicas digitales..24 Construccin y procedimientos33 Situacin problemtica..34 Trabajo del estudiante35 Clonclusiones.36 Bibliografa y anexos...37
adderly_157@hotmail.com
Pgina 3 de 37
Introduccin.
Seales analgicas y digitales. Cuando un equipo electrnico nos muestra una informacin, puede hacerlo de forma analgica o de forma digital. Analgica quiere decir que la informacin, la seal, para pasar de un valor a otro pasa por todos los valores intermedios, es continua. La seal digital, en cambio, va a saltos, pasa de un valor al siguiente sin poder tomar valores intermedios. Una seal analgica es continua, y puede tomar infinitos valores. Una seal digital es discontinua, y slo puede tomar dos valores o estados: 0 y 1, que pueden ser impulsos elctricos de baja y alta tensin, interruptores abiertos o cerrados, etc. Ejemplos: Seal analgica:
Seales digitales:
adderly_157@hotmail.com
Pgina 4 de 37
Termmetro: En el termmetro de mercurio si nuestra vista fuera lo suficientemente precisa podramos percibir la diferencia entre una centsima o milsima y otra y medir temperaturas como 37,214 C.
El termmetro digital, en cambio, no puede detectar ningn valor intermedio entre una dcima y la siguiente.
Relojes: Las agujas pueden estar en infinitas posiciones, mientras que el reloj digital no puede tomar valores intermedios.
adderly_157@hotmail.com
Pgina 5 de 37
Medios y Materiales.
El trabajo de investigacin que a continuacin mostrar es el resultado de mi acrrima inspiracin en la computacin, ciencia dedicada al estudio del hardware (parte fsica de la computadora) y del software (parte lgica de la misma; siendo esta ltima una herramienta para solucionar muchos problemas en la actualidad.
Gracias al gran desarrollo de la programacin de computadoras podemos hoy en da resolver problemas en cuestin de segundos en comparacin con dcadas pasadas que tomaba mucho tiempo dar solucin a los mismos. Las computadoras modernas se basan en la lgica binaria para solucionar problemas; es as que el ordenador se caracteriza por tener su propio lenguaje llamado cdigo maquina, compuesto por una secuencia de ceros y unos. Es ah donde encontramos el vinculo entre la computacin y la lgica binaria, tema profundizaremos en este trabajo.
Para poder dar vida a este trabajo se ha utilizado en primer lugar una computadora moderna, imprescindible en cualquier aspecto acadmico; en segundo lugar se ha empleado el programa MICROSOFT WORD 2010, en donde se ha plasmado la informacin necesaria que el tema demanda y se adjuntado grficos e imgenes concernientes al tema. Para poder introducir imgenes en el editor de documentos se ha PHOTOSCAPE, herramienta indispensable en la edicin de imgenes y grficos. utilizado otro software llamado
Y como no mencionar los libros fsicos y tambin el internet del cual se ha extrado mucha informacin, al hablar de el estamos mencionando a muchos medios de que nos brindan informacin, como son las pginas web, documento en DOCX, en PDF, videos, libros electrnicos, etc. Todas estas herramientas importantes en cualquier trabajo de investigacin.
adderly_157@hotmail.com
Pgina 6 de 37
Objetivos.
Distinguir entre una seal analgica y digital. Conocer el sistema binario, decimal y hexadecimal. Realizar conversiones entre sistema binario y decimal. Obtener la tabla de verdad de un sistema computacional electrnico a partir de su descripcin o funcin lgica Obtener la funcin lgica de un sistema a partir de la tabla de verdad y simplificarla. Comprender y obtener el circuito elctrico equivalente a una funcin lgica. Comprender la relacin entre la lgica binaria y la computacin. Conocer el lenguaje que utiliza la computadora. Conocer otros lenguajes traducibles por la computadora.
adderly_157@hotmail.com
Pgina 7 de 37
Zona de estudio.
Nuestra zona de estudio se encuentra establecida dentro del campo de la Computacin e Informtica, aritmtica y la lgica binaria. En el mbito de la Computacin e Informtica nos referimos exactamente a los programas, los cuales trabajan con lenguaje binario.
adderly_157@hotmail.com
Pgina 8 de 37
Fundamentos Tericos.
Cdigo binario, decimal y hexadecimal.
Un sistema electrnico maneja informacin en cdigo binario, es decir ceros y unos: el cero quiere decir que no pasa corriente y el uno que s pasa. Habitualmente trabajamos con el sistema decimal que consiste en que los nmeros enteros menores que diez tienen una cifra asignada: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Para el diez ya no existe una cifra, sino que lo que hacemos es volver al 0 y colocar delante un 1.
En el sistema binario, solamente el cero y el uno tienen asignada una cifra: 0, 1. Para el dos ya no existe cifra, por lo que tenemos que volver al 0 y colocar un 1 delante. El ordenador no puede entender el dos, pero s puede entender que en un circuito no haya corriente (0) y en el otro s (1). Para el tres aadimos uno a las cifras anteriores, con lo que tendremos 11. Es decir, dos circuitos en los que hay corriente. Para el cuatro se nos han acabado las combinaciones con dos cifras, hay que aadir una tercera (100) y as sucesivamente.
adderly_157@hotmail.com
Pgina 9 de 37
En el sistema binario, las cifras que componen el nmero multiplican a las potencias de dos (1, 2, 4, 8, 16, .) 20=1, 21=2, 22=4, 23=8, 24=16, 25=32, 26=64, ... Por ejemplo, para pasar a binario un nmero decimal, empezamos por la derecha y vamos multiplicando cada cifra por las sucesivas potencias de 2, avanzando hacia la izquierda: 101102 = 0 1 + 1 2 + 1 4 + 0 8 + 1 16 = 2 + 4 + 16 = 2210 1102 = 0 1 + 1 2 + 1 4 = 2 + 4 = 610
Procedimiento simplificado: Asignamos a cada dgito su valor. Seleccionamos los que valgan 1. Sumamos.
Ejemplo: 110001 = 49
adderly_157@hotmail.com
Pgina 10 de 37
Ejemplo: Vamos a pasar a binario 7910 79 39 19 9 4 2 1 1 (impar). Dividimos entre dos: 1 (impar). Dividimos entre dos: 1 (impar). Dividimos entre dos: 1 (impar). Dividimos entre dos: 0 (par). Dividimos entre dos: 0 (par). Dividimos entre dos: 1 (impar).
adderly_157@hotmail.com
Pgina 11 de 37
Sistema hexadecimal
Otro cdigo que se usa con cierta frecuencia es el hexadecimal, es decir, en base diecisis. Consiste en utilizar las letras A, B, C, D, E y F para representar los nmeros del diez al quince, mientras que para el diecisis emplearemos el 1 y el 0. 1016 = 1610 1B16 = 16 + 11 = 2710 3E16 = 3 16 + 14 = 6210 La razn para el uso del sistema hexadecimal es que su conversin a binario o la conversin de binario a hexadecimal es muy simple, puesto que, al ser diecisis igual a dos elevado a cuatro, cuatro nmeros binarios componen un nmero hexadecimal.
adderly_157@hotmail.com
Pgina 12 de 37
Tabla de verdad.
El objetivo de un sistema electrnico es producir un cierto resultado, al que llamamos salida, si se cumplen unas condiciones a las que llamamos entradas. Por ejemplo, a una mquina que funciona con un motor que puede ser peligroso, adems del interruptor de encendido (A) le aadiremos otro interruptor de seguridad (B). El motor slo debe arrancar cuando el interruptor est cerrado y adems cuando el interruptor de seguridad tambin lo est. Este sera el esquema elctrico de funcionamiento de nuestra mquina.
Observa la tabla:
Si uno de los interruptores est cerrado (A = 1) y el otro tambin lo est (B = 1), entonces el motor se pondr en marcha (S = 1). En el caso de que A o B estn abiertos (valen 0), el motor seguir quieto (S = 0).
A esta tabla, que muestra la relacin entre el estado de las salidas y de las entradas de un sistema, se le llama tabla de la verdad.
adderly_157@hotmail.com
Pgina 13 de 37
Funciones lgicas.
Operaciones lgicas bsicas Es necesario que nuestro sistema electrnico se comporte segn lo establecido en la tabla de la verdad. Para conseguirlo, se reduce la tabla de la verdad a una sola expresin que se llama funcin lgica. Las funciones lgicas pueden ser muy complejas, pero siempre van a ser una combinacin de las tres operaciones lgicas bsicas. Suma: interruptores en paralelo. S = A + B + C Producto: Interruptores en serie. S = A B C Negacin: pulsador normalmente cerrado. S = A' A estas operaciones lgicas bsicas y a las que derivan de ellas se las denomina de forma genrica lgebra de Boole.
Suma lgica.
La salida se activa (es un 1) cuando una cualquiera de las condiciones de entrada se activa. Solamente no se activa la salida cuando todas las entradas son 0.
adderly_157@hotmail.com
Pgina 14 de 37
Producto lgico.
La salida se activa slo cuando todas las entradas estn activas. Ejemplo: En este circuito la bombilla (S) slo se enciende al pulsar los tres interruptores. S = A B C
La inversin se suele representar mediante una barra encima de la funcin o mediante un apstrofe.
adderly_157@hotmail.com
Pgina 15 de 37
Para obtener la funcin lgica, nos fijamos en las filas en las que S = 1. En este caso, slo hay una, cuando A y B valen 1. Se trata de un producto lgico. S = A B Ejemplo 2 Supongamos ahora la siguiente tabla de verdad:
adderly_157@hotmail.com
Pgina 16 de 37
S vale 1 cuando A y B valen 0. Eso se puede considerar como el producto lgico de A invertido y B invertido, A' B' Pero S tambin vale 1 cuando A vale 1 y B vale 0. Este caso ser el producto lgico de A y B invertido, A B'. En cualquiera de estos dos casos S vale 1, por lo tanto ser la suma lgica de los dos. S = A' B' + A B' Ejemplo 3 Supongamos ahora un caso con 3 variables, A, B y C:
Vemos donde se hace 1 la funcin de salida: Cuando A y B valen 0 y C vale 1, es decir, A' B' C Cuando A y C valen 0 y B vale 1, es decir, A' B C' Cuando A y C valen 1 y B vale 0, es decir, A B' C Dado que S vale 1 en cualquiera de esos tres casos, hacemos la suma lgica de los tres: S = A'B'C + A'BC' + AB'C
adderly_157@hotmail.com
Pgina 17 de 37
Tendremos que poner 1 en los siguientes casos: S = A' + BC + AB'C A' :Todos aquellos en los que A valga 0 (000, 001, 010, 011). BC: Aquellos en los que B y C valgan 1, sea cual sea el valor de A (011, 111). Uno de estos casos, el 011, tena ya un 1 porque cumpla la condicin anterior, A' = 1. AB'C: Cuando A vale 1, B vale 0 y C vale 1, (101).
adderly_157@hotmail.com
Pgina 18 de 37
En el resto de los casos la funcin valdr 0; rellenaremos con 0 los huecos que nos hayan quedado.
adderly_157@hotmail.com
Pgina 19 de 37
lgebra de Boole.
La funcin lgica puede ser bastante larga y compleja, por lo que interesa simplificarla lo ms posible. La simplificacin se puede obtener a partir de ciertas reglas bsicas o propiedades de lgebra de Boole, que puedes ver a continuacin.
Las propiedades asociativa, distributiva y conmutativa son bastante intuitivas, puesto que existen igualmente en la suma de nmeros naturales a la que estamos acostumbrados; lo mismo ocurre con la propiedad a 0 = 0.
adderly_157@hotmail.com
Pgina 20 de 37
adderly_157@hotmail.com
Pgina 21 de 37
Lenguaje de mquina.
Es un lenguaje compuesto por cdigos binarios que un sistema puede ejecutar directamente, los programas ejecutables son precisamente secuencias de instrucciones en lenguaje de mquina, un ejemplo de instrucciones en lenguaje de mquina es:
Las anteriores instrucciones le indican a un procesador que sume dos datos y que luego multipliquen ese resultado por otro. Las instrucciones en lenguaje de mquina estn compuestas de un cdigo que identifica la instruccin (opcode) y uno o varios operandos (o referencias a los mismos). Depende del tipo de procesador sobre la cual se est programando, Intel, Motorola, Atmel, etc., cada uno de ellos tiene cdigos de operacin diferentes.
adderly_157@hotmail.com
Pgina 22 de 37
Lenguajes ensambladores.
Escribir programas funcionales en lenguaje de mquina es una tarea que pocas personas desean hacer, pues es muy propenso a errores y tedioso, por ello a alguien se le ocurri asociar smbolos o mnemnicos a las instrucciones que una mquina poda realizar, por ejemplo en algn lenguaje ensamblador las instrucciones en lenguaje de mquina antes mencionadas quedaran:
Para convertir los programas en lenguaje ensamblador a cdigo de mquina se usa un programa llamado ensamblador.
Existen muchos lenguajes que se pueden llamar de alto nivel, Basic, Pascal, Fortran. Lenguaje C, comparado con el lenguaje ensamblador es de alto nivel, pero tiene la caracterstica de permitir acceder a muchos de los recursos de hardware disponibles en un sistema, por lo que mucho lo clasifican como lenguaje de nivel medio. Para convertir los programas escritos en un lenguaje de alto nivel en cdigo de mquina se tienen las siguientes opciones:
Intrpretes. En los lenguajes interpretados, cuando se ejecuta un programa cada instruccin se traduce a lenguaje de mquina y a continuacin se ejecuta, ejemplos de lenguajes interpretados son matlab, python, smalltalk. Compiladores. Traducen completamente los programa fuente a lenguaje de mquina, ejemplos de lenguajes compilados son, C/C++, Pascal, Fortran, COBOL. Hbridos. En los ltimos aos aparece una especie de lenguajes que combinan las dos opciones anteriores, existe un compilador que traduce el cdigo fuente en un cdigo intermedio que es ejecutado por un programa especial denomina mquina virtual. Ejemplos de esto son Java y los lenguajes de la plataforma .Net de Microsoft.
adderly_157@hotmail.com
Pgina 23 de 37
El indicador de negacin
adderly_157@hotmail.com
Pgina 24 de 37
adderly_157@hotmail.com
Pgina 25 de 37
La puerta lgica OR
adderly_157@hotmail.com
Pgina 26 de 37
adderly_157@hotmail.com
Pgina 27 de 37
A B = AB
adderly_157@hotmail.com
Pgina 28 de 37
adderly_157@hotmail.com
Pgina 29 de 37
A+B
adderly_157@hotmail.com
Pgina 30 de 37
adderly_157@hotmail.com
Pgina 31 de 37
adderly_157@hotmail.com
Pgina 32 de 37
Construccin y procedimientos.
Estando ya en la parte constructiva del trabajo, a continuacin, se presentan las propuestas de diseos algortmicos en los fundamentos anteriormente mencionados. Para empezar se muestra la primera propuesta de diseo, en la cual se puede apreciar un modelo algortmico bsico utilizando expresiones lgicas. Dado como dato la calificacin de un alumno en un examen, escriba "aprobado" si su calificacin es mayor que 8 y Reprobado" en caso contrario. Algoritmo: Inicio Leer (cal) Si cal > 8 entonces Escribir ("aprobado") Sino Escribir ("reprobado") Fin_si
adderly_157@hotmail.com
Pgina 33 de 37
Situacin problemtica.
Observacin.
La situacin problemtica en este caso, se encuentra en desarrollar programas muchos ms legibles y fciles de entender; y que puedan resolver cualquier problema de una forma ms rpida, basndose en la lgica binaria. Para ello se ha desarrollado lenguajes de alto nivel, los cuales son muchos ms fciles de entender para el programador. En mi propuesta se recomienda utilizar programas ya conocidos como C++, Java, C, Visual Basic.net, entre otros, que tienen sus propios traductores.
adderly_157@hotmail.com
Pgina 34 de 37
adderly_157@hotmail.com
Pgina 35 de 37
Conclusiones.
Estoy de acuerdo con las nuevas ideas innovadoras de desarrollar algoritmos mas eficientes que no solo apunten a un solo objetivo, sino tambin a sacar provecho de estas, para as crear dinamismo, y expresin de aptitud, por parte de la sociedad.
adderly_157@hotmail.com
Pgina 36 de 37
Bibliografa y anexos.
Lgica binaria: - http://platea.pntic.mec.es/~lgonzale/tic/binarios/logica.html#Funci%F3n_NOREX - http://forums.cisco.com/CertCom/game/binary_game_page.htm - http://www.disfrutalasmatematicas.com/numeros/binario-decimal-hexadecimal-conversor.html - http://es.slideshare.net/jcarlostecnologia/electronica-digital-4-eso-presentation - Fundamentos de sistemas digitales (7ma edicin) Captulo 3 Thomas L. Floyd, Prenteci Hall, 2000 - Principios del diseo digital Capitulo 3 Daniel D. Gajski, Prenteci Hall, 1997 Lenguaje maquina: - http://www.casadellibro.com/libro-fundamentos-de-la-programcion/9788448161118/1200238 Grficos e imgenes: http://www.google.com.pe/imgres?q=logica+binaria&um=1&hl=es&sa=N&biw=1152&bih=763&tbm=isch&tbnid=3x OO2bdVUbq2JM:&imgrefurl=http://elreporteespecial.com.ar/adios-a-los-ceros-y-unos-se-viene-el-chipprobabilistico/&docid=hwE0KHDNRo6EaM&imgurl=http://elreporteespecial.com.ar/wpcontent/uploads/2010/08/c%2525C3%2525B3digo-binario.jpg&w=500&h=375&ei=P8tjUIq6Co-m9gTly4FQ&zoom=1
- http://www.blogcurioso.com/quien-invento-el-sistema-binario-para-las-computadoras/
adderly_157@hotmail.com
Pgina 37 de 37