Professional Documents
Culture Documents
FUNDAMENTOS Y METODOLOGÍA
DE LA PROGRAMACIÓN
Página 1
INFORMÁTICA Y COMPUTADORA
Informática (Ciencia de la computación)
Conjunto de conocimientos cientííficos y teí cnicas
que hacen posible el tratamiento automaí tico
de la informacioí n por medio de ordenadores
Computadora
Maí quina electroí nica, analoí gica o digital,
dotada de una memoria de gran capacidad
y de meí todos de tratamiento de la informacioí n,
capaz de resolver problemas matemaí ticos y loí gicos
Luis Hernández Yáñez
Software
Programas, instrucciones
y reglas informaí ticas
para ejecutar tareas
en una computadora
Luis Hernández Yáñez
Programa
Secuencia de instrucciones
Instrucciones que entiende la computadora
Y que persiguen un objetivo: ¡resolver un problema!
Luis Hernández Yáñez
Memoria
Memoria
temporal
temporal
Dispositivos
Dispositivos Dispositivos
C.P.U.
C.P.U.
de
de entrada
entrada de salida
Teclado Monitor
Ratón Impresora
Escáner Altavoz
Luis Hernández Yáñez
Táctil Almacenamiento …
… permanente
Dispositivos
Dispositivos de
de E/S
E/S
A.L.U.
A.L.U.
Unidad
Unidad Aritmeí
Aritmeíttico-Loí
ico-Loígica
gica
Memoria
Memoria
Luis Hernández Yáñez
Unidad
Unidad de
de Control
Control
Dirección TB
Dirección
1024 1000
221010 == 1024 1000
Lenguaje máquina
Coí digos hexadecimales que representan instrucciones,
registros de la CPU, direcciones de memoria o datos
Instrucción Significado Lenguaje de bajo nivel
A0 2F Acceder a la celda de memoria 2F Dependiente de la máquina
3E 01 Copiarlo el registro 1 de la ALU Programación difícil
A0 30 Acceder a la celda de memoria 30
Luis Hernández Yáñez
Mayor legibilidad:
READ 2F Coí
Coídigo
digo fuente
fuente
REG 01 (lenguaje
(lenguaje ensamblador)
ensamblador)
READ 30
REG 02
ADD Programa
Programa
ensamblador
ensamblador
WRITE 31
(lenguaje
(lenguaje maí
maíquina)
quina)
programas completos
Haskell
Haskell
Lisp
Lisp Scheme
Scheme 1987
1987
1958
1958 1975
1975
Logo
Logo
1968
1968
IBM PC (Wikipedia)
1991 Sistema operativo Linux
Siglo XXI
2001 Windows XP
Mac OS X
2002 Mozilla Firefox
2007 iPhone
Luis Hernández Yáñez
Entrada
Entrada Programa
Programa Salida
Salida
Planificacioí
Planificacioínn Recursos necesarios, presupuesto, plan, …
Anaí
Anaílisis
lisis ¿Queí ?
Disenñ
Disenñ oo ¿Coí mo?
Programacioí
Programacioínn Implementacioí n
Prueba
Prueba yy depuracioí
depuracioínn
Luis Hernández Yáñez
Mantenimiento
Mantenimiento
int main()
{
cout << "Hola Mundo!" << endl;
// Muestra Hola Mundo!
return 0;
Luis Hernández Yáñez
Subprograma
Subprograma int
int main()
main()
{{ Dato
Dato
Instrucción
Instrucción cout
cout <<
<< "Hola
"Hola Mundo!"
Mundo!" <<<< endl;
endl;
//
// Muestra
Muestra Hola
Hola Mundo!
Mundo!
Comentario
Luis Hernández Yáñez
Comentario
Dato
Dato
Instrucción
Instrucción return
return 0;
0;
}}
Semaí ntica
— Significado de cada elemento del lenguaje
¿Para queí sirve?
Luis Hernández Yáñez
int main()
// main() es donde empieza la ejecución
{
cout << "Hola Mundo!" << endl; // Muestra Hola Mundo!
Luis Hernández Yáñez
return 0;
}
Variable
Instrucción
coutOperador
<< "Hola Mundo!"Operador
<< endl;
Datos literales
Luis Hernández Yáñez
Instrucción returnNúmero
0;
} Cuerpo de la función
Instalacioí
Instalacioínn yy uso:
uso:
Seccioí
Seccioínn
Herramientas
Herramientas de
de desarrollo
desarrollo
en
en el
el Campus
Campus Virtual
Virtual
Luis Hernández Yáñez
Hola
Hola Mundo!
Mundo!
Cargador hola.exe
(ejecutable)
Luis Hernández Yáñez
Instalacioí
Instalacioínn yy uso:
uso:
Seccioí
Seccioínn
Herramientas
Herramientas de
de desarrollo
desarrollo
en
en el
el Campus
Campus Virtual
Virtual
Luis Hernández Yáñez
Instalacioí
Instalacioínn yy uso:
uso:
Seccioí
Seccioínn
Herramientas
Herramientas de
de desarrollo
desarrollo
en
en el
el Campus
Campus Virtual
Virtual
Luis Hernández Yáñez
Inicio
Inicio
Pantalla
Pantalla (cout)
(cout)
_ Hola
Hola Mundo!
Mundo!
cout << "Hola Mundo!" << endl; _
Muestra Hola Mundo!
en la pantalla y salta de líínea
return 0;
Devuelve 0 como coí digo
Luis Hernández Yáñez