Buses y Periféricos. ITIS. Ensamblador y Turbo debugger

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Buses y Periféricos. ITIS. Ensamblador y Turbo debugger"

Transcripción

1 BUSES Y PERIFÉRICOS (Práctica de introducción a ensamblador. Va acompañada del documento Ensamblador del 8086.doc. Su realización no cuenta para la nota de prácticas) Programación en ensamblador utilizando TASM, TLINK, y TD 1. Introducción La idea de esta práctica es introducir al alumno en el manejo de las herramientas de desarrollo de programas en ensamblador de la familia de procesadores Estas herramientas son: TASM: ensamblador, que transforma el código simbólico con el que trabaja el programador en código máquina. TLINK: enlazador, que convierte el código máquina obtenido por TASM en un formato ejecutable en el sistema operativo base. TD (Turbo debugger): Una herramienta de depuración de errores del código. Nos permite simular la ejecución del código ejecutable y detectar los posibles fallos que se revelarán en tiempo de ejecución. 2. Creación de un programa en ensamblador Un programa en ensamblador debe ser introducido con un editor de textos como el Block de Notas o el WordPad. Se recomienda que su extensión sea.asm. A continuación se le somete a TASM. TASM admite una serie de opciones. Principalmente, en tiempo de desarrollo, nos interesa /zi, que ensambla el código introduciendo elementos añadidos que permitirán posteriormente su tratamiento mediante TD. Una vez hemos conseguido un programa depurado, esta opción nos perjudica porque genera un código menos eficiente. Otra opción de interés es /l, que nos devuelve un archivo con extensión.lst, el cual contiene un listado del código ya ensamblado. En él podemos observar el código máquina que asocia con cada instrucción, o la dirección relativa de cada instrucción con respecto al comienzo de segmento. El resultado de TASM sobre un archivo de código es un nuevo archivo con extensión.obj. Este archivo será el parámetro con que alimentaremos a TLINK. Éste también lleva una opción relacionada con el debugger que, por el momento, siempre añadiremos: /v. TLINK nos devuelve un archivo con extensión.exe. El ejecutable. Se podrá mandar a ejecutar directamente sobre MSDOS. En este caso, si ocurren errores, sólo podremos observar un comportamiento extravagante del sistema, que se corresponderá poco con lo que esperábamos de él. Por ello preferimos ejecutarlo en el debugger que nos permitirá ver paso a paso (instrucción a instrucción) la ejecución y determinar en qué momento se sale de nuestras previsiones. 1

2 3.- Eliminación de errores. (Uso del TD) Una vez disponemos del archivo ejecutable (extensión.exe) podemos invocar con él al Turbo Debugger. Esta herramienta nos permitirá ver el programa fuente así como el código generado por el ensamblador en sus posiciones de memoria definitivas para la actual ejecución. También podemos observar (y modificar) los registros del procesador y los datos que hayamos situado en memoria (segmento de datos). Nos permitirá realizar una ejecución "segura" del programa, entendiendo por esto que si el programa alberga errores tenemos la certeza de que estos no van a perjudicar al sistema, lo que no podemos asegurar si directamente lo sometemos al msdos. Y principalmente, porque es la opción más práctica, podemos ejecutar el programa instrucción a instrucción, con lo cual comprobamos que cada instrucción modifica exactamente aquellos recursos que esperábamos que modificase y de la manera en que deseábamos que lo hiciera cuando escribimos el programa. Para cargar el programa en el debugger basta invocar a éste con el archivo ejecutable como parámetro. Si la carga se realiza adecuadamente, estaremos visualizando el código fuente, en ensamblador, de nuestro programa. A partir de aquí podemos mandar a ejecutar el programa, tanto de forma completa como paso a paso. En este último caso, tras cada paso, una flechita indicará en el código fuente cual es la última instrucción que se ha ejecutado. La opción CPU del menú VIEW nos abrirá una ventana en la que podremos ver el código máquina ya localizado en memoria, con la flechita apuntando a la primera instrucción a ejecutar. También veremos otra ventana en la que aparecen los registros del procesador y su contenido se irá modificando en cada paso de ejecución. Y, por último, podemos ver el contenido del espacio de memoria que también se irá modificando a medida que vamos ejecutando instrucciones que le afecten. ACTIVIDADES A REALIZAR. 1º Introducirán el código que viene a continuación en un archivo de texto utilizando cualquier editor de textos plano (que no añada controles de edición): WordPad, NotePad. (Documento a generar 1: Un listado del programa con cada instrucción comentada. Ayúdese con el listado de instrucciones y directivas.) 2º Ensamblarán y enlazarán el archivo generado hasta obtener un ejecutable. (Este código en principio no tiene errores, de manera que cualquier problema que surja se deberá a la transcripción). Realizar una ejecución en msdos. (Documento a generar 2: Explicar qué es lo que hace el programa) 3º Cargarán el código en el TD y lo ejecutarán paso a paso. (Documento a generar 3: Explicar qué función realizan las teclas F1, F2, ALT-F5) (Documento a generar 4: Tratar de identificar en el programa qué secciones de código realizan cada parte del resultado de ejecución del programa según el documento 2) 2

3 Bibliografía: Turbo Debugger 3.0, User's Guide BORLAND Turbo Assembler 3.0, User's Guide BORLAND 8086/87 Programación ensamblador en entorno msdos. Miguel Angel Rodríguez Roselló Ediciones Anaya Multimedia

