SEMANA 01_2.

Slides:



Advertisements
Presentaciones similares
LICENCIATURA EN SISTEMAS COMPUTACIONALES EN ADMINISTRACION
Advertisements

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.
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
SEMANA 9_2.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
ARQUITECTURA INTEL FORMATOS DE INSTRUCCIÓN
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Teoría de lenguajes y compiladores
Programación en Lenguaje Ensamblador.
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
INTRODUCCION AL ASSEMBLER 86
SEMANA 05_2.
Introducción al NASM The Netwide Assembler MIA J. Rafael Rojano C.

Arquitectura del Computador
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.
Introducción a la Ingeniería en Sistemas
Semana 5 Subprogramas..
MODOS DE DIRECCIONAMIENTO
Matrices Es una estructura homogénea, compuesta por varios elementos, todos del mismo tipo y almacenados consecutivamente en memoria A cada elemento se.

1 SEMANA 04_2. 2 OPERADORES ARITMETICOS OPERADOR: + FORMATO: VALOR1 + VALOR2 FUNCION : SUMA VALOR1 Y VALOR2 EJEMPLO : TABLA_MAS_2 DW TABLA + 2 ; (DESPLAZAMIENTO.
Clase 10: Estructuras de datos y arreglos.
Conceptos Arquitectónicos del computador
Lenguaje de Programación cap. 1 Estructura del Computador.
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.
Introducción al lenguaje ensamblador
Estructura de Computadores Comandos DEBUG Programación en Assembler Profesora : Tatiana Marín R.
Unidad I: Registros e Interrupciones Facilitador: Ing. Eduardo Brando.
Programación de Sistemas
TEORIA DE LA INFORMACION INGENIERO ANYELO QUINTERO.
Informática Ingeniería en Electrónica y Automática Industrial
Programación en C para electrónicos
MODOS DE DIRECCIONAMIENTO
MODOS Y METODOS DE DIRECCIONAMIENTO
Modos de Direccionamiento  No. 18  8:00-9:00am  Lenguaje ensamblador.

Elementos básicos del lenguaje
PROGRAMACION A BAJO NIVEL
SEMANA 03_2. ESCRITURA DE PROGRAMAS.COM DE FORMA AUTOMATICA EL ENLAZADOR GENERA UN FORMATO PARTICULAR PARA UN PROGRAMA.EXE. TAMBIEN PUEDE GENERAR UN PROGRAMA.COM.
MODOS DE DIRECCIONAMIENTO
Términos algoritmo diseñar algoritmo implementar algoritmo
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
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.
Estructura de datos I CIS - UABJB.
introducción al Lenguaje Ensamblador
Programación II Concepto de Archivos.
Programación de Sistemas
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.
Integrantes Rodrigo Muñoz Patricia Suárez. UNIDAD 2 ELABORACION DE UNA BASE DE DATOS INTRODUCCION Access 2013 TEA 2104 ORGANIZACIÓN DE LA INFORMACION.
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.
Lenguaje ensamblador Resumen en diapositivas
Campos simples La sintaxis para definir campos en el segmento de datos depende en parte del ensamblador usado, si bien casi siempre guardan.
Omar Herrera Caamal Rigoberto Lizárraga Luis Cetina Luna.
Transcripción de la presentación:

SEMANA 01_2

COMPOSICION REGISTROS DE USO GENERAL Lenguaje de maquina 31 15 7 AH AL AX EAX EAX EBX ECX EDX COMPOSICION REGISTROS DE USO GENERAL

COMPOSICION DEL REGISTRO DE BANDERAS REGISTROS DE BANDERAS (FLAGS) Lenguaje de maquina 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 O D I T S Z A P C COMPOSICION DEL REGISTRO DE BANDERAS

LA INSTRUCCIÓN ENSAMBLADOR QUE EN ESTE CASO NOS INTERESA ES: MOV ASIGNACION DE VALORES Lenguaje de maquina LA NECESIDAD MAS URGENTE EN EL DESARROLLO DE CUALQUIER APLICACIÓN ES LA DE ASIGNAR VALORES YA SEA A REGISTROS O A CELDAS DE MEMORIA. LA INSTRUCCIÓN ENSAMBLADOR QUE EN ESTE CASO NOS INTERESA ES: MOV EL FORMATO DE LA INSTRUCCIÓN ES EL SIGUIENTE: MOV DESTINO , ORIGEN UN PRINCIPIO, BASICO ES QUE TANTO DESTINO COMO ORIGEN DEBEN SER DEL MISMO TAMAÑO

SENTENCIA INVALIDA: MOV 10 , 24 SENTENCIAS VALIDAS: MOV AH , 24 VALORES INMEDIATOS Lenguaje de maquina EL DESTINO DE UN VALOR INMEDIATO PUEDE SER UN REGISTRO O BIEN UNA POSICION DE MEMORIA, PERO NO OTRO VALOR INMEDIATO. SENTENCIA INVALIDA: MOV 10 , 24 SENTENCIAS VALIDAS: MOV AH , 24 MOV [10] , 24 LA SEGUNDA SENTENCIA VALIDA INTRODUCE UN VALOR EN LA MEMORIA CORRESPONDIENTE A LA DIRECCION DS:10

ES UNA SENTENCIA INVALIDA LO CORRECTO SERIA: MOV AX , 0B800H VALORES INMEDIATOS Lenguaje de maquina HAY QUE TENER EN CUENTA QUE ESTE TIPO DE ASIGNACION NO ESTA PERMITIDA EN ALGUNOS CASOS. POR EJEMPLO: MOV DS , 0B800H ES UNA SENTENCIA INVALIDA LO CORRECTO SERIA: MOV AX , 0B800H MOV DS , AX

ASIGNACION ENTRE REGISTROS Lenguaje de maquina SIEMPRE QUE LOS REGISTROS DESTINO Y ORIGEN SEAN DEL MISMO TAMAÑO, ES POSIBLE PRACTICAMENTE CUALQUIER ASIGNACION. PODEMOS ASIGNAR UN REGISTRO DE PROPOSITO GENERAL A UNO DE SEGMENTO. SENTENCIA VALIDA: MOV DS , AX SENTENCIA INVALIDA: MOV CX, AL

LECTURA DE DATOS DE LA MEMORIA Lenguaje de maquina EN EL INTERIOR DEL MICROPROCESADOR SOLO ES POSIBLE MANTENER UNA PEQUEÑA CANTIDAD DE INFORMACION, ALOJADA EN LOS REGISTROS DE PROPOSITO GENERAL, POR LO QUE ES INDISPENSABLE ALMACENAR TODOS LOS DATOS EN MEMORIA, GENERALMENTE EN UNA SECCION O SEGMENTO ESPECIFICO, RECUPERANDOLO CUANDO SEA NECESARIO. EN ESTE CASO EL DESTINO SERIA UN REGISTRO, MIENTRAS QUE EL ORIGEN SERIA LA DIRECCION DE LA CELDA DE MEMORIA.

LECTURA DE DATOS DE LA MEMORIA Lenguaje de maquina SI ESCRIBIMOS: MOV AH , 100 REALMENTE ESTARIAMOS ASIGNANDO A AH EL VALOR 100. POR EL CONTRARIO, SI ESCRIBIMOS: MOV AH , [100] REALMENTE ESTARIAMOS ASIGNANDO A AH EL VALOR ALMACENADO EN LA POSICION DE MEMORIA 100. TAMBIEN ES VALIDO: MOV BX , 100 MOV AH , [BX]

ESCRITURA DE DATOS DE LA MEMORIA Lenguaje de maquina COMO PUEDE SUPONER, PARA ESCRIBIR DATOS EN LA MEMORIA HAY, BASICAMENTE QUE INTERCAMBIAR DESTINO Y ORIGEN. EL DESTINO SERIA UNA DIRECCION DE MEMORIA, YA SEA CONSTANTE O ALOJADA EN UN REGISTRO, MIENTRAS QUE EL ORIGEN PODRIA SER TANTO UN VALOR INMEDIATO COMO EL CONTENIDO DE UN REGISTRO. SI EL ORIGEN ES UN REGISTRO, ESTE DETERMINARA EL TAMAÑO DEL OPERANDO Y, POR TANTO, LA CANTIDAD DE INFORMACION A TRANSFERIR A LA MEMORIA.

LO ANTERIOR ES VALIDO EN MASM, EN NASM EL MODIFICAR PTR NO ES VALIDO ESCRITURA DE DATOS DE LA MEMORIA Lenguaje de maquina EN EL CASO DE LOS VALORES INMEDIATOS ES NECESARIO INDICAR DE MANERA EXPLICITA LA CANTIDAD DE MEMORIA A TRANSFERIR. EN EL EJEMPLO: MOV [BX] , 24 LA CANTIDAD DE INFORMACION NO ESTA DISPONIBLE. PERO EN : MOV WORD PTR [BX] , 24 LA PALABRA WORD ES LA QUE INDICA EL TAMANO DEL OPERADOR. LO ANTERIOR ES VALIDO EN MASM, EN NASM EL MODIFICAR PTR NO ES VALIDO

ESCRITURA DE DATOS DE LA MEMORIA Lenguaje de maquina EN EL CASO DE QUE EL VALOR ESTE ALMACENADO EN UN REGISTRO, POR EJEMPLO AX, SERIA REDUNDANTE INDICAR EL TAMANO DEL VALOR A TRANSFERIR. POR EJEMPLO: MOV WORD [BX] , AX MOV [BX] , AX SON EQUIVALENTES

DEFINICION DE DATOS EN EL PROGRAMA Lenguaje de maquina LEER Y ESCRIBIR EN CELDAS DE MEMORIA ALEATORIAMENTE, SIN SABER EXACTAMENTE QUE ES LO QUE HAY EN LAS CELDAS Y PARA QUE USA EL SISTEMA SU CONTENIDO, NO ES UNA PRACTICA ACONSEJABLE. DE HECHO PODEMOS ALTERAR EL FUNCIONAMIENTO DEL PROGRAMA O DEL ORDENADOR E INCLUSO BLOQUEARLO. EN LA MAYORIA DE LOS CASOS, LAS POSICIONES DE MEMORIA EMPLEADAS POR LOS PROGRAMAS CORRESPONDEN A SU PROPIO SEGMENTO DE DATOS EN EL QUE SE HAN DEFINIDO PREVIAMENTE.

IDENTIFICADOR INDICADOR VALOR EJEMPLOS: CAMPOS SIMPLES Lenguaje de maquina LA SINTAXIS PARA DEFINIR CAMPOS EN EL SEGMENTO DE DATOS DEPENDE EN PARTE DEL ENSAMBLADOR USADO. SINTAXIS: IDENTIFICADOR INDICADOR VALOR EJEMPLOS: ASTERISCO DB “*” ; DB DEFINE BYTE POSICION DW 3280 ; DW DEFINE WORD VALOR32 DD 0 ; DD DEFINE DOBLE PALABRA

[NOMBRE] INDICADOR CONTADOR_DE_REPETICIONES EJEMPLOS: CONJUNTO DE CAMPOS Lenguaje de maquina CUANDO SE QUIERE MULTIPLES CAMPOS DE UN MISMO TAMANO Y ASOCIADOS ENTRE SI, LO QUE EN OTROS LENGUAJES DE PROGRAMACION SE CONOCE COMO MATRICES, ARREGLOS O VECTORES, TENEMOS VARIAS OPCIONES. SINTAXIS: [NOMBRE] INDICADOR CONTADOR_DE_REPETICIONES EJEMPLOS: ARR1 DW 10 DUP(?) ; DIEZ PALABRAS NO INICIALIZADAS ARR2 DB 5 DUP (14) ; OEOEOEOEOE DB 3 DUP(4 DUP (8)) ; 888888888888

REFERENCIAS AL SEGMENTO DE DATOS Lenguaje de maquina UNA VEZ DEFINIDOS YA LOS CAMPOS QUE SE PRECISEN, PARA ACCEDER A ELLOS DESDE EL CODIGO DEL PROGRAMA ES NECESARIO COMPONER UNA DIRECCION. EL PRIMER PASO SERA ASIGNAR A UN REGISTRO DE SEGMENTO, GENERALMENTE DS, LA DIRECCION DEL SEGMENTO DE DATOS. EJEMPLO 1: MOV AX, SEG CARACTERES MOV DS , AX EJEMPLO 2: MOV AX , DATOS ; DATOS ES EL NOMBRE DEL SEGMENTO

EJEMPLO 1