Beruflich Dokumente
Kultur Dokumente
1
Grado en Ingeniería Informática
Grado en Ingeniería del Software
Grado en Ingeniería de Computadores
Computadora
Máquina electrónica, analógica o digital,
dotada de una memoria de gran capacidad
y de métodos de tratamiento de la información,
capaz de resolver problemas matemáticos y lógicos
Luis Hernández Yáñez
Software
Programas, instrucciones
y reglas informá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
temporal
Dispositivos Dispositivos
C.P.U.
de entrada de salida
Teclado Monitor
Ratón Impresora
Escáner Altavoz
Luis Hernández Yáñez
Táctil Almacenamiento …
… permanente
Dispositivos de E/S
A.L.U.
Unidad Aritmético-Lógica
Memoria
Luis Hernández Yáñez
Unidad de Control
Bus 05 1 Bit = 0 / 1
de 06 1 Byte = 8 bits = 1 carácter
datos 07
1 Kilobyte (KB) = 1024 Bytes
08
1 Megabyte (MB) = 1024 KB
...
1 Gigabyte (GB) = 1024 MB
1 Terabyte (TB) = 1024 GB
1 Petabyte (PB) = 1024 TB
Luis Hernández Yáñez
Dirección
210 = 1024 1000
Lenguaje máquina
Có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 Código fuente
REG 01 (lenguaje ensamblador)
READ 30
REG 02
ADD Programa
WRITE 31 ensamblador
(lenguaje máquina)
FORTRAN C#
1954 CPL C
2000
1963 1971
Python
ALGOL Pascal Modula 1991
1958 1970 1975
BASIC
1964
Ada Eiffel
1979 1986
Simula
Fuente: 1964 Smalltalk
http://www.levenez.com/lang/ Ruby
1971 1993
Luis Hernández Yáñez
Haskell
Lisp Scheme 1987
1958 1975
Logo
1968
Lenguaje de programación C
1974 Protocolo TCP. Primera red local
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
Análisis ¿Qué?
Diseño ¿Cómo?
Programación Implementación
Prueba y depuración
Luis Hernández Yáñez
Mantenimiento
#include <iostream>
using namespace std;
int main()
{
cout << "Hola Mundo!" << endl;
// Muestra Hola Mundo!
Luis Hernández Yáñez
return 0;
}
Comentario
Dato
Instrucción return 0;
}
Semántica
— Significado de cada elemento del lenguaje
¿Para qué sirve?
Luis Hernández Yáñez
0 .. 9 002
-
1-34
<numero entero> ::= <signo opcional><secuencia de dígitos>
::= <secuencia de dígitos> ::= <dígito><secuencia de dígitos>
::= 1<secuencia de dígitos> ::= ERROR (- no es <dígito>)
Fundamentos de la programación: Computadoras y programación Página 33
+23 +
-
0 .. 9 +23
1374 +
-
0 .. 9 137 4
1-34 + ?
0 .. 9 1-
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;
}
{
Bloque de código
Instrucción
Número
} Cuerpo de la función
Instalación y uso:
Sección
Herramientas de desarrollo
en el Campus Virtual
Luis Hernández Yáñez
Código objeto de
Enlazador
la biblioteca iostream
Hola Mundo!
Cargador hola.exe
Luis Hernández Yáñez
(ejecutable)
Instalación y uso:
Sección
Herramientas de desarrollo
en el Campus Virtual
Luis Hernández Yáñez
Instalación y uso:
Sección
Herramientas de desarrollo
en el Campus Virtual
Luis Hernández Yáñez
Inicio
Pantalla (cout)
_ Hola Mundo!
cout << "Hola Mundo!" << endl; _
Muestra Hola Mundo!
en la pantalla y salta de línea
return 0;
Devuelve 0 como código
Luis Hernández Yáñez
Reconocimiento (Attribution):
En cualquier explotación de la obra autorizada por la licencia
hará falta reconocer la autoría.
No comercial (Non commercial):
La explotación de la obra queda limitada a usos no comerciales.
Compartir igual (Share alike):
La explotación autorizada incluye la creación de obras derivadas
siempre que mantengan la misma licencia al ser divulgadas.
Luis Hernández Yáñez