• No se han encontrado resultados

02 Introducción

N/A
N/A
Protected

Academic year: 2020

Share "02 Introducción"

Copied!
20
0
0

Texto completo

(1)

Introducción a

Introducción a

la programación

(2)

Un algoritmo es un método para resolver

problemas.

¿Qué es un

¿Qué es un

algoritmo?

algoritmo?

(3)

La programación de computadoras es el arte

de hacer que una computadora haga lo que

nosotros queramos, mediante la escritura de

un programa de computación.

¿Qué es

¿Qué es

(4)

Un programa de computación es simplemente un

conjunto de instrucciones que le dicen a la

computadora cómo realizar una tarea en

particular. Es parecido a una receta: un grupo de

instrucciones que le dicen al cocinero cómo

preparar un determinado plato. Describe los

ingredientes (los datos) y la secuencia de pasos

(la funcionalidad) necesarios para convertir los

ingredientes en una rica torta, un programa tiene

un concepto muy similar.

¿Qué es

¿Qué es

programar?

programar?

(5)

Es el lenguaje que nos permite escribir

instrucciones al computador y que este la

entienda.

Es una notación para describir programas y

estructuras de datos.

¿Qué es un lenguaje

¿Qué es un lenguaje

(6)

.

 de máquina

 ensamblador Lenguajes de bajo nivel

 interpretados

 compilados Lenguajes de alto nivel

Clasificación

Clasificación

de los

de los

lenguajes

lenguajes

(7)

De máquina

De máquina

Es el lenguaje nativo de la computadora, contiene sólo unos y ceros (1 y 0), los cuales forman las instrucciones.

Ensamblador

Ensamblador

Es un lenguaje de etiquetas, donde cada instrucción se corresponde con una instrucción en lenguaje de máquina.

Clasificación

Clasificación

de los

de los

(8)

Lenguajes de alto nivel

Lenguajes de alto nivel

Son aquellos lenguajes semejantes al lenguaje natural, donde cada instrucción es una o más instrucciones en lenguaje ensamblador o de máquina.

Clasificación de los

Clasificación de los

lenguajes

lenguajes

(9)

Ejemplos de

Ejemplos de

lenguajes

lenguajes

Lenguaje C

Lenguaje C Lenguaje EnsambladorLenguaje Ensamblador Lenguaje máquinaLenguaje máquina

main MiPrograma {

printf("Hola"); }

ADD ACUM, i CAR AUX, i

STZ CONTINUA RES ACUM, j MOVE X, Y

(10)

Programación imperativa o

Programación imperativa o

procedimental

procedimental

El programador le debe indicar al computador a cada momento lo que debe hacer. Ejemplos: C, Pascal, Fortran, Cobol, PLI. El programa se debe estructurar así:

Encabezamiento del programa Declaraciones: variables y tipos.

Cuerpo: serie de instrucciones que el computador ha

de seguir para la resolución del problema.

Son lenguajes orientados a instrucciones. El diseño de estos lenguajes está influido en gran parte por la máquina de Von Neumann.

Estilos de

Estilos de

programación

programación

de alto nivel

de alto nivel

(11)

Programación

Programación

estructurada

estructurada

Los problemas se dividen en subproblemas más sencillos y estos son resueltos por separado para lograr en conjunto una simplificación de la tarea a programar.

Estilos de

Estilos de

programación

programación

de alto nivel

(12)

Programación orientada a objetos

Programación orientada a objetos

(POO)

(POO)

Forma especial de programar mas cercana a como expresaríamos las cosas en la vida real, se basa en objetos que no son mas que cosas. (Métodos, propiedades, objetos).

Las clases son implementaciones de objetos. Esto quiere decir que la definición de un objeto es la clase. Cuando programamos un objeto y definimos sus características y funcionalidades en realidad lo que estamos haciendo es programar una clase.

Estilos de

Estilos de

programación

programación