4 com_pantalla EQU 0B800h tam_pantalla EQU 4000 DATOS SEGMENT TEXTO DB "BUSES Y PERIFERICOS. EUI.",13,10,"TITULACION DE INGENIERO TECNICO DE SISTEMAS",13,10,'$' TEXTE DB "AMIGOS Y AMIGAS, BIEN VENIDOS A LAS PRACTICAS DE BUSES PERIFERICOS",13,10,'$' DATOS ENDS PILA apuntador PILA SEGMENT DB 127 DUP('p') DB 'P' ENDS CODIGO SEGMENT ASSUME CS:CODIGO, DS:DATOS, SS:PILA borra_pantalla PROC PUSH ES PUSH AX PUSH CX PUSH DI PUSHF MOV AX, com_pantalla MOV ES,AX MOV CX, (tam_pantalla/2)+1 MOV DI, tam_pantalla MOV AL, '-' MOV AH, 07h STD REP STOSW POPF POP DI POP CX POP AX POP ES RET ENDP Todo_es_empezar: MOV AX, DATOS MOV DS, AX MOV AX, PILA MOV SS, AX MOV SP, OFFSET apuntador MOV AH,09h MOV DX, OFFSET TEXTO INT 21h Call borra_pantalla NO: MOV AH,09h MOV DX, OFFSET TEXTE INT 21h f: MOV AH, 4Ch INT 21h CODIGO ENDS END Todo_es_empezar 4

5 INSTRUCCIONES 8086 Transferencia de datos IN LAHF LDS LEA LES MOV OUT POP POPF PUSh PUSHF SAHF XCHG XLAT - entrada de bytes o palabra - Cargar AH con las banderas - Cargar puntero usando DS - Cargar dirección efectiva - Cargar puntero usando ES - Mover - Salida de byte o palabra - Recuperar palabra de la pila - Recuperar banderas de la pila - Depositar palabra en la pila - Depositar banderas en la pila - Almacenar Ah en banderas - Intercambiar dos operandos - Traducir Instrucciones aritméticas AAA - Ajuste ASCII en suma AAD - Ajuste ASCII en división AAM - Ajuste ASCII en multiplicación AAS - Ajuste ASCII en resta ADC - Sumar con acarreo ADD - Sumar (sin acarreo) CBW - Convertir byte en palabra CMP - Comparar operandos CWD - Convertir palabra a doble palabra DAA - Ajuste decimal en suma DAS - Ajuste decimal en resta DEC - Decrementar en uno DIV - Dividir sin signo IDIV - Dividir con signo IMUL - Multiplicar con signo INC - Incrementar en uno MUL - Multiplicar sin signo NEG - Negar/formar complemento a 2 SBB - Restar con acarreo SUB - Restar (sin acarreo) Instrucciones de manejo de bits AND - Y lógico NOT - Negación lógica OR - O lógico RCL - Rotación a izquierda a través del bit de acarreo RCR - Rotación a derecha a través del bit de acarreo ROL - Rotación a izquierda ROR - Rotación a derecha SAL - Desplazamiento aritmético a izquierda SAR - Desplazamiento aritmético a derecha (conservando el signo) SHL - Desplazamiento lógico a izquierda SHR - Desplazamiento lógico a derecha TEST - Comparación lógica de dos operandos XOR - O lógico exclusivo Instrucciones de transferencia del control CALL JA JAE JB JBE JC JCXZ JE JG JGE JL JLE JNA JNAE JNB JNBE JNC JNE JNG - Llamada a procedimiento - Saltar si superior - Saltar si superior o igual - Saltar si inferior - Saltar si inferior o igual - Saltar si hay acarreo - Saltar si CX es cero - Saltar si igual - Saltar si mayor - Saltar si mayor o igual - Saltar si menor - Saltar si menor o igual - Saltar si no es mayor - Saltar sino es mayor o igual - Saltar si no es menor - Saltar si no es menor o igual - Saltar si no hay acarreo - Saltar si no es igual - Saltar si no es mayor JNGE - Saltar si no es mayor o igual JNL - Saltar si no es menor JNLE - Saltar si no es menor o igual JNO - Saltar si no se produce desbordamiento JNP - Saltar si no hay paridad JNS - Saltar si no es negativo JNZ - Saltar si no es cero JMP - Salto incondicional JO - Saltar si se produce desbordamiento JP - Saltar si hay paridad JPE - Saltar si hay paridad par JPO - Saltar si hay paridad impar JS - Saltar si el signo es negativo JZ - Saltar si el resultado es cero LOOP - Bucle hasta que acabe contador LOOPE - Bucle mientras igual LOOPNE - Bucle mientras no igual LOOPNZ - Bucle mientras resultado no cero LOOPZ - Bucle mientras resultado cero RET - Retornar de un procedimiento Instrucciones de manejo de cadenas. CMPS - Comparar cadenas de bytes o palabras CMPSB - Comparar cadenas de bytes CMPSW - Comparar cadenas de palabras LODS - Cargar cadena (bytes o palabras) LODSB - Cargar cadena de bytes LODSW - Cargar cadena de palabras MOVS - Mover cadena (bytes o palabras) MOVSB - Mover cadenas de bytes MOVSW - Mover cadenas de palabras REP - Repetir operación de cadena REPE - Repetir mientras igual REPNE - Repetir mientras no igual REPNZ - Repetir mientras resultado no cero REPZ - Repetir mientras resultado cero SCAS - Explorar cadena (b o p) SCASB - Explorar cadena de bytes SCASW - Explorar cadena de palabras STOS - Almacenar cadena (b o w) STOSB - Almacenar cadena de bytes STOSW - Comprarse una tienda en el polo norte. Instrucciones de interrupción. INT INTO IRET - Invocar a la interrupción - Interrupción si desbordamiento - Retorno de interrupción Instrucciones de control de microprocesador. CLC - Borrar bandera de acarreo CLD - Borrar bandera de dirección CLI - Borrar bandera de interrupción CMC - Complementar bandera de acarreo ESC - Escape (transmitir información a un coprocesador) HLT - Parar el procesador LOCK - Bloquear el bus NOP - No operación STC - Activar bandera de acarreo STD - Activar bandera de dirección STI - Activar bandera de interrupción WAIT - Esperar a que termine un coprocesador. 5

