Omar Herrera Caamal Rigoberto Lizárraga Luis Cetina Luna.

Slides:



Advertisements
Presentaciones similares
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS CHAPULTEPEC
Advertisements

Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
Access Bases de datos.
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
Teoría de lenguajes y compiladores
Arquitectura de Conjunto de Instrucciones (ISA)
Objetivos Específicos de la Unidad
Tema 3. Optimización de Código
Funciones en lenguaje C

FUNCIONES Y PROCEDIMIENTOS
Tema 6: Clases Antonio J. Sierra.
VHDL.
TRADUCTOR DE UN PROGRAMA
Fundamentos de Programación
Práctica 7 AOC. Gestión de la pila Una pila es una estructura de datos caracterizada por que el último dato que se almacena es el primero que se obtiene.
MIPS Intermedio.
Como empezar en Access 2000 Abrir Access 2000 Pulsamos INICIO
 LOPEZ MENDOZA CORINA AMALINALLI  GRUPO 304.  Una base de datos o banco de datos (en ocasiones abreviada BB.DD.) es un conjunto de datos pertenecientes.
Inteligencia artificial
Valor X Valor Y Punto (0,0) Coordenadas.
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
“Diseño de base de Datos Alquicira Jiménez Carolina 303
Asignación de Espacio No Contiguo
LENGUAJE DE PROGRAMACIÓN
Lenguaje de Programación cap. 1 Estructura del Computador.
PBN © Jaime Alberto Parra Plaza CLASE 5 LOS SEGMENTOS.
Tipos de Datos. Entrada-Salida.. La entrada-salida (I/O) le permite a un programa comunicarse con el mundo exterior. Esta comunicación puede realizarse.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Diseño de la Unidad de Control Multiciclo: Microprogramación
Unidad II Introducción a la programación en C++
Programación de Sistemas
Introducción a la Ingeniería de Sistemas
Metodología para solución de problemas
Análisis Léxico Área Software de Base.
introducción al Lenguaje Ensamblador
Unidad 1: FUNDAMENTOS DE COMPUTACIÓN Y PSEUDOLENGUAJE
Elementos básicos del lenguaje
Representación de Algoritmos
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
Términos algoritmo diseñar algoritmo implementar algoritmo
CARACTERÍSTICAS Es un lenguaje de programación estructurado de propósito general. Está estrechamente asociado al sistema operativo UNIX, ya que el propio.
Software El software permite comunicar al computador los problemas y hace posible que nos comunique las soluciones Los programas son el software del computador.
 Un lenguaje se puede definir como un conjunto de palabras y formas de expresión por medio de las cuales se comunican y relacionan miembros de una comunidad.
Teoría de lenguajes y compiladores
PRINCIPIOS DE PROGRAMACIÓN
Elaboración de algoritmos usando lógica de programación
introducción al Lenguaje Ensamblador
Maquinas Digitales UNIDADES DE CONTROL.
Tipos de Lenguajes Ensamblador.
Práctica Profesional PHP.
ARQUITECTURAS DE LOS SERVIDORES El computador tiene 2 aspectos para entender su funcionamiento al nivel de programación: Almacenamiento Procesamiento Para.
Lic. Carla Aguirre Montalvo
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
Programación Java y Desarrollo de Aplicaciones Modulo 1 Arquitectura de ordenadores Tema 3 Programas.
Programación de Sistemas
Para aplicaciones.   Una variable es un espacio de memoria en donde se almacenan datos 1. VARIABLES.
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
Curso: Fundamentos de Computación
En el presente trabajo, se explica los diferentes elementos que nos ofrece Microsoft Access, para hacer mas fácil y rápido la realización de bases de.
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
ELEMENTOS BÁSICOS DE PROGRAMACIÓN EN C# Mtro. José David Uc Salas
Cetina Luna Luis Antonio Irma Lizette Espinosa Negrete Omar Alberto Herrera Caamal Rigoberto Lizarraga Hernandez.
JOSE ALBERTO JIMENEZ JIMENEZ KATTY HIPOLITO. 7.1 INTRODUCCION AL LENGUAJE EMSAMBLADOR.
Lenguaje ensamblador Resumen en diapositivas
El proceso ensamblador. José Luis Vergara Soberanis.
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.
Transcripción de la presentación:

