Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Teoria1 PDF
Teoria1 PDF
Teoria1 PDF
Programación I
toni.navarrete@upf.edu
jesus.ibanez@upf.edu
Ing. Informática Programación I Bloque 1
Profesores teoría
Toni Navarrete
e-mail: toni.navarrete@upf.edu
despacho: 371
Jesús Ibáñez
e-mail: jesus.ibanez@upf.edu
despacho: 381
Ing. Informática Programación I Bloque 1
Introducción
Filosofía: aprender a programar programando
Web de la asignatura:
http://www.tecn.upf.es/~tnavarrete/programacio1/
Bibliografía básica
El plan Docente
Ing. Informática Programación I Bloque 1
Sesiones de teoría
Sesiones de ejercicios (seminarios)
Sesiones de prácticas
Ejercicios de auto-evaluación
Consultar calendario!
Ing. Informática Programación I Bloque 1
Importante!
Introducción
ALU CU
RAM
Registros
CPU
Lenguaje máquina
Lenguaje máquina
Lenguaje ensamblador
Lenguaje ensamblador
Desventaja:
Hay que traducirlo a lo que la máquina
entiende (código máquina): más lento
Ing. Informática Programación I Bloque 1
Niveles
LOAD A R1
LOAD B R2
Lenguajes Ensambladores
ADD R1 R2
STORE C R1
000110011100…
Lenguajes Máquina 110100010111…
100101100101…
Ing. Informática Programación I Bloque 1
Compilador vs intérprete
Compilador
Intérprete
Compilación
#include <stdio.h>
main()
{ Compilador
printf("Hola mundo!");
} errores
Código fuente
a.out
a.exe
Código máquina
Ing. Informática Programación I Bloque 1
Compilación
Interpretación
..............
........ Coge una
instrucción
.................... Intérprete
..........
...
...............
La traduce a
código
Código fuente máquina y la
ejecuta
0011001010011…
Ing. Informática Programación I Bloque 1
Interpretación
Lenguaje C
Historia
Primer programa
#include <stdio.h>
main()
{
printf("Hola mundo!");
}
Ing. Informática Programación I Bloque 1
Comentando el código
# include <stdio.h>
/* la línia anterior ha d’estar sempre que fem operacions de
lectura o escriptura. Tot i això, hi ha compiladors que no ho
necessiten*/
main ()
{ //el codi del programa anirà entre les dues claus
printf("Hola mundo!"); //això escriu “Hola mundo!” per pantalla
}
Ing. Informática Programación I Bloque 1
Compilación
Librerías
de C
gcc hola.c
Ing. Informática Programación I Bloque 1
Diseño de programas
Problema Programa
Algoritmo
Bloques 2 y 3