6 DIRECTIVAS DEL COMPILADOR Directivas de datos Definición de símbolos EQU - Asigna símbolo a expresión fija = - Asigna símbolo a expresión variable Definición de datos DB - Definir byte DW - Definir palabra DD - Definir doble palabra DQ - Definir cuádruple palabra DT - Definir diez bytes Referencias externas PUBLIC - Definir símbolo público EXTRN - Definir símbolo externo INCLUDE - Incluir fichero fuente Control del ensamblador END - Fin del módulo fuente ORIGIN - Origen de código o datos EVEN - Poner contador de posiciones a par.radix - Definir base de numeración por defecto. Definición de segmentos y procedimientos SEGMENT - Comienzo de segmento ENDS - Final de segmento ASSUME - Suponer registros de segmentos PROC - Comienzo de procedimiento ENDP - Fin de procedimiento Definición de bloques GROUP - Agrupar segmentos NAME - Nombrar un módulo LABEL - Asignar un atributo a un nombre RECORD - Definir registro STRUC - Definir estructura Directivas condicionales IF - Evaluar condición y decidir ELSE - Si condición es falsa ENDIF - Fin de estructura condicional Directivas de listado TITLE - Título del listado SUBTTL - Subtítulo del listado Listado de macros.lall - Listar macros y expansiones.sall - Suprimir listado macros y expansiones.xall - Listar sólo macros que generan código objeto Control del listado.xcref - Suprimir referencias cruzadas.cref - Restaurar listado de referencias cruzadas.xlist - Suprimir listado ensamblador.list - Restaurar listado ensamblador Comentarios COMMENT - Comentario Mensajes %OUT - Emitir un mensaje durante el ensamblaje Control del listado de los bloques asociados a una condición falsa.lfcond - Listar bloques asociados a una condición falsa.sfcond - Suprimir ese listado mencionado arriba.tfcond - Invertir el modo de listado de los bloques... Directivas de macro Definición de macros MACRO - Comienza macro ENDM - Fin macro LOCAL - Define etiquetas dentro de macro EXITM - Terminar expansión de la macro PURGE - Borrar macros de la memoria REPT - Repetir bloque de sentencias un número de veces IRP - Repetir bloque de sentencias con un valor cada vez IRPC - Repetir bloque de sentencias con un carácter cada vez Operadores de macro & - Operador para concatenar símbolos o texto ;; - Operador para comentarios que no aparecerán en la expansión! - Operador para interpretar caracteres en sentido literal % - Operador para convertir una expresión en un número Formato del listado PAGE - Formato de la página del listado 6

Resumen de las instrucciones del 8086/8088

Resumen de las instrucciones del 8086/8088 Resumen de las instrucciones del 8086/8088 En este capítulo se hace un resumen de las instrucciones del 8086/8088. Estas instrucciones se encuentran explicadas más detalladamente en otro capítulo. Se puede

Más detalles

CONJUNTO DE INSTRUCCIONES µp8086

CONJUNTO DE INSTRUCCIONES µp8086 CONJUNTO DE INSTRUCCIONES µp8086 Se llama INSTRUCCIÓN a las palabras reservadas ó MNEMÓNICOS en ensamblador, los cuales se traducen a lenguaje máquina para su posterior ejecución por parte de la CPU. Existen

Más detalles

REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086

REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086 REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086 INSTRUCCIONES DE TRANSFERENCIA: NINGUNA INSTRUCCIÓN DE TRANSFERENCIA AFECTA AL REGISTRO DE ESTADO (SALVO LAS EXPLÍCITAS CON EL REGISTRO DE ESTADO) A)

Más detalles

ESTRUCTURA Y ORGANIZACIÓN DE COMPUTADORES

ESTRUCTURA Y ORGANIZACIÓN DE COMPUTADORES Instrucciones del 8088/8086. Instrucciones de trasferencia de datos. MOV MOV destino, origen Transfiere un byte o una palabra desde el operando origen al operando destino. PUSH PUSH origen Decrementa el

Más detalles

ITT-327-T Microprocesadores

ITT-327-T Microprocesadores ITT-327-T Microprocesadores Lenguaje de Programación Ensamblador. Set de Instrucciones del 8088/8086. El set de instrucciones de un microprocesador define las operaciones básicas que el programador puede

Más detalles

Intel 8086. Arquitectura. Programación en Ensamblador Ing. Marcelo Tosini - 2001

Intel 8086. Arquitectura. Programación en Ensamblador Ing. Marcelo Tosini - 2001 Intel 8086 Arquitectura Características generales Procesador de 16 bits Bus de direcciones de 20 bits : 1 Mbyte Bus de datos interno de 16 bits Bus de datos externo de 16 bits en el 8086 8 bits en el 8088

Más detalles

Los números naturales y enteros en el 80X86 y en LAN

Los números naturales y enteros en el 80X86 y en LAN Los números naturales y enteros en el 80X86 y en LAN 1. Los números naturales en el 80X86/TASM Representación Sistema de representación En el 80X86 (y en la mayoría de los procesadores), los números naturales

Más detalles

Instrucción De Salto Incondicional

Instrucción De Salto Incondicional INSTRUCCIONES DE CONTROL DE FLUJO Los programas que se han desarrollado hasta ahora se ejecutan en forma secuencial, esto es, el programa inicia su ejecución con la primera instrucción y continúa de arriba

Más detalles

CONJUNTO DE INSTRUCCIONES Microprocesador 8086

CONJUNTO DE INSTRUCCIONES Microprocesador 8086 CONJUNTO DE INSTRUCCIONES Microprocesador 8086 Clasificación: TRANSFERENCIA DE DATOS ARITMÉTICAS LÓGICAS TRANSFERENCIA DE CONTROL MANEJO DE CADENAS CONTROL DE MAQUINA ENTRADA/SALIDA El formato general

Más detalles

Instrucciones del microprocesador

Instrucciones del microprocesador Instrucciones del microprocesador Formato de las Instrucciones Las líneas de instrucciones se integran de 4 campos. [Identificador]: Se utiliza par etiquetar a las intrucciones donde se realizara el salto,nombre

Más detalles

Tema 4. Lenguaje máquina y lenguaje ensamblador

Tema 4. Lenguaje máquina y lenguaje ensamblador Enunciados de problemas Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Tema 4: Hoja: 2 / 28 Tema 4: Hoja: 3 / 28 Base

Más detalles

Tema 5. Formato de instrucciones. Directivas, instrucciones de cadena y programas de varios módulos

Tema 5. Formato de instrucciones. Directivas, instrucciones de cadena y programas de varios módulos Tema 5. Formato de instrucciones. Directivas, instrucciones de cadena y programas de varios módulos Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería

