Introducción a la Programación en Lenguaje Ensamblador.
|
|
- Vicente Farías Río
- hace 7 años
- Vistas:
Transcripción
1 CAPITULO 5 Introducción a la Programación en Lenguaje Ensamblador INTRODUCCION Se entiende por modelo de programación al conjunto de registros accesibles por el usuario que junto al set de instrucciones y los modos de direccionamiento constituyen las herramientas imprescindibles para el programador. El objetivo de este capítulo es mostrar estos tres aspectos combinados en varios ejercicios que puedan servir de ayuda al comienzo. Estos ejercicios corresponden a algunos de los modelos están dar que suelen ser habituales en las operaciones de control de procesos industriales pero no tienen el suficiente rigor como para poder ser incorporadas dentro de una librería de rutinas operativas profesionalmente más bien tienen un sentido didáctico, objetivo principal de este capítulo. A continuación se proponen una serie de ejercicios, que irán distribuidos entre este capítulo y el siguiente. En total, 13 ejercicios que pueden servir de aperitivo por esta razón, casi todos los nombres de los archivos de los ejercicios figuran con un número terminal, para que el lector pueda mejorarlos, como si de una nueva versión se tratara. Ejercicio 5.1. Estructura condicional o alternativa Habitualmente el programa tiene que tomar decisiones en función del contenido de una variable (posición de memoria), de la información de un puerto de entrada o salida y/o del estado de un bit o registro. Se produce lo que se conoce por una bifurcación condicional o alternativa. En este ejercicio se trata de realizar la operación suma o resta de dos variables DA1 (78H) y DA2 (79H) si la localidad CHE (77H) es cero, suma el contenido de DA1 y DA2 si el contenido es distinto de cero, entonces resta DA1 de DA2. En cualquier caso, el resultado de la operación suma o resta se deposita en la localidad RES (7AH). ITMAR, Mazatlán 47 Ing. Rufino J. Domínguez Arellano
2 %TITLE "ESTRUCTURA CONDICIONAL ECON0.ASM" ORG 0200H CHE EQU 77H DA1 EQU 78H DA2 EQU 79H RES EQU 7AH MOV DA1, #09H MOV DA2, #06H CARGA DE DATOS MOV A, CHE LEE LA LOCALIDAD 77H JNZ SAL1 SI ES CERO SUMA, SI NO SALTA A RESTA MOV A, DA1 ADD A, DA2 HACE LA SUMA MOV RES, A GUARDA RESULTADO MOV A, CHE JZ SAL2 SAL1: MOV A, DA1 SUBB A, DA2 HACE LA RESTA MOV RES, A GUARDA RESULTADO SAL2: NOP Ejercicio Estructura Iteractiva. Al menos una vez. Enunciado La localidad MEM (77H) puede contener números comprendidos entre 1 y 9, teniendo en cuenta esta característica, poner las posiciones de memoria comprendidas entre 61 H y 69H a FFH (todos los bits a uno), según esta relación: Si MEM=1 cargar con FFH la localidad 61H Si MEM=2 cargar con FFH las localidades 61H y 62H Si MEM=3 cargar con FFH las localidades 61H, 62H y 63H ========================================= Si MEM=9 cargar con FFH las localidades de la 61H ala 69H ITMAR, Mazatlán 48 Ing. Rufino J. Domínguez Arellano
3 %TITLE ESTRUCTURA ITERATIVA. ITERAO.ASM ORG 0200H MEM EQU 778 CON EQU 78H MOV CON, MEM Se transfiere el contenido de MEM a CON SAL: MOV A, CON Cargar acumulador ADD A, #60H Prepara el dir. indexado por software MOV R0, A # FFH DJNZ CON, SAL Carga el puntero Carga la localidad correspondiente Por lo menos carga una posición de memoria Decrementa CON y salta si CON NOP no es CERO Ejercicio Estructura iteractiva. Puede que ninguna vez. %TITLE ESTRUCTURAITERATIVA. ITERA1.ASM ORG 0200H MEM EQU 77H CON EQU 78H MOV CON, MEM Se transfiere el contenido de MEM a CON SALO: MOV A, CON Cargar acumulador JZ SAL1 No efectúa ninguna acción si MEM=O ADD A, #60H Prepara el dir. indexado por software MOV RO, A Carga el puntero #FFH Carga la localidad correspondiente DEC CON Decrementa CON JMP SALO Salto incondicional Ejercicio 5.4.-Comprobación de bits. Método general La operación de comprobación de bits es una práctica habitual en el control de procesos. La secuencia del programa puede cambiar dependiendo del estado de un bit. Este ejercicio muestra uno de los métodos. ITMAR, Mazatlán 49 Ing. Rufino J. Domínguez Arellano
4 Enunciado Si el bit 2 de la localidad 28H (CHE) es igual a cero, entonces en la dirección 7FH (RES) se señalará poniendo todos sus bits a cero, y si el bit 2 es igual a uno, se señalará poniendo todos sus bits a uno. Es decir: 28.2 = 0 implica que: (7FH) 00H 28.2 = 1 implica que: (7FH) FFH %TITLE TESTEO DE BITS. TESBITO.ASM ORG 0200H CHE EQU 28H RES EQU 7FH MOV A, CHE Se carga el ACC con el byte a chequear ANL A, #04H Se detecta el bit. JZ SAL0 Si es igual a CERO salta MOV RES, #FFH Si no es igual a CERO, carga RES con unos SALO: JNZ SALl...y sale del proceso MOV RES, #00 Si es igual a CERO. carga RES con ceros Ejercicio 5.5. Comprobación de bits. Método particular. Cuando se estudiaba el set de instrucciones del 8052/8051, en el Apartado 4.1. «lnstrucciones booleanas», se decía que había una zona de memoria interna direccionable bit a bit (20H a 2FH) y una serie de instrucciones que permitían esta forma de proceso (véase Tabla 4.2). Esta práctica es una muestra de este tipo de instrucciones. El problema es el mismo que el planteado en el ejercicio anterior, pero con la salvedad de utilizar el carry como variable referencia! para establecer las bifurcaciones. %TITLE TESTEO DE BITS. TESBIT1.ASM ORG 0200H CHE EQU 28H RES EQU 7FH SETB C Se pone el "flag del Carry" a UNO ANL C, CHE.2 Se detecta el bit 28.2 o 42 ITMAR, Mazatlán 50 Ing. Rufino J. Domínguez Arellano
5 JNC SALO Si es igual a CERO salta MOV RES. # FFH Si no es igual a CERO, carga RES con unos SALO: JC SALl...y sale del proceso MOV RES, #00 Si es igual a CERO, carga RES con ceros Ejercicio 5.6. Comprobación de bytes con la operación resta o sustracción En el control de procesos industriales la información que se recibe o envía es compleja y necesita de varios bits. En este caso, la información ocupará 8 bits, es decir, 1 byte. Este ejercicio, como los dos siguientes, corresponden al mismo planteamiento, pero utiliza procedimientos distintos de resolución. Así, este ejercicio emplea la operación resta o sustracción para detectar el byte que desencadena una secuencia de proceso distinta. En este y en los dos siguientes ejercicios el byte clave es 63H. Si el byte leído en la dirección 70H (CHE), es igual a 63H, pone el bit cero (b0) de la localidad 20H (RES) a cero, y si el byte leído es distinto a 63H, el bit cero (b0) de RES se pone a uno, es decir: Si (70H) = 63H implica que Si (70H) <> 63H implica que %TITLE TESTEO DE BYTES. TESPAL0.ASM ORG 0200H CHE EQU 70H RES EQU 20H MOV A, 7OH Se CARGA el ACC con la localidad a chequear. CLR C Se pone el carry a 0 SUBB A, #63H Resta de localidad CHE la constante #63H JZ SALO Si es igual a CERO salta SETB RES.0 Si no es igual a CERO, carga con" 1' el bit0 del byte RES SAL0: JNZ SALl...y sale del proceso CLR RES.0 Si es igual a CERO, carga con "0" el bit0 del byte RES ITMAR, Mazatlán 51 Ing. Rufino J. Domínguez Arellano
6 Ejercicio 5.7. Comprobación de bytes con la operación EXCLUSIVE-OR El enunciado de este ejercicio es el mismo que el apartado anterior, pero el procedimiento para la detección del byte que desencadena un cambio en el proceso se realiza con la operación EXCLUSIVE-OR (XRL). Efectivamente, si: = LECTURA BYTE = REFERENCIA: 63H = RESULTADO El resultado de la operación será cero, sólo si coinciden el byte leído y el byte de referencia. Si los bytes difieren al menos en un bit, comoen el siguiente ejemplo: 0 l = LECTURA BYTE 0 1 l = REFERENCIA: 63H l = RESULTADO %TITLE TESTEO DE BYTES. TESPAL1.ASM ORG O2OOH CHE EQU 7OH RES EQU 2OH MOV A, 7OH Se CARGA el ACC con la localidad a chequear XRL A, #63H Operación EX-OR entre ACC y la cte. #63H JZ SALO Si el resultado es igual a CERO salta SETB RES.O Si no es igual a CERO, carga con" 1" el pito del byte RES SALO: JNZ SALl...y sale del proceso CLR RES.O Si es igual a CERO, carga con "O" el bito del byte RES ITMAR, Mazatlán 52 Ing. Rufino J. Domínguez Arellano
7 Ejercicio 5.8. Comprobación de bytes con la instrucción especial Los ejercicios 5.6 y 5.7 pueden ser resueltos también con macroinstrucciones como CJNE A,<byte>,rel estudiada en el apartado 4.2.2,<lnstrucciones de salto condicional>. Esta instrucción compara y salta si el resultado no es igual y su utilidad se puede ver a continuación. La eficacia de estas macroinstrucciones puede verse amenazada por la falta de flexibilidad, pero se puede fácilmente comprender que en este caso, que es habitual, resulta muy eficaz, por lo que es ventajosa su inclusión en el set de instrucciones. %TITLE TESTEO DE BYTES. TESPAL2.ASM ORG O2OOH CHE EQU 7OH RES EQU 2OH MOV A, CHE Se carga ACC con el contenido de la variable CHE CJNE A, #63H, SAL0 Compara el contenido del ACC con el dato #63H y salta a SALO. Si (ACC) es distinto de # 63H CLR RES.O En el caso de que sean iguales, pone el bito de la localidad 2OH a "CERO.. JMP SALl :...y salta al final SALO: SETB RES.O Si no es igual a CERO, carga con " I " el bito de la localidad 2OH y finaliza SAL1: NOP Ejercicio 5.9.Movimiento de tablas de datos en la memoria externa. En el control de procesos se producen prácticas habitua]es de manipulación de datos, que el programador debe convertir, gracias a su técnica e ingenio, en rutinas eficaces. Así, el programador deberá elaborar rutinas para: El movimiento de datos de una posición a otra de memoria. Captura y selección de datos del exterior a través de una unidad de E/S y su colocación en memoria. Búsqueda y selección sobre tablas de datos, etc. Este apartado y el siguiente proponen ejercicios de proceso sobre bloques de datos. Para estas rutinas los 8052/8051 cuentan con unas instrucciones muy potentes que van a ser analizadas. ITMAR, Mazatlán 53 Ing. Rufino J. Domínguez Arellano
8 Este ejercicio copia de una posición a otra de la memoria RAM externa un bloque de datos. Estos bloques, para simplificar el problema, son de tamaño fijo, de una página de 256 bytes, y comienzan en el primer byte de la página seleccionada. Así, en nuestro caso, si se quiere copiar un bloque de datos situado en las direcciones 0315H a 0380H (página 03H), a la página 05H, se copiaría todo el contenido de la página 03 (0300H a 03FFH) a la página 5 (0500H a 05FFH) y el bloque de datos situado inicialmente en las localidades 0315H a 0380H se encontrará copiado en las localidades 0515H a 0580H. A continuación se muestra el listado del programa fuente, tal como se ha previsto. Se invita al usuario a que realice una versión mejorada, indicando el rango de las direcciones acopiar (dirección inicial a dirección final) y la dirección de la primera localidad destino, incluso por encima del rango de una página de 256 bytes. %TITLE MOVIMIENTO DE TABLAS. MOTABLAO.ASM ORG O2OOH RO es el puntero que recorre las páginas Rl es la página FUENTE R2 es la página DESTINO MOV RO, #OOH Inicializa el puntero SALO: MOV DPL, RO Carga RO en el byte bajo del DPTR MOV DPH, Rl Carga R l en el byte alto del DPTR (FUENTE) MOVX Lee byte apuntado por DPTR MOV DPH, R2 Carga el byte alto del DPTR (DESTINO) A Escribe byte apuntado por DPTR INC RO Incrementa puntero MOV A, RO Carga el ACC para la siguiente instrucción JNZ SALO Busca el siguiente byte en la página y si es CERO concluye porque ha terminado la página NOP Ejercicio Comprobación de tablas de datos En algunas ocasiones interesa conocer, para hacer un estudio estadístico, la cantidad de veces que aparece un determinado dato y en qué posición de la tabla de datos se encuentra localizado. ITMAR, Mazatlán 54 Ing. Rufino J. Domínguez Arellano
9 Este ejercicio muestra cómo se realiza esta operación dentro de la memoria de programas de 8K, pudiendo hacer lo mismo en la memoria RAM externa o interna de los 8052/8051, naturalmente, habrá que hacer referencia a las instrucciones correspondientes, pues claramente se resaltaron en el estudio del set de instrucciones en el Apartado 3.7.1, la «Transferencia de datos sobre la RAM interna», en el Apartado 3.7.2, la «Transferencia de datos sobre la RAM externa», y en el Apartado 3.7.3, «Memoria de programas para el tratamiento de tablas». Concretamente este ejercicio trata de buscar un determinado dato, 23H, en una tabla cuyo rango es 0300H a 03FFH. Los resultados que se han de indicar son el número de veces que ha sido encontrado y la posición de memoria en que se encuentran estos datos. R2 = número de veces A partir de la localidad 60 = situación %TITLE CHEQUEO DE TABLAS DE DATOS. CHEQUEO.ASM ORG O2OOH POS EQU 6OH MOV RO, #POS Apunta el comienzo de la tabla de las localidades en las que se van a localizar los caracteres MOV R2, #OOH Se inicializa R2 con O. Contador de carácter MOV Rl, #OOH Se inicializa R1 con O. Contador de tablas MOV DPTR, #O2FFH Se inicializa DPTR con el comienzo de la tabla SALO: INC DPTR Se busca otro carácter MOV Rl, DPH CJNE Rl, #O3H, SALl Si se termina la tabla 03xx sale del proceso MOV A, #OOH El ACC se borra para la próxima instrucción MOVC Se LEE el carácter y se carga en el ACC. CJNE A, #23H, SALO Si el carácter no es *23H busca siguiente INC R2 Si el carácter es * 23H incrementa contador DPH Apunta dirección (H) localización carácter INC RO DPL Apunta dirección (L) localización carácter INC RO JMP SALO Busca otro carácter para evaluar ITMAR, Mazatlán 55 Ing. Rufino J. Domínguez Arellano
10 Ejercicio Gestión de la pila y rotaciones Finalmente, para terminar con este apartado dedicado al modelo de programación del 8052/8051 se dedica un ejercicio al manejo de las instrucciones de acceso a la memoria de pila ya las rotaciones. A la pila, como se puede ver en este ejercicio, no solamente la gestiona el microcontrolador, de una forma automática, para salvar los registros importantes en los saltos a las subrutinas e interrupciones, si no que también puede y debe ser utilizada y gestionada por el programador. En este ejercicio, que por otro lado no tiene otras pretensiones que demostrar estas instrucciones, se ha situado la zona reservada a la pila en otra zona de la memoria interna, distinta a la que por defecto y después de un RESET el microcontrolador posiciona. Como se recordará, en el capítulo 2, apartado 2.6, se decía que después de un RESET el microcontrolador situaba.el comienzo de la pila en la dirección 08H. En este ejercicio, como se puede ver en la primera instrucción del programa, la pila se ubica a partir de la dirección 40H y en sentido creciente. El ejercicio planteado pretende que un dato como 01H realice una rotación completa y que finalice en la misma posición con la que empezó, dicho de otra manera, que el contenido del b0 se desplace a la Izquierda sobre el registro para después de varios desplazamientos concluya en la misma posición. Para esta operación es preciso efectuar como se comprobará, 8 rotaciones «bit a bit>. %TITLE GESTION DE LA PILA Y ROTACIONES. ROTAO.ASM ORG O2OOH REF EQU 7OH ROT EQU 6FH MOV SP, #4OH Inicialización de la pila en área SCRATCHPAD MOV A, #OOH Carga del ACC con OOH PUSH A Se guarda en la pila. Inicialización del CONTADOR MOV REF, #OlH Se inicializa el registro de REFERENCIA MOV ROT, REF Se inicializa el registro de ROTACION MOV A, ROT Se carga el ACC con el valor de ROT SALO: RL A Rotación a la izda. del ACC MOV ROT, A Se salva el contenido de ACC una vez rotado POP A Recupera valor contador. El ACC es ahora contador INC A Incrementa CONTADOR PUSH A Guarda contador en la PILA MOV A, ROT Recupera el dato rotado CJNE A, REF, SALO Compara ACC con REF para salir del programa cuando sean iguales NOP ITMAR, Mazatlán 56 Ing. Rufino J. Domínguez Arellano
Relación de Problemas I
Relación de Problemas I 352) $1'5e6 52/'È1 $5$1'$ 1. Realizar el cálculo del tiempo que transcurre durante la ejecución del bloque de instrucciones sombreado, en función del contenido de los registros
Más detallesConceptos 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 detallesContenido. Conjunto de Instrucciones. Formato de la Instrucción. Instrucciones de 1 byte. Formato de la Instrucción 28/09/2011
1 ontenido 2 UNIDAD 5 EL LENGUAJE DE ENSAMBLADOR DEL Z80 onjunto de instrucciones Tipos de instrucciones Modos de direccionamiento El ensamblador del Z80 El simulador AVOET Implementación de un sistema
Más detallesLa comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales:
CAPITULO 8 Interrupciones 8.1. INTRODUCCION La comunicación asíncrona de los sistemas periféricos con la CPU, en ambos sentidos, se puede establecer de dos maneras fundamentales: a) Consultas (polling):
Más detallesControl de periféricos. Puertos de Entrada/ Salida
CAPITULO 6 Control de periféricos. Puertos de Entrada/ Salida 6.1. INTRODUCCION En el Capítulo 1 se describía la arquitectura de los puertos de entrada y salida (E/S) de la familia de Microcontroladores
Más detalles8.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 detallesIntroducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
Más detallesEnsamblador. 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 detallesMODOS DE DIRECCIONAMIENTO DEL µc51
Los modos de direccionamiento son la manera que tienen los µc para accesar a los distintos recursos con los que cuenta. Para manipular los datos y códigos de operación en cada programa se tienen las siguientes
Más detallesInstrucciones 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 detallesCiclos de máquina. Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp
Ciclos de máquina Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp Acceso a periféricos: función del pin IO/M Este μp cuenta con dos instrucciones específicas para I/O, llamadas
Más detallesTema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Más detallesMICROPROCESADORES. ANL C, <orig.bit>: Y lógico entre el bit y el indicador de acarreo.
Instrucciones Booleanas. El 8051 contiene un completo procesador Booleano (por bits), el cual permite ejecutar instrucciones de limpieza, establecimiento o complementación de un solo bit, y operaciones
Más detallesArquitectura 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 detallesCPU MEMORIAS CACHE. Memorias caché. Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal.
MEMORIAS CACHE Memoria caché = memoria de tamaño pequeño y acceso rápido situada entre la CPU y la memoria principal. Tiempo ciclo memoria > tiempo de ciclo del procesador la CPU debe esperar a la memoria
Más detallesFuncionamiento de la Pila (o stack)
Funcionamiento de la Pila (o stack) Todo μp cuenta con una memoria de almacenamiento temporal denominada Pila Es una estructura de datos de tipo secuencial (LIFO) Existen dos operaciones básicas posibles:
Más detallesTema 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 detallesEl nivel ISA (II)! Conjunto de Instrucciones
El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina
Más detallesEl microprocesador de 8 bits Z80
INTRODUCCIÓN El microprocesador de 8 bits Z80 El Z80 es un microprocesador de la empresa Zilog Inc., que surgió de personas que desarrollaron el 8080 en INTEL, por lo que mantiene cierta compatibilidad
Más detallesEl 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 detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesArquitectura (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 detallesComparaciones 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 detallesTrabajo 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 detallesEstructuras en LabVIEW.
Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While
Más detallesFecha de Introducción. Velocidad de reloj. Anchura del bus. Número de transistores. (microns) Memoria direccionable.
Los Microprocesadores MIA José Rafael Rojano Cáceres Arquitectura de Computadoras I Fecha de Introducción Velocidad de reloj Anchura del bus Número de transistores (microns) Memoria direccionable Evolución
Más detallesArquitectura de Computadores II Clase #3
Clase #3 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Registros Repertorio de instrucciones Modos de direccionamiento El stack Formatos de datos Control
Más detallesResumen 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 detallesClasificación del procesador según el número de referencias a memoria.
Estructura de Computadores Tema 1. El sistema computador Estructura general de un computador. Arquitectura de Von Neumann. Unidades generales: procesador, memoria, entrada/salida, unidad de control. Niveles
Más detallesAnálisis general de un Microprocesador
Análisis general de un Microprocesador Arquitectura del chip Repertorio de instrucciones Sistema mínimo Señales de control Función de cada pin del µp Herramientas de desarrollo Performance. ARQUITECTURA
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesESCUELA POLITÉCNICA DEL EJÉRCITO SEDE LATACUNGA CARRERA DE INGENIERÍA ELECTRÓNICA
ESCUELA POLITÉCNICA DEL EJÉRCITO SEDE LATACUNGA CARRERA DE INGENIERÍA ELECTRÓNICA Proyecto de Grado previo a la Obtención del Título de Ingeniería de Ejecución en Electrónica e Instrumentación. DISEÑO,
Más detallesArquitectura de computadoras
Arquitectura de computadoras Técnicas Digitales III Ing. Gustavo Nudelman 2013 Que entendemos por arquitectura Un sistema con una CPU, memoria y dispositivos de entrada y salida puede considerarse un sistema
Más detallesTema 2: Lenguaje máquina. La interfaz entre el hardware y el software
Tema 2: Lenguaje máquina La interfaz entre el hardware y el software 1 Índice Introducción. Formatos de Instrucción. Modos de Direccionamiento. Ortogonalidad y Regularidad. Frecuencia de Utilización de
Más detallesEjemplo del uso de las subrutinas
Ejemplo del uso de las subrutinas Enunciado del problema: Diseñar un contador BCD que cuente de 0 a 59 para simular un timer de 60 segundos y que el conteo de dos dígitos BCD, sea desplegado en los displays
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO
ESTRUCTURA DE COMPUTADORES I (Capítulo 16:El Teclado) 1/5 16-EL TECLADO 16.1 INTRODUCCIÓN: El teclado se comunica con la BIOS a través de puertos de comunicación controlados por las interrupciones de la
Más detallesModulo LCD MODULO LCD
MODULO LCD Las pantallas de cristal líquido LCD o display LCD (Liquid Cristal Display) consta de una matriz de caracteres (normalmente de 5x7 o 5x8 puntos) distribuidos en una, dos, tres o cuatro líneas
Más detalles3 - Arquitectura interna de un up
cei@upm.es 3 - Arquitectura interna un up Componentes básicos Lenguaje ensamblador y código máquina Ciclo básico ejecución una instrucción Algunos ejemplos Universidad Politécnica Madrid Componentes básicos
Más detallesAPENDICE B Ensamblador IASM11/Simulador AVSIM11
APENDICE B Ensamblador IASM11/Simulador AVSIM11 El programa ensamblador IASM11, es una herramienta que permitirá editar y ensamblar programas para el microcontrolador HC11. Este programa corre bajo la
Más detallesQué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Más detallesConstruyendo Programas más Complejos
Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más
Más detallesMicroprocesadores, Tema 2:
Microprocesadores, Tema 2: Introducción al Microcontrolador PIC18 Guillermo Carpintero, guiller@ing.uc3m.es Universidad Carlos III de Madrid Diagrama de bloques PIC microcontrollers: An introduction to
Más detallesPráctica 1. Introducción a la programación en ensamblador
Práctica 1 Introducción a la programación en ensamblador 1. Generalidades 2. Introducción 3. Cuestiones 1. Generalidades El desarrollo de las prácticas consistirá en una breve introducción del tema por
Más detallesEstructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez
Estructura de Microprocesadores PIC 18F4550 Administración de la memoria Profesor Ing. Johan Carvajal Godínez Contenidos Organización de la memoria del MCU Administración de la memoria de programa (Flash)
Más detallesSist s em e a m s s O per e ativos o. s Unidad V Entrada Sali l d i a.
Sistemas Operativos. Unidad V Entrada Salida. Programación de Entrada y Salida Introducción. Comunicación de los procesos con el mundo externo : Mecanismo de E/S de información. Aspectos que diferencian
Más detallesDiseño de una calculadora
DEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICA ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA Diseño de una calculadora Sistemas Digitales Avanzados 1. Introducción y objetivos El propósito general de esta
Más detallesFigura 2. Formato de un dato serie síncrono.
ELECTRÓNICA DIGITAL II 1 COMUNICACIÓN SERIE EN EL 8051 En la comunicación serie los datos se transfieren bit por bit. Una interfaz en el microcontrolador los transfiere el dato en paralelo del CPU a serie
Más detallesPráctica 4. Organización del Computador 1 12 de septiembre de Algunas consideraciones preliminares:
Práctica 4 Organización del Computador 1 12 de septiembre de 2005 Algunas consideraciones preliminares: Donde aparece xxxxxxxx quiere decir que el valor correcto ya está en esa dirección de memoria Todos
Más detallesENSAMBLADOR 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 detallesUna base de datos de Access puede estar conformada por varios objetos, los más comunes son los siguientes:
MICROSOFT ACCESS DEFINICIÓN MS Access es un programa para manejar bases de datos. Una base de datos es un conjunto de datos de un determinado tema o contexto, almacenados de forma sistemática, para obtener
Más detallesMétodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Más detallesBLOQUE 3. Enrique Mandado Pérez María José Moure Rodríguez. Microcontroladores
SISTEMAS ELECTRÓNICOS DIGITALES BLOQUE 3 MICROCONTROLADORES (PARTE 4) DESARROLLO DE SISTEMAS ELECTRÓNICOS DIGITALES Interrupciones,Temporizadores/Contadores y Puerto serie Enrique Mandado Pérez María José
Más detallesInstrucció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 detallesDiseño Basado en Microcontroladores. Programa Detallado
Diseño Basado en Microcontroladores. Programa Detallado Tema 5. Temporizadores e Interrupciones. (4 horas + 8 horas de laboratorio) 5.1.Temporizadores A y B. Modos de funcionamiento. 5.2. Temporizador
Más detallesAPUNTE DEL 8155 ELECTRÓNICA DIGITAL III
APUNTE DEL 8155 ELECTRÓNICA DIGITAL III Revisión 1.1 Marzo, 2011 Interfaz a periférico 8155 Descripción general El chip 8155 es un dispositivo introducido por Intel en 1977. Contiene memoria RAM (SRAM)
Más detallesGuía de programación ATMega328pa
Guía de programación ATMega328pa Autor: Alberto J. Molina Última modificación: 6/05/13 Usted es libre de copiar, distribuir y comunicar públicamente la obra y de hacer obras derivadas siempre que se cite
Más detallesPLC CONTROLADOR LOGICO PROGRAMABLE
PLC CONTROLADOR LOGICO PROGRAMABLE PLC Los Controladores Lógicos Programables o PLC (Programmable Logic Controller por sus siglas en inglés) son dispositivos ampliamente usados en la Automatización Industrial.
Más detallesMEMORIA EJERCICIO 1 EJERCICIO 2
MEMORIA EJERCICIO 1 Determinar el mapa de memoria de un procesador con 16 señales de bus de direcciones, una señal de asentimiento de bus de direcciones AS, una señal de lectura R, otra de escritura W
Más detallesUNIDAD 3 ARQUITECTURA DEL Z80. Microprocesadores Otoño 2011
1 UNIDAD 3 ARQUITECTURA DEL Z80 Microprocesadores Otoño 2011 Contenido 2 Arquitectura interna del Z-80 Interface Ciclos de máquina y temporización del bus de comunicación. Conjunto de Instrucciones Arquitectura
Más detallesEntorno de Ejecución del Procesador Intel Pentium
Arquitectura de Ordenadores Arquitectura del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Entorno de Ejecución del Procesador
Más detallesSISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Más detallesMANUAL DEL USUARIO BALANZA ELECTRÓNICA PROGRAMABLE MX8F MIXER VERSION C-1.7
MANUAL DEL USUARIO BALANZA ELECTRÓNICA PROGRAMABLE MX8F MIXER VERSION C-1.7 BÁSCULAS MAGRIS - J. B. JUSTO 957 - (6100) RUFINO - SANTA FE T.E. (03382) 429043 INDUSTRIA ARGENTINA NOTA MUY IMPORTANTE: ANTES
Más detalles1.2.- EL MICROPROCESADOR.
1.2.- EL MICROPROCESADOR. El microprocesador es un circuito integrado que contiene algunos o todos los elementos necesarios para conformar una (o más) unidad central de procesamiento UCP, también conocido
Más detallesINDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)
INDICE Capitulo 1. Qué es un computador? 1.1. Introducción 1 1.2. El computador como dispositivo electrónico 2 1.3. Cómo se procesa la información? 3 1.4.Diagrama de bloques de un computador 1.4.1. Información
Más detallesObjetivo. Introducción. Tema: GENERACION DE CODIGO. Compiladores, Guía 11 1
Compiladores, Guía 11 1 Tema: GENERACION DE CODIGO. Facultad : Ingeniería Escuela :Computación Asignatura:Compiladores Objetivo Reconocer las diferentes instrucciones para la generación de código.ensamblador
Más detallesLa última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.
Manual de Dev-C++ 4.9.9.2 Página 1 de 11 Introducción Dev-C++ es un IDE (entorno de desarrollo integrado) que facilita herramientas para la creación y depuración de programas en C y en C++. Además, la
Más detallesEl módulo LCD Ejemplos de funcionamiento
SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 7: El módulo LCD El módulo LCD Ejemplos de funcionamiento - 1 - 1. Objetivos: - Conocer el funcionamiento y programación
Más detallesTema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática
Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción
Más detallesPROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY
PROGRAMACIÓN. UNIDAD II. ALGORITMO PROFA : HAU MOY ALGORITMO DEFINICIÓN: CONSISTE EN LA DESCRIPCIÓN CLARA Y DETALLADA DEL PROCEDIMIENTO A SEGUIR PARA ALCANZAR LA SOLUCIÓN A UN PROBLEMA EN DONDE SE ESTABLECE
Más detallesUNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL SAN NICOLÁS INGENIERIA ELECTRÓNICA TÉCNICAS DIGITALES III
UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL SAN NICOLÁS INGENIERIA ELECTRÓNICA TÉCNICAS DIGITALES III Simulador de la unidad de control microprogramada de Técnicas Digitales III (UC1-TD3) Manual
Más detallesTECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL
1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto
Más detallesTAREA 1 ARITMETICA PARA BCD Y ASCII.
1 Facultad: Ingeniería. Escuela: Electrónica. Asignatura: Microprocesadores. TAREA 1 ARITMETICA PARA BCD Y ASCII. Objetivos específicos Conocer el manejo de los caracteres ASCII para la presentación en
Más detallesEjercicio * N N X X X X X X X X X X X X X X X X X X X X
Se envía a través de una conexión RS232 8N1 de 9600 baudios una trama de datos que debe ser recibida por una PC. La trama tiene el siguiente formato : * N N X X X X X X X X X X X X X X X X X X X X Donde:
Más detallesCICLOS DEL PROCESADOR
UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del
Más detallesEstructura y Tecnología de Computadores. Módulo C. Arquitectura del procesador. Tema 4. Modos de direccionamiento y tipos de datos
1 Estructura y Tecnología de Computadores Módulo C. Arquitectura del procesador Tema. Modos de direccionamiento y tipos de datos José Manuel Mendías Cuadros Dpto.. Arquitectura de Computadores y Automática
Más detallesTema 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 detallesENTORNO DE TRABAJO PARA LA SIMULACIÓN HARDWARE DE UNA COMPUTADORA SENCILLA
ENTORNO DE TRABAJO PARA LA SIMULACIÓN HARDWARE DE UNA COMPUTADORA SENCILLA Fco. Javier Quiles, Manuel A. Ortiz, Carlos D. Moreno, J. Ignacio Benavides, Vicente J. Fernández, Nicolás Martínez Área de Conocimiento
Más detallesTema 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 detallesLa memoria principal. Los subsistemas de E/S. Los buses del sistema
GUIA 23: MEMORIA E/S La estructura básica de la mayoría de los ordenadores actuales se representa mediante los siguientes elementos básicos: La Unidad Central de Procesamiento, CPU La memoria principal
Más detallesPregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15
Pregunta correcta= 0,3 Pregunta no contestada= 0 Pregunta incorrecta (tipo test)= -0,15 Sistemas operativos, arquitectura von Neumann, configuración del PC (3 puntos) 1) Señale la opción correcta: [_]
Más detallesENTRADAS DE CONTADOR DE ALTA VELOCIDAD
ENTRADAS DE CONTADOR DE ALTA VELOCIDAD Esta función cuenta las entradas de señales de impulsos en los terminales de entrada incorporada Configuración La configuración del contador de alta velocidad se
Más detallesOrganización del Computador I 1er. Parcial 17-Mayo-2005. Turno:
Nota: En el parcial se puede tener la cartilla de Assembler y la de seguimiento (formatos de instrucción) pero no se pueden compartir. Para aprobar el parcial, son necesarios 6(seis) puntos. Para promocionar,
Más detallesInstrucciones para programar el PIC16F877
Instrucciones para programar el PIC16F877 2 Estos microcontroladores responden a una serie de instrucciones o códigos que se deben grabar en su memoria de programa, en total son 35. A continuación se encuentra
Más detallesDISPLAY LCD MICROPROCESADORES
Módulo LCD HD4478 de de Hitachi Módulo LCD HD4478 de de Hitachi E R / W D-D7 D-D7 VDD Vo Vss Controlador Controlador del del LCD LCD HD4478 HD4478 Manejador Manejador Del Del LCD LCD Manejador Manejador
Más detallesIngeniería en Sistemas. Sistemas Operativos. Trabajo Práctico: Repaso de Interrupciones, direccionamiento de memoria y registros del procesador.
Sistemas Operativos Trabajo Práctico: Repaso de Interrupciones, direccionamiento de memoria y registros del procesador. Modalidad: Obligatorio. Objetivos: Abordar la materia Sistemas Operativos desde el
Más detallesMientras que el Timer 0 y 1 tienen cuatro modos de operación, el Timer 2 tiene tres modos como se va a ver en el Apartado 7.2 y 7.3.
CAPITULO 7 Temporizadores y contadores 7.1. INTRODUCCION. El Microcontrolador 8052 tiene tres registros temporizadores-contadores denominados Timer 0 (T0), Timer 1 (T1) y Timer 2 (T2). El Microcontrolador
Más detallesDireccionamiento en STEP 7
Direccionamiento en STEP 7 Automatización Industrial Índice TEMA Direccionamiento en STEP7 1. Tipos de Direccionamiento 1.1 Direccionamiento Inmediato 1.2 Direccionamiento Directo 1.3 Direccionamiento
Más detallesUnidad N 5N Control de Transferencia
5.1..1.- Introducción Unidad N 5N Control de Transferencia Las dos unidades anteriores se han dedicado a las instrucciones de transferencia de datos y de manejo de grupos de datos. La flexibilidad y versatilidad
Más detallesCERRADURA ELECTRÓNICA MULTIUSUARIO PARA PUERTAS INTERIORES DE ALTA SEGURIDAD
CERRADURA ELECTRÓNICA MULTIUSUARIO PARA PUERTAS INTERIORES DE ALTA SEGURIDAD UNIVERSIDAD NACIONAL DE SAN AGUSTÍN FACULTAD DE PRODUCCIÓN Y SERVICIOS ESCUELA PROFESIONAL DE INGENIERIA ELECTRÓNICA TITULO
Más detallesMemoria Virtual. Memoria Virtual
Memoria Virtual DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 Memoria Virtual Define la relación entre memoria principal y memoria secundaria Permite crear la ilusión de una memoria principal de
Más detallesConmutación de Tareas
Conmutación de Tareas Conmutación de tareas Expira el tiempo de ejecución asignado por el procesador a la tarea N El procesador almacena en memoria el estado de máquina (contexto) de la tarea N. El procesador
Más detallesDistinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.
ESTRUCTURAS ITERATIVAS 1 ESTRUCTURAS ITERATIVAS OBJETIVOS Aprender a resolver problemas mediante la ejecución repetida de una secuencia de proposiciones llamados bucle o estructuras repetitivas o iterativas.
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesCURSO DE MICROCONTROLADORES PROGRAMACION E INTERCONEXIONADO DEL µc-8051
CURSO DE MICROCONTROLADORES PROGRAMACION E INTERCONEXIONADO DEL µc-8051 * INTRODUCCION * CARACTERISTICAS DEL 8051 * ARQUITECTURA DEL 8051 * TERMINALES DEL 8051 * REGISTROS INTERNOS DEL 8051 * MODOS DE
Más detallesCómo configurar formatos Wiegand personalizados
Cómo configurar formatos Wiegand personalizados Muchos sistemas de control de acceso utilizan un formato Wiegand para sus tarjetas de usuario con hasta 50 bits de información almacenada. Es necesario filtrar
Más detallesManejo de Filas, Columnas, Celdas y Rangos
Manejo de Filas, Columnas, Celdas y Rangos Selección de filas Selección de columnas Selección de celdas y rangos Ingresar, editar y eliminar datos Tipos de datos Agregar nombres a celdas y rangos Insertar
Más detallesLECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION
ESTRUCTURA DE COMPUTADORES Pag. 14.1 LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION 1. Introducción Vamos a aplicar las ideas de microprogramación al caso de un minicomputador similar al
Más detallesTEMA 5 LA MEMORIA DE DATOS MEMORIA RAM D.P.E. DESARROLLO DE PROYECTOS 1
TEMA 5 LA MEMORIA DE DATOS MEMORIA RAM D.P.E. DESARROLLO DE PROYECTOS 1 Estructura De La Memoria Ram (1) La memoria de datos RAM está dividida en dos partes diferenciadas: 1.- Zona SFR o zona de Registros
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detalles