Omar Herrera Caamal Rigoberto Lizárraga Luis Cetina Luna

FORMATO DE UN ENUNCIADO EN LENGUAJE ENSAMBLADOR LOS ENUNCIADOS ARRIBA DE LA LINEA BLANCA EFECTUAN EL CALCULO. Y LOS ENUNCIADOS DEBAJO DE LA LINEA BLANCA SON COMANDOS PARA EL ENSAMBLADOR, QUE LE ORDENAN RESERVAR MEMORIA PARA LAS VARIABLES I, J Y N.

Partes de un enunciado Los enunciados en lenguaje ensamblador tienen 4 partes: Un campo de etiqueta Un campo de operación Un campo de operandos Un campo de comentarios

campo de etiqueta Las etiquetas, que sirven para asignar nombres simbólicos a direcciones de memoria, se necesitan en enunciados ejecutables para poder saltar a esos enunciados. También se necesitan en las palabras de datos para poder accesar con un nombre simbólico a los datos ahí almacenados.

En el lenguaje ensamblador de SPARC se requiere un signo de dos puntos después de cada etiqueta, pero el de Motorola no. En el de Intel requiere los dos puntos en las etiquetas del código, pero no en la de datos.

campo de operación El campo de código de operación contiene una abreviatura simbólica del código de operación o un comando para el ensamblador.

¿Cómo sabe el ensamblador que longitud usar? Pentium II los registros con diferente longitud tiene nombres distintos EAX: se usa para elementos de 32 bits AX: sirve para mover elementos de 16 bits AL y AH: se usan para elementos de 8 bits Motorola Los diseñadores decidieron añadir a cada código de operación sufijo L para largo W para palabra B para byte

Campo de operandos El campo de operandos sirve para especificar las direcciones y registros que la instrucción de maquina usara como operandos. El campo de operandos de una instrucción de suma de enteros indica que se sumara a que. El campo de operandos de una instrucción de ramificacion indica en donde se saltara. Los operandos pueden ser registros, constantes, localodades de memoria etc.

Campo de comentarios El campo de comentarios ofrece a los programadores un lugar para incluir explicaciones de cómo funciona el programa, para beneficio de otros programadores que podrían usar o modificar posteriormente el programa. Un programa en el lenguaje ensamblador sin tal documentación es casi incomprensible para todos los programadores. El campo de comentarios es exclusivamente para consumo humano, no afecta el proceso de ensamblado ni el programa que se genere.

seudoinstrucciones Un programa en lenguaje ensamblador pude contener comandos para el ensamblador mismo. Ej. Para pedirle que asigne espacio en la memoria. Que saque una nueva pagina de listado. Los comandos para el ensamblador se llaman seudoinstrucciones o a veces directrices de ensamblador.

Seudoinstrucciones de ensamblador

7.2 MACROS Los programas en lenguaje ensamblador a menudo necesitan repetir sucesiones de instrucciones varias veces dentro de un programa,en esta caso la forma mas facil de hacerlo es simplemente es escribir la instrucciones requeridas donde sea que se necesiten Sin embargo si una secuencia es larga o debe usarse muchas veces,escribirla una y otra vez resulta tedioso

Una estrategia alternativa seria convertir la secuencia en un procedimiento e invocarlo cada vez que se necesite

Desventaja Esta estrategia tiene la desventaja de que requiere la ejecucion de una instruccion de llamada a procedimiento y una de retorno cada vez que se necesite la secuencia