Más detalles

Intel 8086 modelo básico (primera parte) Registros:

Intel 8086 modelo básico (primera parte) Registros: Intel 8086 modelo básico (primera parte) Registros: Uso general: AX, BX, CX, DX, SI, DI, BP. Uso con direccionamento especial: SP, IP. Registros de segmento: CS, SS, DS, ES. Modelo de los registros: 20

Más detalles

1. Introducción a los microprocesadores de la familia Intel 8088/8086

1. Introducción a los microprocesadores de la familia Intel 8088/8086 1. Introducción a los microprocesadores de la familia Intel 8088/8086 2 Descripción de las patas de conexión del 8088 1 2.1 Descripción de las patas en modo mínimo 2 1 Conexión en modo mínimo Vcc De lóg.

Más detalles

Trabajo Práctico Nro 3: Assembler

Trabajo Práctico Nro 3: Assembler Año 28 Banderas Nombre Estado = Estado = 1 Desbordamiento: Indica cuando el resultado de una operación con NV-No hubo OV-Desborde signo a excedido la capacidad del up. desborde Dirección: Controla la selección

Más detalles

(2) Unidad 2. Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

(2) Unidad 2. Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM (2) Unidad 2 Modelo de Programación del 80x86 de Intel SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM (2) Índice 2. Modelo de programación del 80x86 de Intel. 2.1. Familia

Más detalles

Tema 4. Lenguaje máquina y lenguaje ensamblador

Tema 4. Lenguaje máquina y lenguaje ensamblador Soluciones a los problemas impares Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Tema 4: Hoja: 2 / 36 Tema 4: Hoja:

Más detalles

Estructura de Computadores: Tema 1. Introducción. Índice. Arquitectura del i8086

Estructura de Computadores: Tema 1. Introducción. Índice. Arquitectura del i8086 Estructura de Computadores: Tema 1 El procesador Introducción Estudiaremos la arquitectura del procesador i8086 (CPU, registros,...), su gestion de la memoria y su conjunto de instrucciones. Programaremos

Más detalles

Comparativas del número de ciclos de ejecución de un programa en ensamblador

Comparativas del número de ciclos de ejecución de un programa en ensamblador Trabajo evaluable 1 Comparativas del número de ciclos de ejecución de un programa en ensamblador Arquitectura de Computadores I I. T. Informática de Sistemas Curso 2009-2010 Trabajo evaluable 1: Hoja:

Más detalles

Tema 5: La pila, las macros y los procedimientos

Tema 5: La pila, las macros y los procedimientos Tema 5: La pila, las macros y los procedimientos S La pila S Las macros S Definición de procedimientos S Tipos de procedimientos: NEAR y FAR S Paso de parámetros a un procedimiento S Mediante registros

Más detalles

Repertorio de Instrucciones del 8086/8088

Repertorio de Instrucciones del 8086/8088 Repertorio de Instrucciones del 8086/8088 A continuación se desribe el repertorio de instrucciones del 8086/8088. Estas instrucciones se encuentran más detalladas en [Rod00] y [PCG00]. AAA Ajuste ASCII

Más detalles

Nombre del módulo: Instalación de Sistemas Microprocesados. Guía sobre Programación en Ensamblador usando Emulador (emu8086)

Nombre del módulo: Instalación de Sistemas Microprocesados. Guía sobre Programación en Ensamblador usando Emulador (emu8086) Nombre del Plantel: Conalep Tehuacán 150 Nombre del módulo: Instalación de Sistemas Microprocesados Guía sobre Programación en Ensamblador usando Emulador (emu8086) Ing. Jonathan Quiroga Tinoco Grupo:

Más detalles

PRONTUARIO I. INFORMACIÓN GENERAL

PRONTUARIO I. INFORMACIÓN GENERAL UNIVERSIDAD INTERAMERICANA DE PUERTO RICO RECINTO METROPOLITANO FACULTAD DE CIENCIAS Y TECNOLOGÍA DEPARTAMENTO DE CIENCIAS DE COMPUTADORAS Y MATEMÁTICAS PRONTUARIO I. INFORMACIÓN GENERAL Título del Curso:

Más detalles

Registros de la CPU. IP Registro de apuntador de siguiente instrucción

Registros de la CPU. IP Registro de apuntador de siguiente instrucción Registros de la CPU La CPU tiene 14 registros internos, cada uno de 16 bits. Los primeros cuatro, AX, BX, CX, y DX son registros de uso general y también pueden ser utilizados como registros de 8 bits,

Más detalles

Tema 8. Directivas y programas complejos

Tema 8. Directivas y programas complejos Tema 8. Directivas y programas complejos Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 34 Índice Instrucciones de manejo de cadenas

Más detalles

El microprocesador de 16 bits 8086

El microprocesador de 16 bits 8086 INTRODUCCIÓN El microprocesador de 16 bits 8086 En 1978 Intel sacó al mercado el 8086, con un bus de datos de 16 bits y capaz de direccionar hasta 1 Mb de memoria. La importancia del 8086 se debe a que

Más detalles

[etiqueta:] REP MOVSn