de alto nivel

de alto nivel

(13)

Programación orientada a objetos

Programación orientada a objetos

(POO)

(POO)

Ejemplo

Carro tiene una serie de características: color, tamaño, modelo, marca. Además tiene una serie de funcionalidades: arrancar, retroceder, parar, etc. En un esquema de POO: carro es el objeto, características son las propiedades y los métodos serian las

Estilos de

Estilos de

programación

programación

de alto nivel

(14)

Programación lógica (Prolog, Lisp)

Programación lógica (Prolog, Lisp)

Forma de programar basado en hechos y reglas, estas se pueden almacenar o no en una base de datos.

Ejemplos: Sistemas Expertos, Inteligencia artificial, juegos.

Programación funcional (Haskell)

Programación funcional (Haskell)

Basado en estructuras de listas. Ejemplos: demostración de teoremas matemáticos, IA, planes de acción para robots, etc.

Estilos de

Estilos de

programación

programación

de alto nivel

de alto nivel

(15)

Los

traductores

de

lenguaje

son

programas que traducen a código de

máquina (1 y 0) los programas escritos en

lenguaje de alto nivel.

Interpretadotes

Compiladores

(16)

Interpretador

Interpretador

Es un programa que convierte sentencia por sentencia de un programa o código fuente, lo comprueba y lo

ejecuta.

Interprete Datos

Programa

fuente Resultados

Traductores

Traductores

(17)

Compilador Compilador

Programa que se encarga de traducir el programa o código fuente a a programa o código de máquina o ejecutable. Para poder utilizar un programa escrito en lenguaje compilado hay que seguir como mínimo dos fases:

Fase o tiempo de compilación: aquí se corrigen los fallos de la gramática del código fuente y se pasa en un bloque a código máquina. Esta operación se realiza una vez y se guarda en memoria para luego ejecutarlo directamente.

Fase o tiempo de ejecución: se ejecuta el programa

(18)

Edición del programa fuente

Programa fuente

Compilador

Errores Programa objeto Encuadernador

Librerías

Programa ejecutable no

si

Traductores

Traductores

Proceso de compilación

Proceso de compilación

(19)

Diferencias entre interpretador y

Diferencias entre interpretador y

Compilador

Compilador

El compilador traduce y ejecuta todo el programa en un bloque,

mientras que el intérprete realiza esta función sentencia por sentencia.

El compilador es más eficaz al obtener el código máquina, pero

por el contrario, este código ocupa mucha más memoria que el interpretado

En un principio el intérprete era el método de compilación más

utilizado, ya que la memoria era escasa, pero gracias a que los

ordenadores de hoy en día poseen mucha más memoria, podemos utilizar el compilador para obtener un código más eficaz.

(20)

La sintáxis nos dice cuál es la forma correcta de escribir los programas en un lenguaje determinado. Es lo primero que tenemos que conocer de un lenguaje antes de empezar a usarlo.

La semántica especifica el significado de lo que podemos

construir con este lenguaje.

Sintáxis y

Sintáxis y

semántica

semántica

Referencias

Documento similar

• Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un microprocesador por lo que se pueden crear segmentos de código difíciles y/o

gital de zonas forestales, a partir de un estudio piloto en una zona de marcado carácter fores- tal, atendiendo a las distintas categorías de cu- bierta del suelo

Aparte de los posibles problemas técnicos que presenta un análisis de correlaciones (RePass 1976), lo que en ningún momento se plantea Converse es que la ausencia de

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

(c) Consejo Superior de Investigaciones Científicas Licencia Creative Commons 3.0 España

En este sentido, Handel, De Soto y London (1968), máximos ex- ponentes de la tesis de que 10s sujetos utilizan imagenes espaciales para resolver problemas de deducción,

En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones

Los primeros pasos en este camino de desarrollo de lenguajes fue la creación de los lenguajes ensamblador, que no eran más que una verbalización del código