principios de computadoras ii - universidad nacional del sur
Post on 27-Oct-2021
4 Views
Preview:
TRANSCRIPT
Principios de Computadoras II
Conceptos Iniciales
Departamento de Ingeniería Electrónica y ComputadorasUniversidad Nacional del Sur
Ing. Ricardo Coppo
Conceptos InicialesIng.. Ricardo Coppo 2
Principios de Computadoras IIUniversidad Nacional del Sur
¿Qué es una computadora?� Una computadora es…
� una máquina digital y sincrónica� con capacidad de cálculo numérico y lógico� controlada por un programa almacenado� con posibilidad de comunicación
con el mundo exterior.
Conceptos InicialesIng.. Ricardo Coppo 3
Principios de Computadoras IIUniversidad Nacional del Sur
Estructura de la computadora� Son controlados por programas o secuencias
de instrucciones almacenados en su memoria.
Procesador
Entradas(input)
Salidas(output)
Conceptos InicialesIng.. Ricardo Coppo 4
Principios de Computadoras IIUniversidad Nacional del Sur
Componentes Principales
Bus o Canal
MemoriaPrincipal
MemoriaSecundariaDispositivos
deEntrada
Dispositivosde
Salida
UC
ALU
EntradasSalidas
Registros
CPU
Conceptos InicialesIng.. Ricardo Coppo 5
Principios de Computadoras IIUniversidad Nacional del Sur
Ciclo de instrucción básico1. Buscar la siguiente instrucción en la memoria principal
2. Decodificar la instrucción para conocer su tipo
3. Ejecutar la operación
4. Calcular la dirección de la próxima instrucción.
5. Volver al paso 1.
Decode Execute NextFetch
Conceptos InicialesIng.. Ricardo Coppo 6
Principios de Computadoras IIUniversidad Nacional del Sur
Niveles de abstracción� Para poder estudiar sistemas electrónicos tan
complejos es necesario crear capas o “niveles” de abstracción.
� La “abstracción” es una poderosa herramienta de diseño y de análisis de sistemas.
� Jerarquiza el sistema en componentes de complejidad lógica aceptable.
Conceptos InicialesIng.. Ricardo Coppo 7
Principios de Computadoras IIUniversidad Nacional del Sur
Ejemplo de abstracción� A nivel mundial se puede
estudiar fenómenos meteorológicos� La capa de ozono
� En un nivel menor se puede analizar fenómenos regionales� Producción triguera
Conceptos InicialesIng.. Ricardo Coppo 8
Principios de Computadoras IIUniversidad Nacional del Sur
Ejemplo de abstracción� A un nivel de mayor detalle se
pueden estudiar actividades industriales� Contaminación en la ría
� En una escala de aún mas detalle se analizan los problemas municipales.� Construcciones sin permiso
Conceptos InicialesIng.. Ricardo Coppo 9
Principios de Computadoras IIUniversidad Nacional del Sur
Lenguajes, niveles y máquinas virtuales� Los sistemas complejos se pueden estudiar
combinando lenguajes cada vez mas abstractos que se traducen a los de un nivel inferior
� En cada nivel se define un lenguaje y máquina virtual
� En los niveles superiores los lenguajes se acercan a los utilizados por el hombre.
� Los lenguajes del nivel inferior pueden ser señales, corrientes electrónicas, etc.
Nivel 4
Nivel 3
Nivel 2
Nivel 1
Nivel 0
Conceptos InicialesIng.. Ricardo Coppo 10
Principios de Computadoras IIUniversidad Nacional del Sur
Estructura multinivel� El ingeniero electrónico estudia
exhaustivamente los tres primeros niveles de abstracción (Niveles 0 a 2).
� El término “hardware” se refiere al estudio de los niveles 0 y 1.
� El término “software” se refiere a los niveles de abstracción superior
L4 – Orientación aObjetos
L3 – Programa Pascal
L2 - Ensamblador
L1 - Componentes
L0 – Lógica digital
Conceptos InicialesIng.. Ricardo Coppo 11
Principios de Computadoras IIUniversidad Nacional del Sur
L0 – Lógica digital
Los componentes electrónicosse interconectan de acuerdo aun circuito esquemático.
El circuito representa un “lenguaje”gráfico que es implementado o “traducido” para obtener un circuito
Conceptos InicialesIng.. Ricardo Coppo 12
Principios de Computadoras IIUniversidad Nacional del Sur
L1 - Componentes
El siguiente nivel deabstracción son los circuitos quese representan con un lenguajede diagramas en bloque interconectados
Conceptos InicialesIng.. Ricardo Coppo 13
Principios de Computadoras IIUniversidad Nacional del Sur
L2 - Assembler
Cada líneade programacorrespondea una instruccióndel hardware
Encabezamiento del programa
Directivas para el traductor
Etiquetas
Instrucciones Comentarios
Conceptos InicialesIng.. Ricardo Coppo 14
Principios de Computadoras IIUniversidad Nacional del Sur
L3 – Lenguaje de programación estructurado
1. Leer el valor de radio del teclado (x)2. Calcular area = π * x * x3. Imprimir (o mostrar en pantalla) el valor de “area”4. Parar
program Circle (input, output);const
PI = 3.14;var
radio, superficie : real; begin
writeln( ‘Ingresar el radio:’ );readln( radio );superficie := PI * radio * radio;writeln( ‘La superficie es :’, superficie );readln;
end.
Conceptos InicialesIng.. Ricardo Coppo 15
Principios de Computadoras IIUniversidad Nacional del Sur
L4 – Programación Orientado a Objetos
� Los componentes del programa modelan a los “objetos” de la vida real.
� Los objetos son de un determinado tipo o “clase”. La “clase” describe sus atributos o propiedades.
� Los objetos intercambian “mensajes” entre si y esto constituye un nuevo paradigma de programación.
� Java es orientado a objetos desde su concepción
Conceptos InicialesIng.. Ricardo Coppo 16
Principios de Computadoras IIUniversidad Nacional del Sur
L5 – Lenguajes de alto nivel de abstracción
Los niveles más altos de abstracción se basan en los conceptos matemáticos
La resolución de problemas se hace contotal independencia de la computadoray de su software.
Los problemas resueltos en este lenguajeluego se “implementan” en algún tipode dispositivo.
Un nivel de abstracción similar es la derepresentación gráfica o visual
Conceptos InicialesIng.. Ricardo Coppo 17
Principios de Computadoras IIUniversidad Nacional del Sur
Traductores, Compiladores e Intérpretes
� Traducir un lenguaje es convertir las sentencias de un lenguaje en las de otro
� Compilar un lenguaje es realizar toda la traducción antes de la ejecución de los comandos
� Interpretar un lenguaje es repetir en forma cíclica la operación de traducción y de ejecución
Conceptos InicialesIng.. Ricardo Coppo 18
Principios de Computadoras IIUniversidad Nacional del Sur
Programas compilados� El proceso de compilación genera un programa
ejecutable solamente apto para la plataforma elegida
� La especialización permite obtener programas muy rápidas y eficientes en el uso de la CPU.
� Si bien los programas no son “portables” a otra plataforma, se puede compilar reiteradas veces. (Sujeto a la existencia de las herramientas y bibliotecas adecuadas)
Conceptos InicialesIng.. Ricardo Coppo 19
Principios de Computadoras IIUniversidad Nacional del Sur
Compilación y generación del ejecutable
CódigoFuente
Compilador Códigoobjeto
Vinculador(Linker) Código
ejecutable
CódigoFuente
Compilador Códigoobjeto
Conceptos InicialesIng.. Ricardo Coppo 20
Principios de Computadoras IIUniversidad Nacional del Sur
Programas interpretados� Requieren del intérprete o “máquina virtual” para su
ejecución.
� No hacen un uso eficiente de la CPU.
� Son muy portables, basta disponer del intérprete en la nueva plataforma y todas las aplicaciones funcionan sin cambios
� Muy aptas en entornos de red (donde la eficiencia del procesador queda limitada por la velocidad de la red)
Conceptos InicialesIng.. Ricardo Coppo 21
Principios de Computadoras IIUniversidad Nacional del Sur
Programas interpretados
CódigoFuente
Intérprete Ejecución
Conceptos InicialesIng.. Ricardo Coppo 22
Principios de Computadoras IIUniversidad Nacional del Sur
Tecnología Java� Es un lenguaje de programación
� Permite expresar programas en el paradigma “orientado a objetos”, es decir mediante abstracciones de más alto nivel que la del hardware subyacente y la de los lenguajes del “paradigma” imperativo como C, Pascal, Fortran
� Es una plataforma tecnológica� Brinda abstracciones que permite escribir programas en
forma independiente al sistema operativo y a la máquina sobre la que se ejecutan
Conceptos InicialesIng.. Ricardo Coppo 23
Principios de Computadoras IIUniversidad Nacional del Sur
Tecnología Java� Propiedades de Java como lenguaje
� Orientado a objetos� Aplicaciones altamente portables� Independiente del hardware� Admite programación multitarea� Aplicable a la programación de redes� Versiones para dispositivos portátiles
Conceptos InicialesIng.. Ricardo Coppo 24
Principios de Computadoras IIUniversidad Nacional del Sur
Programas interpretados en Java
Archivos.java
Archivos.class
Compiladorjava
IntérpreteJava
(JVM)
Archivos.jar
Archivos Fuente
ArchivosByteCode
Bibliotecade soporte
Ejecuciónprograma
Conceptos InicialesIng.. Ricardo Coppo 25
Principios de Computadoras IIUniversidad Nacional del Sur
Tecnología Java� Propiedades de Java como plataforma tecnológico
� La plataforma Java es un entorno exclusivamente de software.
� Es independiente del hardware y del sistema operativo
� Está conformado por dos partes:� Una máquina virtual (JVM)� Una API (Application Interface)
MiPrimerPrograma.java
Plataforma HW y S.Op.
JVMMáquina Virtual Java
API
Conceptos InicialesIng.. Ricardo Coppo 26
Principios de Computadoras IIUniversidad Nacional del Sur
Distribuciones de Java� Ejecución de programas� JRE – Java Runtime Enviornment
� Desarrollo de aplicaciones � Java SE – (JDK, J2SE) Standard Edition� J2EE – Java 2 Enterprise Edition� JME – Java Micro Edition
No todos los JVM son desarrollados por SUN
Conceptos InicialesIng.. Ricardo Coppo 27
Principios de Computadoras IIUniversidad Nacional del Sur
Plataforma Java
Conceptos InicialesIng.. Ricardo Coppo 28
Principios de Computadoras IIUniversidad Nacional del Sur
Mi Primer ProgramaComentario de
varias líneas
Comentario de final de línea
Operación de escritura en terminal El procedimiento “main” es el
primero que invoca el intérprete
Conceptos InicialesIng.. Ricardo Coppo 29
Principios de Computadoras IIUniversidad Nacional del Sur
El entorno de desarrollo (IDE)
Conceptos InicialesIng.. Ricardo Coppo 30
Principios de Computadoras IIUniversidad Nacional del Sur
Conceptos de Ingeniería del Software� La necesidad de crear productos de software
condujo a la necesidad de cierta disciplina en el desarrollo de los proyectos.
� Muchos fracasos de programación se debieron a errores de software.
� La “ingeniería del software” estudia métodos y técnicas de desarrollo de software
Conceptos InicialesIng.. Ricardo Coppo 31
Principios de Computadoras IIUniversidad Nacional del Sur
El software como “producto”
RequerimientoInicial
Especificaciónde requisitos
Implementación
CódigoFuente
Manual deReferencia
(programador)
Procedimientode prueba
Archivos deayuda
Manual deusuario
CódigoEjecutable
Producto final
Conceptos InicialesIng.. Ricardo Coppo 32
Principios de Computadoras IIUniversidad Nacional del Sur
El “proyecto” de software� Se refiere a las etapas o tareas que se deben
realizar para obtener un producto de software
� También es conocido como el “proceso” de desarrollo del software
� Se caracteriza por un paradigma de desarrollo también conocido como “ciclo de vida”.
Conceptos InicialesIng.. Ricardo Coppo 33
Principios de Computadoras IIUniversidad Nacional del Sur
Ciclo de vida tradicionalPlanteo delproblema
Especificación
Diseño
Implementación
Prueba y mantenimento
Modelo en “cascada”
Conceptos InicialesIng.. Ricardo Coppo 34
Principios de Computadoras IIUniversidad Nacional del Sur
Etapas en la construcción de programas
El usuario final pide modificaciones y se corrigen fallas para generar nuevas versiones
Mantenimiento y modificación
Programación del código fuente en el lenguaje de programación elegido y generación del ejecutable
Implementación
Se define el COMO se obtiene la solución. Se puede usar seudocódigo, diagramas de flujo, diagramas en bloque, entre otras herramientas para facilitar la tarea de programación siguiente
Diseño
El analista /programador describe QUE es lo el programa debe hacer. Se describe la solución sin tomar decisiones sobre la plataforma (hardware) o el software. En ingeniería frecuentemente describe una solución matemática del problema
Análisis
El usuario describe el problema en forma informal y en forma incompleta. Expresa opiniones sobre cómo desea obtener la solución. Faltan detalles
Requerimiento
Tarea principalEtapa
Conceptos InicialesIng.. Ricardo Coppo 35
Principios de Computadoras IIUniversidad Nacional del Sur
Estadísticas� Un buen proyecto requiere:
� 40% - Especificación y diseño� Asignar tiempo suficiente a esta tarea mejora la calidad
del producto y simplifica los pasos siguientes
� 20% - Implementación � En esta etapa incide el lenguaje de programación y las
técnicas de desarrollo de programa.
� 40% - Prueba y aceptación� Verificación de las especificaciones y aceptación del
cliente.
Principios de Computadoras II
Conceptos Iniciales
Departamento de Ingeniería Electrónica y ComputadorasUniversidad Nacional del Sur
Ing. Ricardo Coppo
top related