Como definir una macro? aunque diferentes ensamblandores tiene notaciones un poco distintas para definir macros,todas requieren las mismas partes basicas en un definicion de macro: 1.una cabecera de macro que da el nombre de la macro que este definiendo 2.El texto que constituye el cuerpo de la macro 3.una seudointruccion que marca el final de la defincion(por ejemplo,ENDM)} Cuando el ensamblador se topa con una definicion de macro,la guarda en una tabla de definicion de macros para usarla posteriormente El uso de un nombre de macro como codigo de por operacion se denomina llamda a macro y sustitucion por el cuerpo de la macro se denomina EXPANSION DE MACRO

Diferencia entre una macro y llamada a procedimiento la diferencia basica es que una llamada a macro es una instruccion dirigida al ensamblador para que sustituya el nombre de la macro por el cuerpo de la misma. una llamada a procedimiento es una instruccion maquina que se inserta en el programa objeto y que posteriormente se ejecutara para llamar al procedimiento

Una definición de macro, es una forma de asignar un nombre a un fragmento de texto. Una vez definido el macro, el programador puede escribir el nombre de la macro en lugar del fragmento de programa La expansión de macros se efectúa durante el proceso de ensamblado y no durante la ejecución del programa. Ejemplo: 7.2.2Definición, Llamada y expansión de macros

Las llamadas a macros no deben confundirse con llamadas a procedimiento. La diferencia basica es que una llamada a macro es una instrucción dirigida al ensamblador para que sustituya el nombre de la macro por el cuerpo de la misma. Una llamada a procedimiento es una instrucción de maquina que se inserta en el programa objeto y que posteriormente se ejecutara para llamar al procedimiento

Implementación de un recurso de macros a un ensamblador Para implementar un recurso de macros, un ensamblador debe poder realizar dos funciones: 1.- guardar definiciones de macros 2.- expandir llamadas de macros El ensamblador debe mantener una tabla de todos los nombres de macros y junto con cada nombre, un apuntador a su definición almacenada para poder recuperarla cuando la necesite

Cuando s llega a una definición de macros, se crea una entrada de tabla que da el nombre de la macro, el numero de parámetros formales y un apuntador a otra tabla, la tabla de definiciones de macros en al que se guardara el cuerpo de la macro. En este momento también se construye una lista de los parámetros formales que se usaran al procesar la definición. Luego se lee el cuerpo de la macro y se guarda en la tabla de definiciones de macros. Los parámetros formales que ocurren dentro del cuerpo se indican con algún símbolo especial.

7.2.3 características avanzadas Problema: Duplicación de etiquetas en los ensambladores que usan macros. Si la macros se llama dos o mas veces, la etiqueta se duplicara y causara un error de ensamblado. Solución: Hacer que el programador proporcione como parámetro una etiqueta distinta en cada llamada. Una solución distinta es permitir que una etiqueta se declare como local, y el ensamblador genere automáticamente una distinta en casa expansión de la macro. Otros ensambladores tienen la regla de que las etiquetas numéricas son automáticamente locales.

Características avanzadas Las macros pueden llamar a otras macros, incluidas ellas mismas. Si una macro es recursiva, debería pasarse así misma un parámetro que se modificara en cada expansión, y la macros deberá probar el parámetro y terminar la recursión cuando llegue a cierto valor. En caso contrario, el ensamblador podría ingresar en un ciclo infinito y se deberá suspender el ensamblador.

7.2.4 Implementación de un recurso de macros Un ensamblador debe poder realizar dos funciones: Guardar definiciones de macros Expandir llamadas de macros El ensamblador debe mantener una tabla de todos los nombres de macros y un apuntador a su definición almacenada, para poder recuperarla cuando la necesite. Cuando se llega a una definición de macro, se crea una entrada de tabla que da el nombre de la macro, el número de parámetros formales y un apuntador a otra tabla en la que se guardara el cuerpo de la macro.