[etiqueta:] REP MOVSn INSTRUCCIONES DE CADENA Instrucción MOVSn MOVS mueve un byte, palabra o palabra doble desde una localidad en memoria a otra. Se carga la dirección de los operandos en los registros DI (Apuntador a la cadena

Más detalles

Tema 1. Fundamentos del lenguaje ensamblador

Tema 1. Fundamentos del lenguaje ensamblador Tema 1. Fundamentos del lenguaje ensamblador Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Índice Estructura del

Más detalles

Tema 4. Fundamentos del ensamblador

Tema 4. Fundamentos del ensamblador Tema 4. Fundamentos del ensamblador Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 30 Índice Filosofía de programación Organigramas

Más detalles

Tema 4. La pila, los procedimientos y las macros

Tema 4. La pila, los procedimientos y las macros Tema 4. La pila, los procedimientos y las macros Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 2010-2011 Índice

Más detalles

Este grupo es una continuación del anterior, incluye las siguientes instrucciones:

Este grupo es una continuación del anterior, incluye las siguientes instrucciones: CONJUNTO DE INSTRUCCIONES (Microprocesadores 8086/8088) Se pueden clasificar en los siguientes grupos: Instrucciones de Transferencia de Datos. Estas instrucciones mueven datos de una parte a otra del

Más detalles

MICROPOCESADOR NOTAS DE CURSO (Versión 2.1)

MICROPOCESADOR NOTAS DE CURSO (Versión 2.1) MICROPOCESADOR 8086 NOTAS DE CURSO (Versión 2.1) Arquitectura de Computadores 2 Facultad de Ingeniería ÍNDICE DIRECCIONAMIENTO DE MEMORIA... 2 MODOS DE DIRECCIONAMIENTO... 3 REGISTRO... 3 VALOR o INMEDIATO...

Más detalles

El Diseño de un Lenguaje Máquina

El Diseño de un Lenguaje Máquina Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje

Más detalles

Fecha de elaboración: 28 Mayo de 2010 Fecha de última actualización:

Fecha de elaboración: 28 Mayo de 2010 Fecha de última actualización: PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Sistemas Computacionales Integral profesional Programa elaborado por: Lenguaje ensamblador Horas teóricas: 2 Horas prácticas:

Más detalles

Arquitectura Interna del 8088

Arquitectura Interna del 8088 Arquitectura Interna del 8088 Intel diseñó el 8088/8086 para realizar al mismo tiempo las principales funciones internas de transferencia de datos y búsqueda de instrucciones. Para conseguir esto, el 8088

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA IC 2005 1 5041 NOMBRE DE LA ASIGNATURA Organización de Computadoras y Lenguaje Ensamblador PRÁCTICA No. 7 LABORATORIO DE NOMBRE

Más detalles

MANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086

MANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086 MANUAL DE PROGRAMACIÓN EN ENSAMBLADOR 8086 ALUMNO: SANTIAGO SÁNCHEZ GONZÁLEZ TITULACIÓN: I.T.I. SISTEMAS ARQUITECTURA DE COMPUTADORES I ÍNDICE: PÁGINA Introducción al ensamblador...2 Procesos para la creación

Más detalles

Conceptos de Arquitectura de Computadoras Curso 2015

Conceptos de Arquitectura de Computadoras Curso 2015 PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.

Más detalles

Tema 6. Segmentación y modos de direccionamiento

Tema 6. Segmentación y modos de direccionamiento Tema 6. Segmentación y modos de direccionamiento Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 21 Índice Segmentación Modos de direccionamiento

Más detalles

Fig. 1: Tipos de datos que puede manejar el procesador

Fig. 1: Tipos de datos que puede manejar el procesador 1. Introducción 2. Registros internos 3. Almacenamiento de datos 4. Modos de direccionamiento 5. Juego de Instrucciones 6. Etiquetas, cometarios y directivas 7. Problemas 1. Introducción El lenguaje ensamblador

Más detalles

Trabajo Práctico Nro 5 Pase de Parámetros e Instrucciones de Cadena

Trabajo Práctico Nro 5 Pase de Parámetros e Instrucciones de Cadena Instrucciones de Cadena Pase de parámetros Introducción El envío de parámetros a una función de asembler es un problema que nos enfrentamos comúnmente a la hora de desarrollar un software en este lenguaje,

Más detalles

Examen de teoría (5 puntos)

Examen de teoría (5 puntos) Bien: Mal: No contestadas: Examen de teoría (5 puntos) El examen tendrá una duración total de 2 horas. El examen constará de dos partes: teoría y problemas. La nota final será la suma de las dos partes

Más detalles

Unidad II: Programación básica

Unidad II: Programación básica Unidad II: Programación básica 2.1 Ensamblador (y ligador) a utilizar Aunque todos los ensambladores realizan básicamente las mismas tareas, podemos clasificarlos de acuerdo a características. Así podemos

Más detalles

Examen de Laboratorio de Estructura de Computadores Septiembre 2005 I.T. Informática de Sistemas / Gestión Departamento de Automática ATC -

Examen de Laboratorio de Estructura de Computadores Septiembre 2005 I.T. Informática de Sistemas / Gestión Departamento de Automática ATC - Test (3 puntos) Pregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15 1) Cual de las siguientes afirmaciones es correcta? [_] a) En lenguaje máquina se representan las

Más detalles

Repertorio de instrucciones x86-16bits Índice

Repertorio de instrucciones x86-16bits Índice Índice 1. Generalidades 2. Instrucciones de transferencia 3. Instrucciones de proceso 4. Instrucciones de bifurcación 5. Otras instrucciones 1/145 1. Generalidades No se pueden realizar operaciones donde

Más detalles

Tema 5.2: Segmentación y modos de direccionamiento

Tema 5.2: Segmentación y modos de direccionamiento Tema 5.2: Segmentación y modos de direccionamiento Segmentación Modos de direccionamiento Direccionamiento relativo Instrucciones de desplazamiento Instrucciones lógicas Ejemplo de acceso a una cadena

Más detalles

Antecedentes. Año 1978: Se lanza la familia iapx86. Procesador 8086: 16 bits 8 meses después: Procesador Ídem 8086 pero bus externo = 8 bits

Antecedentes. Año 1978: Se lanza la familia iapx86. Procesador 8086: 16 bits 8 meses después: Procesador Ídem 8086 pero bus externo = 8 bits Arquitectura IA-32 Antecedentes Año 1978: Se lanza la familia iapx86 Procesador 8086: 16 bits 8 meses después: Procesador 8088. Ídem 8086 pero bus externo = 8 bits Compromiso público de compatibilidad

Más detalles

LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 11 PRÁCTICA 11 CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES

LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 11 PRÁCTICA 11 CUATRO OPERACIONES FUNDAMENTALES EN NÚMEROS DE 8 BYTES PRÁCTICA 11 SUMA, RESTA, MULTIPLICACIÓN Y DIVISIÓN DE DOS NÚMEROS ENTEROS POSITIVOS DE HASTA 20 DÍGITOS DECIMALES 1. INTRODUCCIÓN Mediante esta práctica, trabajaremos con números binarios de hasta veinte

