repaso concepto de programa - unlp
TRANSCRIPT
![Page 1: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/1.jpg)
![Page 2: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/2.jpg)
Repaso concepto de programa
ANTES se tenían sistemas cableados
Programación en hardware: cuando cambiamos las tareas, debemos cambiar el hardware
Secuencia de funciones aritmético/lógicasDatos Resultados
![Page 3: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/3.jpg)
Repaso concepto de programaAHORA
Programación en software: en cada paso se efectúa alguna operación sobre los datos
Interprete de instrucción
Funciones aritmético/lógicas
Códigos de instrucción
Señales de control
Datos Resultados
![Page 4: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/4.jpg)
Repaso concepto de programa
Para cada paso se necesita un nuevo conjunto de señales de control.
Las instrucciones proporcionan esas señales de control.
Aparece el nuevo concepto de programación.
No hay que cambiar el hardware !!!
![Page 5: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/5.jpg)
Componentes de una computadora
![Page 6: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/6.jpg)
Repertorio (set) de instruccionesEs el conjunto completo de instrucciones que se realizan
en una CPU.
Código máquina
Binario
Representado simbólicamente por un conjunto de códigos de ensamblaje
de operaciones: ADD (sumar), SUB (restar), LOAD (cargar datos en un registro)
de operandos: ADD BX, PEPE; se interpreta como sumar contenidos de reg BX y dirección PEPE, el resultado se guarda en reg BX
![Page 7: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/7.jpg)
Del Alto nivel al lenguaje de maquina
![Page 8: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/8.jpg)
Elementos de una instrucción
Código de operación (“Cod Op”)
Referencia a operandos fuentes
Referencia al operando resultado
Referencia a la siguiente instrucción
![Page 9: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/9.jpg)
¿Dónde se almacenan los operandos?
Memoria principal
o memoria virtual o en memoria cache
Registro de la CPU
Dispositivo de E/S
![Page 10: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/10.jpg)
Diferentes tipos de almacenamiento
![Page 11: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/11.jpg)
Tipos de instrucciones
Procesamiento de datos:
instrucciones aritmético-lógicas
Almacenamiento de datos:
instrucciones de memoria
Transferencia de datos:
instrucciones de E/S
Control:
instrucciones de testeo y flujo del programa
![Page 12: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/12.jpg)
¿Cuantas direcciones de memoria por instrucción se debe tener?
Más direcciones por instrucción
Instrucciones más complejas
Más registros:
Las operaciones entre los registros son más rápidas.
Menos instrucciones por programa
Menos direcciones por instrucción
Instrucciones menos complejas
Más instrucciones por programa
La captación/ejecución de las instrucciones es más rápida.
![Page 13: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/13.jpg)
Decisiones en el diseño delconjunto de instrucciones Tipos de operandos (datos)
Repertorio de operaciones
¿Cuántas operaciones se considerará?
¿Cuáles operaciones se realizarán?
¿Cuán compleja será cada una de ellas?
Formatos de instrucciones:
Longitud de instrucción
Número de direcciones
Tamaño de los campos
![Page 14: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/14.jpg)
Decisiones en el diseño delconjunto de instrucciones
Registros
Número de registros de la CPU referenciables
¿En qué registros se pueden ejecutar qué operaciones?
Modos de direccionamiento
¿cómo es especificada la ubicación de un operando o una instrucción?
RISC contrapuesto a CISC
(Computadora de conjunto reducido de instrucciones) a
(Computadora de conjunto complejo de instrucciones)
![Page 15: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/15.jpg)
Tipos de operandos
Direcciones
Números
punto fijo ó punto flotante
Caracteres
ASCII, EBCDIC ...etc.
Datos lógicos
Bits (1 ó 0)
Ej: flags o indicadores
![Page 16: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/16.jpg)
Orden de los bytesSupongamos una memoria direccionable de a byte
¿En qué orden se leen aquellos números que ocupan más de un byte? Ejemplo: La palabra doble 98765432H (32 bits) se puede almacenar en 4 bytes consecutivos de las siguientes 2 formas:
![Page 17: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/17.jpg)
Orden de los bytes
![Page 18: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/18.jpg)
Orden de los bytes
![Page 19: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/19.jpg)
Tipos de operaciones
Transferencias de datos
Aritméticas
Lógicas
Conversión
Entrada/Salida
Control del sistema
Control de flujo
![Page 20: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/20.jpg)
Transferencia de datos
![Page 21: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/21.jpg)
Aritméticas
![Page 22: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/22.jpg)
Lógicas-Conversión
![Page 23: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/23.jpg)
Entrada/Salida
![Page 24: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/24.jpg)
Control de Flujo
![Page 25: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/25.jpg)
Formatos de instrucción
![Page 26: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/26.jpg)
Modos de direccionamiento
![Page 27: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/27.jpg)
MDD Inmediato
![Page 28: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/28.jpg)
MMD Directo o Absoluto (de memoria)
![Page 29: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/29.jpg)
MMD Directo de registro
![Page 30: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/30.jpg)
MDD Indirecto con desplazamiento
![Page 31: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/31.jpg)
Ciclo de instrucción básico
![Page 32: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/32.jpg)
Ciclo de captación
![Page 33: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/33.jpg)
Ciclo de ejecución
![Page 34: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/34.jpg)
Diagrama de estados del ciclo de instrucción
![Page 35: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/35.jpg)
Simulador MSX88
![Page 36: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/36.jpg)
MSX88 Instrucciones de transferencia
![Page 37: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/37.jpg)
MSX88 Instrucciones aritmético - lógicas
![Page 38: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/38.jpg)
MSX88 Instrucciones de transferencia de control
![Page 39: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/39.jpg)
Subrutinas
![Page 40: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/40.jpg)
Pasaje de parámetros
![Page 41: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/41.jpg)
Pasaje de parametros
![Page 42: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/42.jpg)
Funcionamiento de la pila
![Page 43: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/43.jpg)
Operaciones de apilar/desapilar
![Page 44: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/44.jpg)
Funcionamiento de la pila
![Page 45: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/45.jpg)
Ejemplo
![Page 46: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/46.jpg)
Definición del procedimiento
![Page 47: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/47.jpg)
Llamada al procedimiento
![Page 48: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/48.jpg)
Ejemplo con subrutina
![Page 49: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/49.jpg)
Posibles pasos en un procedimiento
![Page 50: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/50.jpg)
Para el simulador
![Page 51: Repaso concepto de programa - UNLP](https://reader035.vdocuments.net/reader035/viewer/2022062923/62baec9d0d969c51145c3803/html5/thumbnails/51.jpg)
Bibliografía e información