Post on 25-Oct-2015
Computadora• Máquina capaz de
aceptar datos de entrada, procesarlos y entregar resultados de salida de información.
• Una computadora es una máquina de procesamiento de información.
• Los ordenadores sirven para la gestión de datos, almacenan grandes cantidades de datos e información y permite recuperarlos y enviarlos a gran velocidad.
Software• Conjunto de programas que le indican a la
computadora qué hacer y cómo operar para generar los resultados esperados.
Dato e Información• Un dato es aquella representación de una entidad
y que es susceptible de tratamiento ya sea de un programa o proceso informático.
• La información es un mensaje válido para un receptor o resultado del procedimiento de datos.
• En el momento en que un dato se transmite y se le añade un contexto, se convierte en información.
Tipos de Datos• NÚMEROS:• ENTEROS: Número entero desde un valor negativo alto hasta
un valor positivo alto. Este puede ser short o long dependiendo del tamaño del número.
• FLOAT: Números con pocos decimales.
• Double: Números con muchos decimales.
• LÓGICO: Verdadero y falso.
• CARÁCTER: Almacenan información alfa-numérica.
¿Qué es un programa?• La unión de una
secuencia de instrucciones que una computadora puede interpretar y ejecutar y un conjunto de estructuras de datos que almacenan la información sobre la que la operan las instrucciones.
Para programar se requiere de:• Fundamentos generales de
programación.• Lógica para entender,
conceptualizar y solucionar el problema.
• Conocimiento de cualquier lenguaje de programación.
Lenguaje de programación• Es una técnica de
comunicación estilizada que se utiliza para controlar el comportamiento de una maquina (usualmente una computadora).
• Permite al programador especificar de manera precisa sobre que datos debe operar una computadora.
Los principales lenguajes utilizados son:• Lenguaje Máquina
• Lenguaje de bajo nivel o ensamblador
• Lenguajes de alto nivel
Lenguaje Máquina• Es un lenguaje que puede ser interpretado
directamente por los circuitos internos de la máquina.
• Está basado en instrucciones compuestas por sentencias de ceros y unos.
• Ventajas:• 1)No requiere
traducción, la máquina lo interpreta.
• 2)Opera directamente con la máquina.
• 3)Puede ser eficiente con el manejo de los recursos.
• Desventajas:• 1)Difícil de
aprender, implementar y mantener.
• 2)Es único y particular para cada procesador
Lenguaje de Bajo Nivel o Ensamblador• Es un lenguaje fuente para codificar sentencias
simbólicas.• Un ensamblador convierte cada instrucción en
instrucciones de lenguaje de máquina.
• Ventajas:• 1)No es tan
complicado como el lenguaje máquina.
• 2)Eficiente en el manejo de recursos.
• Desventajas:• 1)Cada procesador
tiene su propio juego de instrucciones en ensamblador.
• 2)Dependencia total por la máquina lo que impide la transportabilidad de los programas.
• 3)Debe ser traducido-ensamblado.
Lenguaje de Alto Nivel• Es un lenguaje orientado al problema o
procedimiento.• Son los más cercanos al lenguaje humano.• Ejemplos: COBOL,PL/I, FORTRAN, orientado a
objetos.
• Ventajas:• 1)Son
independientes del procesador.
• 2)Son más fáciles de aprender, implementar y mantener.
• 3)Tiene un carácter genérico.
• Ventajas:• 1)Menos
eficiente en el manejo de recursos.
• 2)Requiere un proceso de traducción.
Metodología de la Programación• Análisis del Problema• Diseño de los algoritmos• Codificación del programa• Compilación• Verificación/Depuración• Documentación
Diseño de los Algoritmo• Conjunto preescrito de operaciones (reglas o
instrucciones) bien• definidas para resolver un problema en un número
finito de pasos• Un algoritmo: Finito (Resultado en el tiempo), Definido
(No puede ser ambiguo), Preciso (ejecución paso a paso).
• El diseño del algoritmo es bastante independiente del lenguaje de programación (sí depende del enfoque)
• Definir paso a paso con detalle• Diseño descendente o modular:División del problema en subproblemas
Pseudocódigo• Se trata de un lenguaje imitación del de un
ordenador.• No está estandarizado.• Cada programador tiene el propio.• Mezcla de lenguaje natural, símbolos, términos y
características de varios lenguajes de programación.
Codificación del Programa
Escribir el algoritmo en un lenguaje de programación.• Permite ser leído y ejecutado por el ordenador.Tipos de lenguajes:• De bajo nivel (dependen de la máquina sobre la
que se ejecuta):Lenguaje Máquina (escritura en binario)• Ensambladores: (escritura simbólica)
De alto nivel (no dependen de la máquina):• Imperativos:
• Estructurados:• FORTRAN• C• Pascal
• Orientado a Objetos:
• Java• C++• Ada 95
Declarativos:• LISP/PROLOG
• La salida de la fase de codificación son los programas fuente (que todavía no se pueden ejecutar directamente sobre el ordenador).
• Un programa se compone de un conjunto de instrucciones que indican las operaciones elementales a ejecutar y la manera en que se encadenan.
Compilación• Salvo que el programa se escriba directamente en
lenguaje máquina (muy improbable) siempre debe existir un traductor.
• La fase de compilación y enlace permite leer el programa escrito en lenguaje de alto nivel y traducirlo a lenguaje maquina.
Verificación/Depuración• Errores en tiempo de ejecución- División por cero, apertura de ficheros inexistentes,...• Errores lógicos (los más difíciles de detectar)- Resultados incorrectos• Optimización del algoritmo.
Documentación• Se genera a lo largo de todas la fases.• Debe permitir acceder al programa a una persona
distinta al programador.• Interna:- Código de programa fuente- Comentarios• Externa:- Especificación de requisitos- Listado de programa fuente- Explicación de los algoritmos (CLARO y CONCISO)- Diagramas de flujo o pseudocódigo.- Especificación de datos, formatos de pantalla,...