MODOS DE DIRECCIONAMIENTO

Slides:



Advertisements
Presentaciones similares
Instrucciones de operación sobre datos
Advertisements

REGISTROS INTERNOS DEL PROCESADOR.
CLASE 3 SOFTWARE DEL MICROPROCESADOR
Declaración de datos en el segmento de datos.. EXISTEN UN CONJUNTO DE DIRECTIVAS QUE NOS PERMITEN DECLARAR DATOS EN EL SEGMENTO DE DATOS, LAS DIRECTIVAS.
No. Lista 31 Teresita Ramírez Uribe HORA: 8:00-9:00AM.
MODOS DE DIRECCIONAMIENTO
N.L 32 ROMERO HERNÁNDEZ GABRIELA VERÓNICA. HORA: 8:00-9:00AM ESQUELETO DE UN PROGRAMA EN ENSAMBLADOR.
Programación en ensamblador
SEMANA 9_2.
Andrés Núñez Herrero Enrique España Blanco Rodrigo Cembrero Carazo
ARQUITECTURA INTEL Modos de direccionamiento
Programación en Lenguaje Ensamblador.
INTRODUCCION AL ASSEMBLER 86
PROG. EN ENSAMBLADOR Ing. Pablo Cesar Tapia Catacora.
SEMANA 05_2.
Introducción al NASM The Netwide Assembler MIA J. Rafael Rojano C.

Evidencia no. 5 modos de direccionamiento Paréntesis para poder resolverla ADD OP-DESTINO, OP.FUENTE OP1 OP2 SUMA= ADD ¿Cómo funciona? Op_Destino=Op_Destino+Op.Fuente.
MODOS DE DIRECCIONAMIENTO No. Lista 21 7am Rivas chacón Ana cristina
MODOS DE DIRECCIONAMIENTO
Introducción al lenguaje ensamblador
Tema 2: INTRUCCIONES Profesor: Carlos Concha S LENGUAJES DE BAJO NIVEL.

