Upload
raul-gutierrez
View
213
Download
1
Embed Size (px)
Citation preview
Introduccin a la ProgramacinGrado en Ingeniera Informtica
Teora .- Curso 2010-2011
Contenido 1 - Introduccin
Contenido
1.1.- Conceptos bsicos y definiciones
1.2.- Programacin de Ordenadores y Lenguajes de Programacin
1.2.1.- La Programacin de ordenadores
2
1.2.2.- Objetivos de la programacin1.2.3.- Lenguajes de programacin
1.3.- Traductores: Compiladores e Intrpretes
1.4.- Paradigmas de Programacin
Contenido 1.- Introduccin
1.1 Conceptos bsicos y definiciones
INFORMTICA : INFORmacin y autoMTICA.Conjunto de conocimientos cientficos y tcnicas que hacen posibleel tratamiento automtico de la informacin por medio deordenadores.
ORDENADOR
3
ORDENADOR
Mquina capaz de aceptar unos datos de entrada, efectuar con ellosoperaciones lgicas y aritmticas y proporcionar la informacinresultante a travs de un medio de salida; sin intervencin de unoperador humano y bajo el control de un programa de instruccionespreviamente almacenado
Contenido 1.- Introduccin
1.1 Conceptos bsicos y definiciones
DATO (Entrada/Salida)Conjuntos de smbolos utilizados para expresar o representar unvalor numrico, un hecho, un objeto o una idea; en la formaadecuada para ser objeto de tratamiento.
4
CODIFICACION
Transformacin que representa los elementos de un conjuntomediante los de otro, de forma que a cada elemento del primerconjunto le corresponda un elemento distinto del segundo.(CODIGO BINARIO: 0 y 1)
Contenido 1.- Introduccin
1.1 Conceptos bsicos y definiciones
BIT : Unidad elemental de informacin (0 y 1) BYTE : Nmero de bits necesarios para almacenar un carcter
(generalmente 8).1 KB = 210 bytes = 1024 bytes 103 bytes1 MG = 210 KBytes= 220 bytes 106 bytes1 GB = 210 MBytes= 230 bytes 109 bytes
5
1 GB = 210 MBytes= 230 bytes 109 bytes1 TB = 210 GBytes= 240 bytes 1012 bytes
HARDWARESoporte fsico de un ordenador, conjunto de circuitos electrnicos,cables, carcasas y otros elementos fsicos.
SOFTWAREConjunto de programas ejecutables por el ordenador. (Siendo unprograma un conjunto ordenado de instrucciones)
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.1.- La Programacin de OrdenadoresConceptos:
ALGORITMO: descripcin de los pasos necesarios para resolver unproblema.
6
PROGRAMA: algoritmo escrito en un lenguaje de programacin. PROGRAMACIN: Tarea de desarrollo de programas
Pequea escala: Programacin Gran escala: Ingeniera del Software
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Objetivos de la Programacin Correccin: Antes de desarrollar un programa debe especificarse
con toda claridad cul es el funcionamiento correcto del mismo. Claridad: Es fundamental que sus descripciones sean claras y
fcilmente legibles.
7
Eficiencia: una tarea de tratamiento de informacin puede serprogramada de muy diferentes maneras. Los programas eficientesaprovecharn mejor los recursos disponibles.Debe emplearse una metodologa de programacin apropiada que
satisfaga estos objetivos
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Lenguajes de Programacin
Un lenguaje de programacin es un lenguaje que nos permite comunicarnos con un ordenador.
Un lenguaje de programacin es una notacin para describir
8
Un lenguaje de programacin es una notacin para describir algoritmos y estructuras de datos.
Un lenguaje de programacin es una convencin para escribir descripciones que pueden ser evaluadas.
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Lenguajes de ProgramacinClasificacin de los lenguajes de Programacin
Con respecto a su nivel:
9
Lenguajes mquina Lenguajes de bajo nivel o ensambladores Lenguajes de alto nivel
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Lenguajes de ProgramacinClasificacin de los lenguajes de Programacin Lenguajes mquina: Las instrucciones son cadenas de ceros y unos. (cdigo intermedio:
octal o hexadecimal). Los datos se utilizan por medio de las direcciones de memoria
10
Los datos se utilizan por medio de las direcciones de memoriadonde se encuentran.
Las instrucciones realizan operaciones muy simples. Existe muy poca versatilidad para la redaccin de las instrucciones. El lenguaje depende y est ligado ntimamente a la CPU de la
computadora. No pueden incluirse comentarios que faciliten la legibilidad del
cdigo.
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Lenguajes de ProgramacinClasificacin de los lenguajes de Programacin Lenguajes Ensambladores
Instrucciones con cdigos de operacin en notacin simblica o
11
Instrucciones con cdigos de operacin en notacin simblica onemotcnica, en vez de cdigos numricos.
Direcciones simblicas de memoria, en lugar de direcciones binariasabsolutas.
Permiten incluir lneas de comentarios entre lneas de instrucciones.
Contenido 1.- Introduccin
1.2 Programacin de ordenadores y Lenguajes deProgramacin
1.2.2.- Lenguajes de ProgramacinClasificacin de los lenguajes de Programacin Lenguajes de alto nivel Son lenguajes simblicos orientados al problema y no a la mquina
en la que se ejecutan. Operaciones expresadas en caracteres numricos, alfanumricos y
12
Operaciones expresadas en caracteres numricos, alfanumricos yespeciales
Es posible definir gran nmero de variables y elegir el identificadordeseado
Instrucciones potentes y funciones diversas Versatilidad en la definicin de Instrucciones Permiten incluir comentarios Independencia de la CPU
Contenido 1.- Introduccin
1.3.- Traductores. Compiladores e Intrpretes
Cualquier programa escrito en un lenguaje distinto dellenguaje mquina debe ser traducido para poder serejecutado en un ordenador.
13
TRADUCTORES:
Compiladores
Intrpretes
Contenido 1.- Introduccin
1.3.- Traductores. Compiladores e Intrpretes
COMPILADORES Programa fuente Programa objeto
Etapas de la Compilacin: Anlisis lexicogrfico
14
Anlisis sintcticoAnlisis semnticoGeneracin de cdigo intermedioOptimizacinGeneracin de cdigo
Contenido 1.- Introduccin
1.3.- Traductores. Compiladores e Intrpretes
INTRPRETES Ejecutan sentencia a sentencia tantas veces como estas
se repitan
15
Optimizacin no general
Se traduce cada vez que se ejecuta
Contenido 1.- Introduccin
1.3.- Traductores. Compiladores e Intrpretes
COMPARACIN Se usa un intrprete cuando el nmero de veces que va a ejecutarse
es bajo y no hay problemas de velocidad Un programa bajo un intrprete puede ser interrumpido en cualquier
momento y ser depurado. Continuar ejecutndose por la siguienteinstruccin.
16
instruccin. Los compiladores suelen incorporar herramientas de depuracin para
facilitar la localizacin de errores. Los compiladores deben traducir nuevamente todo el programa cada
vez que se corrige un error. Los lenguajes compilados consiguen ms eficiencia ya que optimizan a
nivel global Los intrpretes resultan ms pedaggicos para aprender a programar.
Contenido 1.- Introduccin
1.4.- Paradigmas de Programacin
Imperativo: Cmo Declarativo: Qu
PARADIGMAS DE LOS LENGUAJES
17 Contenido 1.- Introduccin
PARADIGMA IMPERATIVO
PARADIGMA DECLARATIVO
PROG. ESTRUCTURADA
PROG.ORIENTADA A
OBJETOSPROG.
DISTRIBUIDAPROG.
LOGICAPROG.
FUNCIONAL
PROG.BASES DE
DATOS