Diap 01

44
CARRERA DE INGENIERÍA DE SISTEMAS SEMESTRE ACADÉMICO 2010-2 Agosto 2010 ALGORITMOS SESIÓN 1 COMPONENTES DEL COMPUTADOR ING. JOSE PEÑALOZA DELGADO

description

 

Transcript of Diap 01

Page 2: Diap 01

Con

tenid

os

1. ¿ Que es una computadora ?2. Hardware3. Software4. Algoritmos

Page 3: Diap 01

1. ¿ Que es una Computadora ?

Es una maquina electrónica digital capaz de procesar datos a partir de un grupo de instrucciones denominado programa, proporcionando una información resultante.

Page 4: Diap 01

1. ¿ Que es una Computadora ?

ComputadoraComputadora

Entradas Salidas

Datos de entradas einstrucciones

Datos de Salida, información

Page 5: Diap 01

1. ¿ Que es una Computadora ?

Es un conjunto de símbolos utilizados para expresar: un valor numérico,

¿QUÉ ES UN DATO?

un hecho, un objeto o una idea, para ser objeto de tratamiento.

Page 6: Diap 01

1. ¿ Que es una Computadora ?

Es la transformación de los elementos procesados.

Los datos de entrada se convierten en información significativa.

¿QUÉ ES INFORMACIÓN?

Page 7: Diap 01

2. El Hardware

Una computadora necesita:• Aceptar la entrada y visualizar la

salida.• Almacenar la información en un

formato consistente.• Ejecutar las operaciones

aritméticas o lógicas.• Monitorizar, controlar y dirigir las

operaciones del sistema.

Page 8: Diap 01

2. El Hardware

Almacena-mientoSecundario(memoria auxiliar)

Dispositivos de Entrada/SalidaE/S(periféricos)

Unidad Aritmética Lógica

Unidad Central de Proceso (CPU)

UnidaddeControl

MemoriaCentral

Page 9: Diap 01

2. El HardwareUnidad Central de Proceso (Procesador)

•Dirige y controla el proceso de información realizado por la computadora.•En el se encuentra:

La Unidad Aritmética Lógica (ALU)La Unidad de Control

• Ejecuta instrucciones de programa. La potencia de una computadora depende completamente de la velocidad y fiabilidad de la CPU.

Page 11: Diap 01

2. El Hardware

•La información procesada por la UCP se almacena normalmente en la memoria central hasta que terminan los cálculos.

Memoria Central

Page 14: Diap 01

3. El Software

Conjunto de programas que se emplean para operar una computadora. Estos programas deberán encontrarse grabados.

Los Sistemas Operativos:

• Si el S.O. no se encuentra presente, ningún otro programa puede ejecutarse.

• El S.O. Es el vinculo entre el usuario y la computadora.

Page 15: Diap 01

3. El Software

Da inicio a la sesión del computador proporcionado una interfaz de línea de comando o una interfaz gráfica.

Tareas del Sistema Operativo:

Administra los dispositivos de Hw. Administra y mantiene los sistemas de

archivo. Apoyo a otros programas.

Page 16: Diap 01

3. El Software

C) MULTIPROCESO: Computadoras con más de un CPU.

Categorías del Sistema Operativo

A) MULTITAREA: Correr más de un programa al mismo tiempo.

B) MULTIUSUARIO: Accesar más de un usuario a una computadora. Usuario 1 Usuario 2

Page 17: Diap 01

3. El Software

Sirve para escribir programas que permiten la comunicación usuario/máquina.

Lenguajes de Programación:

Sw de Uso General:Ofrecen su estructura para un gran numero de aplicaciones empresariales, científicas y personales.

Sw de Aplicaciones: Diseñado para realizar tareas especificas.

Page 18: Diap 01

3. El Software

Es una técnica estándar de comunicación que permite expresar las instrucciones que han de ser ejecutadas en una computadora.

Consiste en un conjunto de reglas sintácticas y semánticas que definen un programa informático.

LENGUAJE DE PROGRAMACION

Page 19: Diap 01

3. El Software

LENGUAJES DE MAQUINA

LENGUAJE DE BAJO NIVEL (ENSAMBLADOR)

LENGUAJE DE ALTO NIVEL.

Tipos de Lenguajes

Page 20: Diap 01

3. El Software

Lenguajes directamente inteligible por la maquina (computadora).

Sus instrucciones son cadenas binarias (cadenas o series de caracteres dígitos 0 y 1) que especifican una operación.

HOLA0000110010010010001010011001

LENGUAJE DE MAQUINA:

Page 21: Diap 01

3. El Software

Por excelencia es el ensamblador (assembly language). Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotécnicos.

Por ejemplo, nemotécnicos típicos de operaciones aritméticas son: en ingles add, sub, div, etc. En español, sum, res, div, etc.

Una instrucción típica de suma seria:

ADD M, N,P – 0110 1001 1010 1011

LENGUAJE DE BAJO NIVEL:

Page 22: Diap 01

3. El Software

Son los mas utilizados por los programadores. Es independiente de la maquina, es decir, no dependen del diseño del Hw o de la computadora.

Son portables o transportables. Lo que significa que pueden ser ejecutados con poca o ninguna modificación en diferentes tipos de computadora.

LENGUAJE DE ALTO NIVEL:

Page 23: Diap 01

3. El Software

Es un conjunto de instrucciones sencillas escritas en un lenguaje de programación, que al ser recogidas por un interprete son traducidas para poder ser ejecutadas.

Conjunto de instrucciones que el computador debe ejecutar para solucionar un problema determinado.

PROGRAMA

Page 24: Diap 01

3. El SoftwarePROG. FUENTE: Programa escrito en lenguaje de alto nivel que no a sido traducido a lenguaje máquina.