Más detalles

Comparaciones en lenguaje ensamblador

Comparaciones en lenguaje ensamblador Comparaciones en lenguaje ensamblador Objetivo: Entender cómo se realizan las comparaciones de datos en lenguaje ensamblador En lenguaje ensamblador no existe la instrucción IF como se trabaja en otros

Más detalles

P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente:

P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente: Problemas P1.- Para facilitar la tarea, suponemos definido en el segmento de datos lo siguiente: ascii DB 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 7_segm DB 3fh,06h,,71h el núcleo del código sería: mov dl, al lea

Más detalles

Instrucciones de manejo de cadenas

Instrucciones de manejo de cadenas Instrucciones de manejo de cadenas Nombre: Formato: MOVS/MOVSB/MOVSW (MOV BYTE/WORD STRING) MOVS destino, fuente MOVSB/MOSW Descripción: Transfiere el byte o la palabra apuntada por DS:SI al byte o palabra

Más detalles

Arquitectura IA-32. Ing. Marcelo Doallo. Marzo 2013

Arquitectura IA-32. Ing. Marcelo Doallo. Marzo 2013 Marzo 2013 Antecedentes Año 1978: Se lanza la familia iapx86 Procesador 8086: 16 bits 8 meses después: Procesador 8088. Ídem 8086 pero bus externo = 8 bits Compromiso público de compatibilidad ascendente

Más detalles

Tema 4. Lenguaje máquina y lenguaje ensamblador

Tema 4. Lenguaje máquina y lenguaje ensamblador Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 47 Índice Introducción Juego de instrucciones Estructura

Más detalles

Nombre del Plantel: Conalep Tehuacán 150. Nombre del módulo: Instalación de Sistemas Microprocesados

Nombre del Plantel: Conalep Tehuacán 150. Nombre del módulo: Instalación de Sistemas Microprocesados Nombre del Plantel: Conalep Tehuacán 150 Nombre del módulo: Instalación de Sistemas Microprocesados Tutorial sobre programación en lenguaje ensamblador Nombre del docente: Ing. Jonathan Quiroga Tinoco

Más detalles

Programación de IA-32 Modo Real

Programación de IA-32 Modo Real Programación de IA-32 Modo Real Control del flujo de la ejecución Erwin Meza Vega IA-32 Modo real (1/2) Acceso sólo a características limitadas del procesador Se comporta como un 8086 muy rápido Uso de

Más detalles

Universidad Nacional de Ingeniería Arquitectura de Maquinas I. Unidad II: Arquitectura y Programacion de un Microprocesador (80X86)

Universidad Nacional de Ingeniería Arquitectura de Maquinas I. Unidad II: Arquitectura y Programacion de un Microprocesador (80X86) Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad II: Arquitectura y Programacion de un Microprocesador (80X86) Arq. de Computadora I Ing. Carlos Ortega H. 1 Interrupciones FUNCIÓN INT

Más detalles

ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS. Características de un Ensamblador de Archivo

ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS. Características de un Ensamblador de Archivo ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS Características de un Ensamblador de Archivo Traduce de Leng Ensamblador a Lenguaje máquina Permite definición de etiquetas Reserva memoria para variables octales

Más detalles

Tema 2: Segmentación y modos de direccionamiento

Tema 2: Segmentación y modos de direccionamiento Tema 2: Segmentación y modos de direccionamiento Segmentación Modos de direccionamiento Direccionamiento relativo Instrucciones de transferencia de control Instrucciones aritméticas: comparación Ejemplo

Más detalles

Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,15

Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,15 Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,15 Sistemas operativos, arquitectura von Neumann, configuración del PC (3 puntos) 1) Cual de las siguientes afirmaciones

Más detalles

Antecedentes. Año 1978: Se lanza la familia iapx86. Procesador 8086: 16 bits 8 meses después: Procesador Ídem 8086 pero bus externo = 8 bits

Antecedentes. Año 1978: Se lanza la familia iapx86. Procesador 8086: 16 bits 8 meses después: Procesador Ídem 8086 pero bus externo = 8 bits Arquitectura IA-32 Antecedentes Año 1978: Se lanza la familia iapx86 Procesador 8086: 16 bits 8 meses después: Procesador 8088. Ídem 8086 pero bus externo = 8 bits Compromiso público de compatibilidad

Más detalles

Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,2

Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,2 Pregunta correcta=0,4 Pregunta no contestada=0 Pregunta incorrecta (tipo test)=-0,2 Sistemas operativos, arquitectura von Neumann, configuración del PC (4 puntos).- Señale la opción incorrecta: [_] a)

Más detalles

(3) Unidad 3. Interfaz del ensamblador con el lenguaje C SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

(3) Unidad 3. Interfaz del ensamblador con el lenguaje C SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM Unidad 3 Interfaz del ensamblador con el lenguaje C SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM Índice 3. Interfaz del ensamblador con el lenguaje C. 3.1. Características

Más detalles

Examen de teoría (5 puntos)

Examen de teoría (5 puntos) Examen de Estructura de Computadores. Septiembre de 25 Bien: Mal: No contestadas: Examen de teoría (5 puntos) El examen constará de dos partes: El examen tendrá una duración total de 2 horas. La nota final

Más detalles

ESTRUCTURA DE COMPUTADORES I (Capítulo 14: DIRECTIVAS) 1/32 14-DIRECTIVAS

ESTRUCTURA DE COMPUTADORES I (Capítulo 14: DIRECTIVAS) 1/32 14-DIRECTIVAS ESTRUCTURA DE COMPUTADORES I (Capítulo 14: DIRECTIVAS) 1/32 14-DIRECTIVAS 14.1 INTRODUCCIÓN: Las directivas o pseudooperaciones se pueden dividir en cuatro grupos funcionales:! Directivas de datos.! Directivas

Más detalles

DIRECTIVAS DEL ASM86

DIRECTIVAS DEL ASM86 DIRECTIVAS DEL ASM86 Directiva SEGMENT / ENDS nombre SEGMENT [alineación] [combinación] [nombre_clase] PARA PUBLIC BYTE COMMON WORD STACK PAGE MEMORY INPAGE AT nombre ENDS Se usa para definir un segmento

