computadora, como el lenguaje mquina, proporcionan las instrucciones a la computadora en bits P. e.: 1101101010101001 Lenguajes de programacin Creacin de lenguajes ensambladores con tal de hacer la tarea del programador ms fcil Regidos por: Nemotcnicos o Nemnicos Lenguajes de programacin Lenguaje ensamblador Lenguaje mquina Significado ADD 00100100 Sumar SUB 00100010 Restar MULT 00100110 Multiplicar STO 00100010 Almacenar Lenguajes de programacin Detalles: Las instrucciones deben traducirse primero a lenguaje mquina. Un programa llamado ensamblador traduce el lenguaje ensamblador a instrucciones en lenguaje mquina. Lenguajes de programacin Pensar en trminos de instrucciones de mquina con la dificultad que eso lleva consigo:
Lenguajes de programacin Lenguajes de alto nivel Prximos a los lenguajes hablados (ingls particularmente) Necesidad de programas Traductores: Compiladores (C, C++) Lenguaje intermedio (Java)*
*Cul es ese lenguaje intermedio que Java usa (pregunta para el departamental) Lenguajes de programacin + Conceptos 1 El procesador debe ser capaz de interpretar el algoritmo, lo que significa: Comprender las instrucciones de cada paso, realizar las operaciones correspondientes.
Con un lenguaje de programacin escribimos un programa Las operaciones que conducen a expresar un algoritmo en forma de programa se llama Programacin Lenguajes de programacin + Conceptos 2 La codificacin es el proceso de traducir un algoritmo en pseudocdigo a un lenguaje de programacin.
El algoritmo escrito en un lenguaje de programacin se denomina cdigo fuente Lenguajes de programacin
Lenguaje de programacin -> Lenguaje mquina Cdigo -> Cdigo mquina Lenguajes de programacin Cosas comunes: Instrucciones de I/O Instrucciones de clculo Instrucciones de control Lenguajes de programacin El proceso de traduccin de un programa fuente, escrito en un lenguaje de alto nivel a un lenguaje mquina comprensible por la computadora, se realiza mediante programas llamados traductores. Compiladores Intrpretes Lenguajes de programacin + Conceptos 3 Un intrprete es un traductor que toma un programa fuente, lo traduce y, a continuacin, lo ejecuta. Lenguajes de programacin Un compilador es un programa que traduce los programas fuente escritos en lenguaje de alto nivel a lenguaje mquina. La traduccin del programa completo se realiza en una sola operacin llamada compilacin Lenguajes de programacin La compilacin es el proceso de traduccin de programas fuentes a programas objetos
El programa objeto obtenido de la compilacin ha sido normalmente traducido a cdigo mquina Lenguajes de programacin Pasos: Se escribe el programa fuente con un editor Se introduce el programa fuente a la memoria Se compila el programa con el compilador Se verifica y corrigen errores de compilacin (listado de errores) Se obtiene el programa objeto El enlazador (linker) obtiene el programa ejecutable Se ejecuta el programa y si no existen errores, se tendr la salida del programa EVALUACION DE EXPRESIONES El alumno convertir expresiones algebraicas, aritmticas y lgicas a expresiones algortmicas, considerando la jerarqua de operadores, para realizar las tareas solicitadas. Las Variables y Constantes pueden ser procesadas utilizando operaciones y funciones adecuadas a sus tipos. Smbolo Operacin Tipo de Resultado ^, ** * / + - div ( \ ) Mod Exponenciacin Multiplicacin Divisin Suma Resta Divisin entera Mdulo (residuo) Entero o Real Entero o Real Real Entero o Real Entero o Real Entero (Cociente de la divisin) Entero Operadores aritmticos Para poder realizar operaciones aritmticas entre operandos: nmeros, constantes o variables, necesitamos de operadores aritmticos. Smbolo Significado < > <= >= = < > Menor que Mayor que Menor o igual que Mayor o igual que Igual que Diferente de Operadores Relacionales El trmino relacional se refiere a la relacin entre unos valores y otros. Los operadores relacionales son operadores que permiten comparar dos operandos (numricos, alfanumricos, constantes o variables) y devuelven los dos valores lgicos tpicos cierto y falso (True y False). Smbolo Significado AND OR NOT Operador Y (conjuncin) Operador O (disyuncin) Operador de Negacin Operadores Lgicos Los operadores lgicos son operadores que permiten formular condiciones complejas a partir de condiciones simples. La palabra lgico se refiere a las formas en que las relaciones anteriores pueden conectarse entre s, siguiendo la lgica formal.
Valor 1 Operador Valor 2 Resultado V AND V V F AND V F V AND F F F AND F F V OR V V F OR V V V OR F V F OR F F NOT F V NOT V F Tabla de Verdad
Las expresiones que tienen dos o ms operandos requieren unas reglas matemticas que permitan determinar el orden de las operaciones, se denominan reglas de prioridad o precedencia y son:
Jerarqua de los Operadores Operadores Jerarqua ( ) ^ *, /, div, mod +, - =, < >, <, >, <=, >=, NOT AND OR (mayor)
(menor) La jerarqua de los operadores (aritmticos, relacionales y lgicos). En algunos lenguajes como Basic, los operadores * y /, tienen mayor prioridad que los operadores div y mod. 9 + 7 * 8 36 / 5 1 9 + 56 36 / 5 2 9 + 56 7.2
3 65 7.2 4 57.8 7 * 10 15 / 3 * 4 + 9 1 2 70 5 * 4 + 9 3 70 20 + 9 4 50 + 9 5 59 Evaluar las siguientes expresiones aritmticas: METODOLOGA DE LA PROGRAMACIN 9 + 7 * 8 36 / 5 7 * 10 15 / 3 * 4 + 9 Evaluar las siguientes expresiones aritmticas: Convertir las siguientes expresiones aritmticas a expresiones algortmicas. m + 1 n m + n . p-q m + n p-q m/n + 1 m+n/(p-q) (m+n)/(p-q) Sean los valores de A=3, B=4 y C=2 determine el resultado de la expresin.
((A * B) < (B + C)) AND (A = C) ((3 * 4) < (4 + 2)) AND (3 = 2) (12 < 6) AND (3 = 2) Falso and Falso _FALSO__
Sean los valores de A=2, B=5, C=3 y D=5 determine el resultado de la expresin. Sea este falso o verdadero.
((A + B) > C) OR ((B / D > B)) ((2 + 5) > 3) OR ((5 / 5 > 5)) (7 > 3) OR (1 > 5) Verdadero OR Falso _VERDADERO__
Definicin de funciones
Las funciones se crearon para evitar tener que repetir constantemente fragmentos de cdigo. Una funcin podra considerarse como una variable que encierra cdigo dentro de si. Por lo tanto cuando accedemos a dicha variable (la funcin) en realidad lo que estamos es diciendo al programa que ejecute un determinado cdigo predefinido anteriormente. Todos los lenguajes de programacin tienen algunos elementos de formacin primitivos para la descripcin de los datos y de los procesos o transformaciones aplicadas a estos datos (tal como la suma de dos nmeros o la seleccin de un elemento que forma parte de una coleccin). Estos elementos primitivos son definidos por reglas sintcticas y semnticas que describen su estructura y significado respectivamente.