Download - T1 - Conceptos basicos de la programacion

Transcript
Page 1: T1 - Conceptos basicos de la programacion

Tema - 1Conceptos básicos de la

programación

Page 2: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 2

1.1. Ordenador y periféricos

• Un ordenador:

• Muy bonito pero, ¿qué hace realmente?

Page 3: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 3

1.1. Ordenador y periféricos

• Un ordenador sólo es capaz de realizar operaciones básicas:– Aritmética entera: suma, resta, multiplicación, etc.– Comparar valores numéricos o alfanuméricos.– Guarda y extrae información.

• Combinación de estas operaciones + potencia de cálculo = procesos muy complejos

Page 4: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 4

1.1. Ordenador y periféricos

• Usuario: tiene los datos para resolver un problema X, pero no sabe hacerlo (outputs).

• Ordenador: sabe resolver un problema X, pero no tiene datos (inputs).

• Programador: interlocutor entre usuario y ordenador.

Page 5: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 5

1.1. Ordenador y periféricos

• El ordenador depende del programador. Éste le indica qué debe hacer y cómo.

Proceso previo de razonamiento lógico

Programa

Page 6: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 6

1.1. Ordenador y periféricos

• El ordenador recoge datos de entrada, los procesa, y devuelve datos de salida.

• Los periféricos permiten al usuario introducir los datos en el ordenador. Hay 4 categorías:– Entrada: teclado, ratón, escáner…– Salida: pantalla, impresora…– Entrada y salida: disquette, cd, dvd…– Comunicación: modem, tarjeta de red…

Page 7: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 7

1.2. Bits, bytes y palabras

• Bit: unidad de memoria más pequeña del ordenador (0, 1).– Un bit sólo no puede guardar mucha información.

Para ello se combinan grandes cantidades de ellos.• Byte: 8 bits. Permite guardar 28=256

combinaciones de 0 y 1.• Palabra: unidad de memoria natural del

ordenador (32 o 64 bits). Se pueden encadenar palabras.

Page 8: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 8

1.3. Lenguajes de programación

• Conjunto de símbolos y caracteres combinados entre sí siguiendo unas reglas de sintaxis.

• El ordenador traduce estos símbolos al único lenguaje que entiende: señales eléctricas (0, 1).

Page 9: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 9

1.3. Lenguajes de programación

• Lenguajes de bajo nivel: más cercanos a la máquina que al programador.– Lenguaje máquina: entendible por el ordenador.

Se basa en bits (0, 1). Cada ordenador tiene su lenguaje máquina propio. Un programa en este lenguaje no es portable de un ordenador a otro con distinta arquitectura.

Page 10: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 10

1.3. Lenguajes de programación

• Lenguajes de bajo nivel: más cercanos a la máquina que al programador.– Lenguaje ensamblador: evolución del anterior. Se

basa en abreviaturas de instrucciones. Exigen conocer la arquitectura del ordenador. Un programa en este lenguaje no es portable de un ordenador a otro con distinta arquitectura. La ejecución de estos programas es muy rápida y optimizan el uso de memoria.

Page 11: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 11

1.3. Lenguajes de programación

• Lenguajes de alto nivel: más cercanos al programador que a la máquina. Son independientes de la arquitectura del ordenador. Los programas en este lenguaje se pueden ejecutar en todos los ordenadores. Éstos requerirán de unos programas traductores para pasar el programa a código de bajo nivel.

Page 12: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 12

1.3. Lenguajes de programación

• Cronología de algunos lenguajes de programación

Page 13: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 13

1.4. Elaboración de un programa

• Ciclo de vida de un programa

Page 14: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 14

1.4. Elaboración de un programa

• Análisis: estudio del problema a resolver (necesidades) y especificación a muy alto nivel.

• Diseño: división del problema en grupos funcionales diferenciados y realización de algoritmos (en pseudocódigo). Elección de los recursos necesarios (ordenadores, periféricos, S.O., lenguajes de programación…).

Page 15: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 15

1.4. Elaboración de un programa

• Codificación: traducción de los algoritmos, utilizando los recursos elegidos en la fase anterior, y realizando reiteradas pruebas que garanticen la máxima calidad del programa.

• Explotación: instalación del programa con las herramientas necesarias. Documentación y manuales desarrollados en las fases previas.

Page 16: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 16

1.4. Elaboración de un programa

• Mantenimiento: corrección y mejoras del programa durante su vida útil. Adición de nuevas funcionalidades, que requerirán retomar el ciclo de vida en cualquiera de las fases. Fundamental buena documentación de todas las fases anteriores.

Page 17: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 17

1.5. Traductores

• El programa traductor transforma el programa de lenguaje de alto nivel a lenguaje máquina, actuando además como corrector.– Ensambladores:• Lenguaje ensamblador Lenguaje máquina

Page 18: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 18

1.5. Traductores

– Intérpretes: procesa instrucción a instrucción, verificando la sintaxis, traduciendo a código máquina y ejecutándola.

Page 19: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 19

1.5. Traductores

– Compiladores: traducen un programa en lenguaje de alto nivel a código máquina. Analiza, traduce y ejecuta todo el programa. No es necesario compilar el programa cada vez que se desea ejecutar.

Page 20: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 20

1.5. Traductores

• Intérprete VS compilador:– Ejecución más rápida en programas compilados.– Búsqueda de errores más fácil en lenguajes interpretados.

Se puede modificar el programa mientras se ejecuta.– Con el intérprete, un programa puede ejecutarse en

sistemas diferentes (PC, PlayStation 3…).• Lenguajes compilados:– ADA, C, C++, Cobol, Fortran, Pascal…

• Lenguajes interpretados:– Basic, MATLAB, PHP…

Page 21: T1 - Conceptos basicos de la programacion

PROGRAMACIÓN – Daniel Santiago 21

1.5. Traductores

• Proceso de compilación:– Edición: se escribe el programa en el lenguaje de

alto nivel elegido.– Compilación: se verifica la sintaxis y se traduce a

código máquina. Si hay errores, el compilador nos avisará.

– Montaje (linkado): combina los diferentes módulos objeto y librerías para crear un ejecutable.

– Ejecución: se invoca al ejecutable.