Más detalles

CON LOS VALORES ASCII

CON LOS VALORES ASCII PRÁCTICA 6 FAMILIARIZARSE CON LOS VALORES ASCII DE TODAS LAS FUNCIONES DEL TECLADO. INTRODUCCIÓN La práctica siguiente está enfocada a que el alumno se familiarice con los valores ASCII de todas las funciones

Más detalles

Programación en lenguaje ensamblador. Instrucciones básicas. Formatos. Direccionamientos

Programación en lenguaje ensamblador. Instrucciones básicas. Formatos. Direccionamientos TEMA 33 Programación en lenguaje ensamblador. Instrucciones básicas. Formatos. Direccionamientos Mª Luisa Garzón Villar Cuerpo de Profesores de Enseñanza Secundaria Volumen II. Informática ÍNDICE SISTEMÁTICO

Más detalles

Arquitectura intel 8086. Preámbulo de OSO para alumnos formados en el procesador MIPS. Asignatura Sistemas Operativos Murcia abril de 2005

Arquitectura intel 8086. Preámbulo de OSO para alumnos formados en el procesador MIPS. Asignatura Sistemas Operativos Murcia abril de 2005 Arquitectura intel 8086 Preámbulo de OSO para alumnos formados en el procesador MIPS Asignatura Sistemas Operativos Murcia abril de 2005 página 1. Introducción 2 2.- Direccionamiento y Registros de Segmento

Más detalles

Aprendiendo Sistemas Operativos: Programación de Procesadores de Arquitectura IA-32

Aprendiendo Sistemas Operativos: Programación de Procesadores de Arquitectura IA-32 Aprendiendo Sistemas Operativos: Programación de Procesadores de Arquitectura IA-32 Este documento forma parte de la serie Aprendiendo Sistemas Operativos y sirve como una introducción a los aspectos básicos

Más detalles

Ensamblador. Introducción. Dpto. Física y Arquitectura de Computadores. Universidad Miguel Hernandez

Ensamblador. Introducción. Dpto. Física y Arquitectura de Computadores. Universidad Miguel Hernandez Dpto. Física y Arquitectura de Computadores Universidad Miguel Hernandez Es el lenguaje de más bajo nivel que admite una máquina. El ensamblador hace que el código binario(máquina sea transparente al usuario)

Más detalles

Intel Departamento de Arquitectura 1. Facultad de Ingeniería Universidad de la República. Arquitectura de Computadoras, 2016

Intel Departamento de Arquitectura 1. Facultad de Ingeniería Universidad de la República. Arquitectura de Computadoras, 2016 Intel 8086 Departamento de Arquitectura 1 1 Instituto de Computación Facultad de Ingeniería Universidad de la República Arquitectura de Computadoras, 2016 Temas 1 2 3 Registros Segmentación Stack 4 Set

Más detalles

Examen de Laboratorio de Estructura de Computadores I.T. Informática de Gestión / Sistemas. 16 de junio de 2010 Departamento de Automática ATC

Examen de Laboratorio de Estructura de Computadores I.T. Informática de Gestión / Sistemas. 16 de junio de 2010 Departamento de Automática ATC ExamendeLaboratoriodeEstructuradeComputadores I.T.InformáticadeGestión/Sistemas.16dejuniode2010 DepartamentodeAutomática ATC Test (3 puntos) Pregunta correcta = 0,30 Pregunta no contestada = 0 Pregunta

Más detalles

Tema 4: Lenguaje máquina - Lenguaje ensamblador

Tema 4: Lenguaje máquina - Lenguaje ensamblador Tema 4: Lenguaje máquina - Lenguaje ensamblador S Introducción S Modos de direccionamiento: S Juego de instrucciones: S Direccionamiento inmediato S Instrucciones de transferencia S Direccionamiento directo

Más detalles

Instrucciones de Control de Flujo y Usos de la Pila

Instrucciones de Control de Flujo y Usos de la Pila 1 Instrucciones de Control de Flujo y Usos de la Pila Objetivos Generales Facultad: Estudios Tecnologicos. Escuela: Electrónica Asignatura: Microprocesadores Analizar la forma en que se ejecutan algunas

Más detalles

Un. VIII. Generación de Código Objeto

Un. VIII. Generación de Código Objeto Un. VIII. Generación de Código Objeto 8.1 Lenguaje Máquina Es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador. El lenguaje máquina solo es entendible por las computadoras.

Más detalles

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 1 - INTRODUCCIÓN JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ

2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 1 - INTRODUCCIÓN JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ ARQUITECTURAS DE COMPUTADORES 2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 1 - INTRODUCCIÓN JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 1.MaNoTaS 1 Definiciones (I) Descripción Un

Más detalles

DEBUG Y USO DE CADENAS.

DEBUG Y USO DE CADENAS. 1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Microprocesadores. Lugar de ejecución: Microprocesadores (Edificio 3, 2da planta). DEBUG Y USO DE CADENAS. Objetivos específicos Analizar paso

Más detalles

Arquitectura (Procesador familia 80 x 86 )

Arquitectura (Procesador familia 80 x 86 ) Arquitectura (Procesador familia 80 x 86 ) Diseño de operación Basada en la arquitectura Von Newman Memoria CPU asignadas direcciones I / O BUS: Es un canal de comunicaciones Bus de direcciones: Contiene

Más detalles

Tema 5. Presentación de datos por pantalla

Tema 5. Presentación de datos por pantalla Tema 5. Presentación de datos por pantalla Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 24 Índice El registro de flags del i8086

Más detalles

Arquitectura de Computadores II 8086 Parte II

Arquitectura de Computadores II 8086 Parte II 8086 Parte II Facultad de Ingeniería Universidad de la República Instituto de Computación Contenido Funciones recursivas Manejadores de dispositivos Rutinas recursivas(1/10) Introducción Salvar contexto.

Más detalles

Tema 3: ASCII y operaciones de desplazamiento y lógicas

