Una estrategia para evitar la sucesiones repetidas de instrucciones convertir la secuencia en un procedimiento e invocarlo cada vez que se necesite.

Slides:



Advertisements
Presentaciones similares
Tema Algoritmos Universidad Politécnica de Nicaragua UPOLI.
Advertisements

Temas Operaciones básicas Instalando el compilador
Teoría de lenguajes y compiladores
Estructura de un programa en C
1.4 Traductor y Su estructura
Tipos de Lenguajes Ensamblador.
JOSE ALBERTO JIMENEZ JIMENEZ KATTY HIPOLITO. 7.1 INTRODUCCION AL LENGUAJE EMSAMBLADOR.
Lenguaje ensamblador Resumen en diapositivas
El proceso ensamblador. José Luis Vergara Soberanis.
Omar Herrera Caamal Rigoberto Lizárraga Luis Cetina Luna.
P ROCESO DE E NSAMBLADO Cámara Vázquez Berenice Rubí.
Katty Evangelina Hipólito Chi.   Aunque cada maquina tiene un lenguaje ensamblador distinto, el proceso de ensamblador tiene suficiente similitudes.
Prof. Jonathan Silva Ingeniería Civil – Informática I Ingeniería Civil Informática I Clase 7 – Funciones y Procedimientos.
Vinculación de Instrucciones y Datos a Memoria Tiempo de compilación: si la dirección de memoria se conoce a priori, se puede generar código absoluto;
Page 1 Macroensamblador José Andrés Vázquez Flores Verano 2016 FCC-BUAP.
Lenguaje de programación: Lua Fundamentos de lenguaje de programación. Iván Cardemil Patricio Tudela Camilo Rojas Llosect Moscoso.
Convenciones de nomenclatura y diseño
Repaso Programacion en C
Pipelining Peligros de control.
Capítulo 13 Leer archivos JSON con AJAX
Programación 1 Curso: 5to. I TT
Métodos y parámetros.
Facultad de Arquitectura y Urbanismo
Conceptos básicos de programación
Resolución de problemas y algoritmos
Métodos en Java.
Listas enlazadas particulares
CAPÍTULO 2: PRINCIPIOS BÁSICOS DE MATLAB
Programación orientada a objetos
Cada maquina tiene un lenguaje ensamblador distinto
EN QUÉ CONSISTE UNA COMPUTADORA
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
ORGANIZACIÓN Y ADMINISTRACIÓN DE LA MEMORIA VIRTUAL
EL ORDENADOR es una máquina electrónica que recibe y procesa datos para convertirlos en información útil. Las instrucciones dentro del computador se representan.
ALGORITMOS Y PSEUDOCÓDIGO
Diseño en Alice En este módulo estudiaremos los elementos del diseño en Alice: Escenarios Storyboards Textuales Visuales Definiciones.
Estas dos líneas de código permiten al Asm iniciar en Code Segment
CONCEPTOS PRELIMINARES (Cont)
Algoritmos de reemplazo
Programación.
Introducción a las ciencias de la computación Antonio López Jaimes
LENGUAJE C.
Estructuras de Repetición Pseudocodigo1 Estructuras de Repetición Algoritmos Mientras Hacer-Mientras Para.
P P AGINACION FACULTAD DE INGENIERIA INDUSTRIAL Y DE SISTEMAS FACULTAD DE INGENIERÍA INDUSTRIAL Y DE SISTEMAS.
Introducción al Visual Basic  Un programa en sentido informático está constituido en un sentido general por variables que contienen los datos con los.
SOFTWARE.
FUDAMENTOS BÀSICOS computación
Tipos de Datos abstractos
Fundamentos de la Programación I
Tipos de Datos abstractos
Pipelining Peligros de control.
LICENCIATURA EN SISTEMAS COMPUTACIONALES EN ADMINISTRACION
FUNCIONES Y PROCEDIMIENTOS
Estructura general de un programa. Estructura general de un programa. Pseudocódigo Diagrama de flujo Concepto de programas. Concepto de programas. Instrucciones.
Símbolos Indice Pág. Direcionamiento Absoluto y Simbólico
Macroprocesador.
Curso de Programación Estructurada
SISTEMAS OPERATIVOS Estructura de los Sistemas Operativos.
Informática Ingeniería en Electrónica y Automática Industrial
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
MC Beatriz Beltrán Martínez Otoño 2017
Tema 2 Estructura de un programa en C. IWI Tema 2 Programa en C U n programa en C es una serie de instrucciones en un lenguaje muy especifico (similar.
Estructuras de Repetición Algoritmos
Programación Modular Programación de Computadoras - Hugo Vega Grupo2: Reina Rodríguez Miriam Salluca.
Lenguaje de Programación II
Programación Estructurada
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO Nombres: Isaac Sánchez García Teofilo Martinez Garcia Ricardo Del Carmen Paz López Vanesa Anahí Pérez Lizárraga.
Organización del caché
Pipelining Peligros de control.
Diseñas y elaboras algoritmos para la solución de problemas
Transcripción de la presentación:

Una estrategia para evitar la sucesiones repetidas de instrucciones convertir la secuencia en un procedimiento e invocarlo cada vez que se necesite.

DEFINICION, LLAMADA Y EXPANSIÓN DE MACROS. Un macro es una forma de asignar un nombre a un fragmento de texto. Se le llama llamada a la macro cuando se usa el nombre de la macro como código de operación. Se denomina expansión a la macro la sustitución de la macro con el código.

REPETICION DEL CODIGO

MACRO

SUSTITUCION POR LA MACRO

MACROS CON PARAMETROS Son secuencias intercambiadas con secuencias casi idénticas. Ejemplo;

MACRO COMO PARAMETRO

SUSTITUCION COMO PARAMETRO

CARACTERISTICAS AVANZADAS Hay diversas formas para evitar que las etiquetas se dupliquen, una de ellas es permitir que una etiqueta se declare como local es decir definir macros dentro de otras macros además de usar el if.

EJEMPLO Una macros puede incluir otras macros incluidas en ella misma.

INPLEMENTACION DE UN RECURSO DE MACROS EN ENSAMBLADOR. Se puede hacer de dos formas ; 1. Guardar definiciones de macros 2. Expandir llamadas de macros. Se define de la siguiente manera

EXPANDIR LLAMADAS DE MACROS. Esta estrategia consiste en leer el programa en lenguaje ensamblador una vez, convertirlo en forma inmediata, y guardar esta forma en inmediata en una tabla en la memoria.

EN LA PRIMERA PASADA se tiene que analizar sintácticamente cada línea para encontrar el código de operación (como ejemplos tenemos el operador add.mov) buscar su tipo(operados) y calcular la longitud de la instrucción y finaliza con la seudoinstruccion END.

SEGUNDA PASADA Debe producir información para el enlazador para enlazar los procedimientos.se leen las líneas una por una y se procesan.

LAS TABLAS DE SIMBOLO Hay varias formas de organizar las tablas de símbolos ; Implementar la tabla de símbolos como arreglo de pares cuyo primer elemento es el símbolo y después el valor. Ordenarla por símbolo y usar el algoritmo de búsqueda binaria para localizar el símbolo.

ENLAZADO Y CARGA antes de Que el programa pueda ejecutarse es preciso encontrar todos los procedimientos traducidos y enlazados de forma correcta. Los pasos son copelación y enlace, el primero lo hace el ensamblador el segundo el enlazador. El enlazador es reunir los procedimientos traducidos por separado y enlazados para que se ejecuten.

TAREAS UE REALIZA UN ENLAZADOR

ESTRUCTURA DE UN MODULO OBJETO Contiene 6 partes;

1.-nombre del modulo 2.-es una lista de los símbolos definidos en el modulo a los que otros módulos podrían hacer referencia junto con sus valores. 3.-es una lista de los símbolos que se usan en el modulo pero se definen en otros módulos. 4.-es el código ensamblado y las constantes. 5. diccionario de ubicación. 6.-fin del modulo.

TIEMPO DE LIGADO Y REHUBICACION DINAMICA El momento en que se determina la dirección real en la memoria principal que corresponde a “l” se denomina tiempo ligado(posibilidades) 1. cuando se escribe el programa 2. Cuando se traduce el programa. 3. Cuando se enlaza el programa pero antes de cargarlo.

5.-cuando se carga un registro base que se usa para direccionamiento. 6.-cuando se ejecuta la instrucción que contiene la dirección.

ENLAZADO DINAMICO Una forma mas flexible de enlazar procedimientos copilados por separado es enlazar cada procedimiento en el momento en que se invoca por primera vez eso se le denomina enlazado dinámico.

ENLASADO DINAMICO MULTICS En la modalidad multics de enlazado dinámico, cada programa esta asociado a un segmento llamado segmento de enlace, que contiene un bloque de información para cada procedimiento que podría invocarse.

ENLASADO DINAMICO EN WINDOWS el enlazado dinámico emplea un formato de archivo especial llamado dll(biblioteca de enlace dinámico), estas contienen procedimientos, datos o ambos. y se pueden carga en memoria y varios procesos pueden accesar al mismo tiempo. Un programa se puede ligar con un dll de dos formas enlazado implícito y enlazado explicito.