Documentos de Académico
Documentos de Profesional
Documentos de Cultura
OBJETIVO
Aprender las diferentes tcnicas para resolucin de problemas mediante algoritmos, para
luego tener la capacidad de plasmarlos mediante el uso de algn lenguaje de programacin.
CONCEPTOS PRELIMINARES
A) Que es una computadora.
B) Organizacin fsica de una computadora (hardware).
C) Los programas (software).
D) Los lenguajes de programacin.
A) Que es una computadora?
Es una maquina electrnica digital capaz de procesar datos a partir de un grupo de
instrucciones denominado programa, proporcionando una informacin resultante.
Qu es un dato?
Es un conjunto de smbolos utilizados para expresar: un valor numrico, un hecho, un objeto
o una idea, para ser objeto de tratamiento. Ejemplo: 25, soltero, cuaderno, grande, etc.
Qu es informacin?
Es la transformacin de los elementos procesados.
Los datos de entrada se convierten en informacin significativa.
B) Organizacin Fsica de la Computadora - HARDWARE
Una computadora necesita:
Aceptar la entrada y visualizar la salida.
Almacenar la informacin en un formato consistente.
Ejecutar las operaciones aritmticas o lgicas.
Monitorizar, controlar y dirigir las operaciones del sistema.
La Unidad de Control
depende
Conjunto de programas que se emplean para operar una computadora. Estos programas
debern encontrarse grabados en un diskdrive o como es frecuente en el disco duro.
Si el S.O. no se encuentra presente, ningn otro programa puede ejecutarse.
El S.O. Es el vinculo entre el usuario y la computadora.
1.1 Tareas del Sistema Operativo:
Da inicio a la sesin del computador proporcionado una interfaz de lnea
de comando o una interfaz grfica.
-
PROG. FUENTE: Programa escrito en lenguaje de alto nivel que no a sido traducido a lenguaje
mquina.
PROG. OBJETO: Programa en lenguaje de mquina, que puede ser ejecutado.
COMPILADOR: Traductor que convierte sentencias de cdigo fuente a cdigo objeto.
INTERPRETE: Traductor que ejecuta un programa lnea por lnea no modificando la forma
original.
PROGRAMA
OBJETO
PROGRAMA
FUENTE
PROGRAMA
EJECUTABLE
ENLACE
COMPILACION
Compilador
Compilador
Compilador
ERROR Y
DIAGNOSTICO
Programa en
Lenguaje
Objeto
Intrprete
Analiza una instruccin fuente y la ejecuta directamente sin generar cdigo objeto.
Intrprete
Intrprete
Lenguaje de
Programa
Fuente
Salida
DATOS
tiene
que
analizar
la
siguiente
preposicin:
Anlisis lxico
El analizador lxico lee los caracteres del programa fuente, y verifica que correspondan a una
secuencia lgica (identificador, palabra reservada, etc.).
A = B + C * 10
id1 = id2 + id3 * 10
ANLISIS SINTCTICO
El analizador sintctico impone una estructura jerrquica a la cadena de componentes lxicos,
generada por el analizador lxico, que es representada en forma de un rbol sintctico.
id1 = id2 + id3 * 10
=
/
\
id1
+
/ \
id2
*
/ \
id3 10
ANLISIS SEMNTICO
El analizador semntico verificara en este caso que cada operador tenga los operandos
permitidos.
=
/ \
id1
+
/ \
id2 *
/ \
id3 tipo_ent
|
10
GENERADOR DE CDIGO INTERMEDIO
En esta etapa se lleva la preposicin a una representacin intermedia como un programa para
una maquina abstracta.
temp1 = tipo_ent (10)
temp2 = id3 * temp1
temp3 = id2 + temp2
id1 = temp3
OPTIMIZACIN DE CDIGO
El cdigo intermedio obtenido es representado de una forma mas optima y eficiente.
temp1 = id3 * 10
GENERADOR DE CDIGO
Finalmente lleva el cdigo intermedio a un cdigo objeto que en este caso es un cdigo
relocalizable o cdigo ensamblador (tambin llamado cdigo no enlazado).
MOVF id3, R2
MULT #10, R2
MOVF id2, R1
ADDF R2, R1
MOVF R1, id1
RESOLUCIN DE PROBLEMAS
Documentacin
-
programa.
ALGORITMO
Mtodo para resolver un problema, mediante una serie de pasos precisos, definidos y
finitos.
CARACTERISTICAS DE UN ALGORITMO
Preciso: indica un orden de realizacin de cada paso a realizar.
Definido: Si se sigue un algoritmo mas de una vez se obtiene el mismo
resultado.
Finito: todo algoritmo tiene un inicio y un fin, es decir debe tener un nmero
finito de pasos.
PASOS A SEGUIR EN LA CONSTRUCCION DE UN ALGORITMO
La definicin de un algoritmo debe describir tres partes:
Entrada
Proceso
Salida
Diagrama de Flujo
Es
Los
Leer
B, H
B*H
2
Escribir
A
Si
Nassi-Schneiderman
Es
como un diagrama de flujo en el que se omiten las flechas de unin y las cajas son
continuas.
Un algoritmo se representa con un rectngulo en el que cada banda es una accin a realizar.
Inicio
Leer
Base, Altura
Calcular
Area
Escribir
Area
Fin
Base * Altura
2
Pseudocodigo
Base * Altura
2
Escribir Area
Fin