1 SEMANA 04_2. 2 OPERADORES ARITMETICOS OPERADOR: + FORMATO: VALOR1 + VALOR2 FUNCION : SUMA VALOR1 Y VALOR2 EJEMPLO : TABLA_MAS_2 DW TABLA + 2 ; (DESPLAZAMIENTO.
Lenguaje Ensamblador Unidad 2
Cuando un proceso de aplicación desea establecer una conexión con un proceso de aplicación remoto, debe especificar a cuál debe conectarse, ya sea con.
Unidad VI Registros (estructuras, uniones y enumeraciones)
Arquitectura del 8086/8088 TEEL 4011
Conceptos Arquitectónicos del computador
IPN Escuela Superior de Cómputo MICROPROCESADORES II.
PBN © Jaime Alberto Parra Plaza CLASE 5 LOS SEGMENTOS.
C ONTINUACIÓN M ODOS DE DIRECCIONAMIENTO. 5. R ELATIVO A LA BASE Se le identifica cuando dentro de la instrucción aparece un registro base mas un desplazamiento.
Microprocesador (80X86) Universidad Nacional de Ingeniería
Introducción al lenguaje ensamblador
PBN © Jaime Alberto Parra Plaza CLASE 9 INSTRUCCIONES ARITMÉTICAS. GENERACIÓN DE EXPRESIONES.
Estructura de Computadores Comandos DEBUG Programación en Assembler Profesora : Tatiana Marín R.

Tema 1: DATOS Y REGISTROS
Unidad I: Registros e Interrupciones Facilitador: Ing. Eduardo Brando.

MODOS DE DIRECCIONAMIENTO
A este registro se le conoce también como registro de estado. Consta de 16 bits y únicamente 9 de ellos contiene información, indican el estado de la.
introducción al Lenguaje Ensamblador
MODOS Y METODOS DE DIRECCIONAMIENTO
Modos de Direccionamiento  No. 18  8:00-9:00am  Lenguaje ensamblador.
Microprocesador (8086) Universidad Nacional de Ingeniería

Elementos básicos del lenguaje
PROGRAMACION A BAJO NIVEL
MODOS DE DIRECCIONAMIENTO
1 Unidad I Panorama general de lenguajes de programación en aplicaciones mecatrónicas M.C. Juan Carlos Olivares Rojas.
SEMANA 01_2.
N.L 32 ROMERO HERNÁNDEZ GABRIELA VERÓNICA. HORA: 8:00-9:00AM ESQUELETO DE UN PROGRAMA EN ENSAMBLADOR.
No. De lista: 27 No. De lista: 27 Hora: 8-9 am Hora: 8-9 am Materia: Lenguaje Ensamblador Materia: Lenguaje Ensamblador.
METODOS DE DIRECCIONAMIENTO NO. 12 HORA: 8:00 ENSAMBLADOR MIGUEL ALEJANDRO DAVALOS HUERTA.
No. 26 8:00 a.m. Lenguaje Ensamblador. Segmento de Pila  Model small  stack  Data  Code  mov  mov ds, ax  push ds  …código del programa.
No. De Lista: 23 Hora: 8:00 a 9:00 Lenguaje Ensamblador.
TEMA : ARQUITECTURA DE COMPUTADORAS

Maquinas Digitales UNIDADES DE CONTROL.
No. Lista 9 8:00 am-09:00 am LENGUAJE ENSAMBLADOR.
Aprende el arte de la ingeniería inversa
Modos de Direccionamiento
Modos de Direccionamiento No. Lista 31 7 am Lenguaje ensamblador.
El microprocesador y su arquitectura
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
Arquitectura de PCs Lenguaje ASM Intel Lenguaje de máquina y ASM Toda CPU interpreta su código de máquina propio Instrucciones en código de máquina.
Arquitectura de PCs Arquitectura básica del PC. Introducción El PC es el resultado de una especificación técnica de IBM El hardware se organiza de forma.
Clase 7 Assembly - Simulador MSX88.
Estas dos líneas de código permiten al Asm iniciar en Code Segment
Transcripción de la presentación:

MODOS DE DIRECCIONAMIENTO No. 26 8:00 a.m. Lenguaje Ensamblador

ESQUELETO DE UN PROGRAMA EN ENSAMBLADOR Tipo de Modelo de un programa en Ensamblador. Determina el tamaño de los segmentos Model small stack data Code mov ax, @data mov ds, ax push ds …código del programa mov ax,4c00h int 21h end Segmento de Pila Aquí se declaran: Variables Arreglos Matrices Cadenas Segmento de Datos Inicialización Segmento de Pila Finalización

Declaración de datos en el segmento de Datos Directivas: db = Define byte = 8 bits = 1 carácter dw = Define palabra = 16 bits = 2 caracteres dd = Define doble palabra = 32 bits = 4 caracteres No existen tipos de datos en el Lenguaje Ensamblador a diferencia de los lenguajes de alto nivel, lo que se realiza es para reservar espacios de memoria. sintaxis para declarar datos, cadenas, arreglos, matrices: nombre_Dato directiva valor(s) Ejemplos: 1. Se desea declarar una variable contador de tipo byte inicializada a cero en el segmento de datos.

Ejemplo 1 . data contador db 0

Ejemplo 2 2. Define una variable “carácter” inicializada con el carácter ‘z’. . data caracter db ‘z’ 3. Declara una variable “promedio” inicializada con tu promedio general. promedio dw 89.12

Evidencia No. 4 Define los siguientes esqueletos de programas en ensamblador: a. Guardar como p1.asm un documento creado en block de notas. Define las siguientes variables inicializadas a cero: promedio, sumatoria, contador_repe, contador_normal.

b. Guardar como p2.asm, declarando las siguientes variables: Un arreglo inicializado con 4 valores de tipo carácter (los que sean). Variable índice inicializada en cero. Un mensaje con tu nombre.

Modos de Direccionamiento Direccionamiento Inmediato. Direccionamiento por Registros. Direccionamiento Director. Direccionamiento Indexado Directo. Direccionamiento Relativo a la Base. Direccionamiento Indirecto. Direccionamiento Base Indexada.

Direccionamiento Inmediato Se le identifica cuando el operando fuente es una constante. Ejemplo: MOV AH, 34H MOV BX, OF989H MOV CH, ‘C’ Inválidos: MOV CL, 9999H MOV DH, ‘AB’ MOV ‘A’, BL

Direccionamiento por Registros Se le identifica cuando tanto el operando fuente como el operando destino son registros válidos del microprocesador. Ejemplo: MOV AX, BX MOV AH, AL MOV CX, CL Inválidos: MOV AH, BX MOV DL, BP MOV CL, CX

Direccionamiento Directo Se identifica cuando el operando fuente o el operando destino es una variable declarada en el segmento de datos. Ejemplo: MOV DX, palabra MOV datos, AX MOV caracter, CH Inválidos: No es permitido direccionar de variable a variable o de memoria a memoria. MOV palabra, datos MOV caracter, datos MOV caracter, arreglo[0] MOV palabra, palabra

Direccionamiento Indexado Directo Se identifica cuando el operando fuente u operando destino es una variable declarada en el segmento de datos indexada por alguno de los registros índices (SI, DI). Ejemplo: MOV arreglo[SI], ‘A’ MOV CL, vector[DI] MOV vector[SI], 0 Inválidos: MOV vector1[SI], vector2[DI]

Direccionamiento Relativa a la Base Se utilizan los registros BX, BP. Ejemplo: Considere el siguiente programa: .data MiVector db 9,8,7,6,5,4,3,2,1 .code Inicialización mov bp, 0 mov ah, MiVector[bp+1] ;[0+1]=1 mov cl, MiVector[bp+5] ;[0+5]=5 Finalización 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8

Direccionamiento Indirecto Este modo de direccionamiento se identifica porque se hace referencia directa a una dirección efectiva. Instrucción de apoyo: LEA Op_Destino, Op_Fuente Obtiene la dirección efectiva ó desplazamiento.

Ejemplo: Lea SI, MiVector Lea obtiene la posición en memoria de MiVector. Apunta al inicio de MiVector. mov ah, [SI] ;apunta al 9 add SI, 3 mov bh,[SI] ;apunta al 6 9 8 7 6 5 4 3 2 1

Direccionamiento Base Indexado Este modo de direccionamiento se identifica porque para direccionar un elemento en la memoria se hace uso de los registros base (bx,bp) más registros índices (si,di), más una variable definida por el programador.

Ejemplo .data matriz db 1,2,3,4 ;r1 db 6,5,7,8 ;r2 db 9,10,11,12 ;r3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 r1 2 .data matriz db 1,2,3,4 ;r1 db 6,5,7,8 ;r2 db 9,10,11,12 ;r3 db 13,14,15,16 ;r4 .code }Inicialización mov BX, 1 mov DI, 2 mov AH, matriz [BX]][DI] ;matriz [1][2] mov DL, 2 ;matriz [1+2] add DL, matriz [BX][DI] ;matriz [3] 3 4 5 r2 6 7 8 9 r3 10 r1 11 12 13 r4 14 15