PROG. OBJETO: Programa en lenguaje de máquina, que puede ser ejecutado.

COMPILADOR: Traductor que convierte sentencias de código fuente a código objeto.

INTERPRETE: Traductor que ejecuta un programa línea por línea no modificando la forma original.

PROGRAMA FUENTE

PROGRAMA OBJETO

PROGRAMA EJECUTABLE

COMPILACION ENLACE

Page 25: Diap 01

3. El Software

Un compilador es un programa que lee el programa escrito en un lenguaje fuente y lo traduce a otro programa equivalente llamado lenguaje objeto.

Lenguaje de Programa Fuente

Programa en Lenguaje Objeto

CompiladorCompilador

ERROR Y DIAGNOSTICO

COMPILADOR

Page 26: Diap 01

3. El Software

Analiza una instrucción fuente y la ejecuta directamente sin generar código objeto.Es un traductor que realiza la operación de compilación paso a paso.

Lenguaje de Programa Fuente

SalidaIntérpreteIntérprete

DATOS

INTÉRPRETE

Page 27: Diap 01

3. El Software

La principal ventaja del proceso de compilación frente al de interpretación es que los programas se ejecutan mucho más rápido una vez compilados.

COMPILADOR vs. INTERPRETE

Page 28: Diap 01

3. El Software

La principal ventaja del proceso de compilación frente al de interpretación es que los programas se ejecutan mucho más rápido una vez compilados.

COMPILADOR vs. INTERPRETE

Page 29: Diap 01

Análisis del problema.Diseño del algoritmo.Codificación.Compilación y

ejecución.Verificación y

Depuración.Documentación.

SOLUCION DE PROBLEMAS

4. Algoritmos

Page 30: Diap 01

4. Algoritmos

ANALISIS DEL PROBLEMA

o Se determina QUE hará el programa y cual será la solución deseada.

o Se precisan las entradas y salidas a obtenerse.

Page 31: Diap 01

4. Algoritmos

o Se determina COMO hace el programa la tarea solicitada.

DISEÑO DEL ALGORITMO

o Se emplea el método de Diseño Descendente o Modular, el cual permite dividir un problema complejo en subproblemas y estos en otros de nivel mas bajo.

Page 32: Diap 01

4. Algoritmos

o Es la representación de un algoritmo en un lenguaje de programación.

o Debido a que el algoritmo es independiente al lenguaje de programación, el código puede ser escrito con igual facilidad en un lenguaje u otro.

CODIFICACION DE UN PROGRAMA

Page 33: Diap 01

4. Algoritmos

o Operación de convertir un programa fuente en programa objeto.

COMPILACION Y EJECUCION DE UN PROGRAMA

o Cuando no existe errores en un programa fuente se instruye al sistema operativo para que realice una fase de montaje oenlace del programa objeto con las librerías del programa del compilador produciendo un programa ejecutable.

Page 34: Diap 01

4. Algoritmos

o Implica la ejecución de un programa con una amplia variedad de datos de entrada.oErrores de compilaciónoErrores de ejecuciónoErrores lógicos

VERIFICACION Y DEPURACION DE UN PROGRAMA

o Proceso de encontrar errores corregirlos o eliminarlos.

Page 35: Diap 01

4. Algoritmos

DOCUMENTACION

o Descripción de los pasos para la solución de un problema.

o La documentación de un programa puede ser interna o externa.

o Es importante para corregir posibles errores o realizar cambios al programa.

Page 36: Diap 01

4. Algoritmos

Método para resolver un problema, mediante una serie de pasos precisos, definidos y finitos.

Produce un resultado en un tiempo finito.

Existe diferentes formas de dar solución a un mismo problema.

ALGORITMO

Page 37: Diap 01

4. Algoritmos La palabra algoritmo se deriva de la

traducción al latín de la palabra Al-khowariz-mi (algorismus), nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX. Euclides, matemático griego, es

considerado también el otro gran padre de la algoritmia.

En las ciencias de la computación, los algoritmos son mas importantes que los lenguajes de programación o las computadoras.

Page 38: Diap 01

4. Algoritmos

• Preciso: indica un orden de realización de cada paso a realizar.

CARACTERISTICAS DE UN ALGORITMO

• 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 número finito de pasos.

Page 39: Diap 01

4. Algoritmos

La definición de un algoritmo debe describir tres partes:

PASOS A SEGUIR EN LA CONSTRUCCION DE UN ALGORITMO

Entrada Proceso Salida

Page 40: Diap 01

4. Algoritmos

Un problema se puede qresolver mas eficazmente cuando se rompe el problema original en subproblemas.

DISEÑO DESCENDENTE DEL ALGORITMO

Este método se conoce como Divide y Vencerás, es decir dividir un problema complejo en otros mas simples.

Ejemplo: Hallar el área de un triángulo.

Page 41: Diap 01

4. Algoritmos

Área de un triangulo

SalidaResultados

Cálculo deÁrea

Entrada De Datos

EntradaB

EntradaH

SalidaB

SalidaH

SalidaA2

*HBA

Page 42: Diap 01

4. Algoritmos

•Es un lenguaje de especificación de algoritmos.

•Representa el algoritmo en secuencias lógicas de actividades utilizando verbos expresivos.

•Utiliza un lenguaje de comunicación propio como el inglés, español entre otros.

•La ventaja es que el programador se concentra en la lógica sin preocuparse en la reglas del lenguaje de programación específico.

PSEUDOCODIGO

Page 43: Diap 01

4. Algoritmos

Inicio

Leer (Base, Altura)

Calcular

Escribir Area

Fin

Page 44: Diap 01

4. Algoritmos

EJERCICIOS