Tema 3: ASCII y operaciones de desplazamiento y lógicas Tema 3: ASCII y operaciones de desplazamiento y lógicas S Representación de cadenas de caracteres (alfanuméricas) S Operaciones de desplazamiento S Desplazamientos lógicos S Desplazamientos aritméticos

Más detalles

Examen de teoría (5 puntos)

Examen de teoría (5 puntos) Examen de Estructura de Computadores. 4 de Septiembre de 24 Bien: Mal: No contestadas: Examen de teoría (5 puntos) El examen constará de dos partes: ª parte: Test, con una puntuación de 5 puntos y 3 minutos

Más detalles

8.4. El software en los μprocesadores

8.4. El software en los μprocesadores 8.4. El software en los μprocesadores Ejemplo de comandos de la CPU: Tarea: Sumar dos números A y B. Suponer los datos A y B almacenados en las posiciones 1000 2 y 1010 2 respectivamente. El resultado

Más detalles

ESTRUCTURA DE MICROPROCESADORES

ESTRUCTURA DE MICROPROCESADORES ESTRUCTURA DE MICROPROCESADORES 8086: Instrucciones y Modos de direccionamiento Profesor Ing. Johan Carvajal Godínez JCG 2010 Agenda de la clase Definición Diseño de instrucciones 8086 Modos de direccionamiento

Más detalles

para un 8080 o un palabra, pero AMBOS DEL MISMO TIPO.

para un 8080 o un palabra, pero AMBOS DEL MISMO TIPO. OPERANDOS NE- MÓ- NIC. DESTINO, FUENTE FLAGS DESCRIPCIÓN MOV I N S T R U C C I O N E S DE T R A N S F E R E N C I A COPIA EL OPERANDO FUENTE EN EL OPERANDO DESTINO.Ambos operandos deben ser del mismo tipo

Más detalles

LENGUAJE ENSAMBLADOR DEL MICROPROCESADOR

LENGUAJE ENSAMBLADOR DEL MICROPROCESADOR LENGUAJE ENSAMBLADOR DEL MICROPROCESADOR. Registros Internos del Microprocesador 2. Conjunto de Instrucciones (Microprocesadores 886/888) 2. Instrucciones de Transferencia de Datos 2.2 Instrucciones de

Más detalles

LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 16 PRÁCTICA 16

LENGUAJE ENSAMBLADOR 80386 PRÁCTICA 16 PRÁCTICA 16 PRÁCTICA 16 PROGRAMA RESIDENTE QUE PUEDE USAR FUNCIONES DE DOS PARA CAPTURAR LA SALIDA A IMPRESORA 1. INTRODUCCIÓN La práctica está dedicada a ilustrar el método para hacer programas residentes en memoria

Más detalles

Lectura y escritura de un caracter

Lectura y escritura de un caracter Lectura y escritura de un caracter Trabajando con cadenas en Debug Herramientas Entorno Dos y Windows Masm es el ensamblador mas usado en DOS y Windows, desarrollado por Microsoft, puede utilizarse para

Más detalles

PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN 2. OBJETIVOS 3. DESARROLLO

PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN 2. OBJETIVOS 3. DESARROLLO PRÁCTICA 3 OPERACIONES BÁSICAS CON DOS NÚMEROS BCD ENTEROS POSITIVOS 1. INTRODUCCIÓN Mediante esta práctica trabajaremos con números BCD de hasta veinte dígitos y haremos las operaciones básicas, suma,

Más detalles

adreça lògicacontingut (en hexadecimal) dels 8 bytes a partir de l adreça lògica

adreça lògicacontingut (en hexadecimal) dels 8 bytes a partir de l adreça lògica Solución al Problema 1 a) Suponer los siguientes contenidos de memoria: adreça lògicacontingut (en hexadecimal) dels 8 bytes a partir de l adreça lògica 0020h:0008h FC 00 1A 23 19 00 20 00 0020h:0010h

Más detalles

Unidad 2 Programación en Lenguaje Ensamblador

Unidad 2 Programación en Lenguaje Ensamblador Microcontroladores Unidad 2 Programación en Lenguaje Ensamblador M. C. Miguelangel Fraga Aguilar Modos de direccionamiento Modo de direccionamiento es la manera en que una instrucción obtiene los operandos

Más detalles

Tema 2 INSTRUCCIONES DE UN COMPUTADOR. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

Tema 2 INSTRUCCIONES DE UN COMPUTADOR. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía Tema 2 INSTRUCCIONES DE UN COMPUTADOR ÍNDICE Definiciones Formatos de instrucción Modos de direccionamiento Tipos de instrucciones Diagrama de flujo Lenguaje del computador Definiciones: conceptos de arquitectura

Más detalles

Tema 5.1: Presentación de datos en pantalla

Tema 5.1: Presentación de datos en pantalla Tema 5.1: Presentación de datos en pantalla El registro de flags del i8086 Instrucciones de transferencia Instrucciones de transferencia de control Instrucciones aritméticas: comparación Representación

Más detalles

LABORATORIO DE PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR x86-16bits

LABORATORIO DE PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR x86-16bits LABORATORIO DE PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR x86-16bits De la creación del programa al proceso en ejecución Objetivo El objetivo de esta práctica es conocer y diferenciar los conceptos de programa

Más detalles

5 - Lenguaje Ensamblador

5 - Lenguaje Ensamblador PROGRAMACIÓN EN ENSAMBLADOR 62 Fuente.asm,.s51,... Fases del Ensamblado Ensamblado Objeto.obj,.r03 Objeto Enlazado Ejecutable.hex,.bin Librerías Eprom Simulador Emulador Monitor PROGRAMACIÓN EN ENSAMBLADOR

Más detalles

62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52

62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52 62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52 3DUWHGH(QVDPEODGRU 4º) Escribir un programa en ensamblador que pida un número de una cifra por teclado y saque como resultado

Más detalles

Microprocesadores, Tema 3:

Microprocesadores, Tema 3: Microprocesadores, Tema 3: Programación del Microcontrolador PIC18 a Bajo Nivel Guillermo Carpintero, guiller@ing.uc3m.es Universidad Carlos III de Madrid Lenguajes de Programación Nos permiten expresar

Más detalles