a) if (i==5){ j=2*k; k=k+1; } else { j=k; k=1; } c) for (i=0, i<5, i++){ j=k+m; m=2*m; } b) if (i<0){ i=i-5; } if (i==0){ i=4; }

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

Download "a) if (i==5){ j=2*k; k=k+1; } else { j=k; k=1; } c) for (i=0, i<5, i++){ j=k+m; m=2*m; } b) if (i<0){ i=i-5; } if (i==0){ i=4; }"

Transcripción

1 Problemas IJVM MIC-1 EC2721 Arquitectura del computador I (Recopilación y adaptación resumida para Oct/2003 de problemas de los profesores Margarita Juanatey, Fidel Gil, Mónica Parada, Osberth De Castro, Luis Uribe y Cecilia Murrugarra, de los cursos correspondientes a ). Parte 1 Programación en nivel ISA IJVM 1.- A continuación se dan tres fragmentos de código en lenguaje C. Obtenga el código en ensamblador ISA-IJVM. "i", "j", "k" y "m" son variables locales. a) if (i==5) j=2*k; k=k+1; else j=k; k=1; b) if (i<0) i=i-5; if (i==0) i=4; c) for (i=0, i<5, i++) j=k+m; m=2*m; 2.- Programe en Lenguaje Ensamblador IJVM una rutina que calcule el OR Exclusivo de la forma: k = i (xor) j, donde i, j y k son variables locales con indices 1, 2 y 3 respectivamente. Compare la dificultad y el tiempo de ejecución de esta implementación con la implementación de un Microprograma en MAL que lo haga directamente (el diseño de una instrucción IXOR). 3.- El código en Lenguaje C que se le da a continuación realiza el cálculo de la parte entera de la raiz cuadrada de un número, utilizando el algoritmo del examen parcial 1. Escriba el programa en ensamblador de IJVM para Mic-1 correspondiente. void main() int numero = 32767, // Leído de memoria (Note: da Overflow) suma, // suma de números impares (S) raiz, // Raíz (cuánraiz impares se han sumado) impar; // Siguiente número impar; comienza en 1 suma = raiz = 0; impar = suma + 1; While( suma < numero ) impar += DOS; suma += impar; raiz ++; If( suma < 0 ) break; Endif Endwhile // impar comienza en '1' // cada vez el siguiente número impar // Siguiente número impar // S += Impar // Se ha sumado un impar más // Así se determina si hubo "overflow"

2 4.- Para el siguiente programa en Lenguaje C, haga una compilación para lenguaje de máquina IJVM. Esto es: a) Escriba el programa IJVM correspondiente. b) Codifíquelo en la memoria de programa. Para esto, asuma que la memoria de programa empieza en la dirección 0x5100, y que la Reserva de Constantes está localizada a partir de la dirección 0x100. # define max 10 # define min 3 main ( ) int i, j, k; i=1; j=3; if (i < min) k = j + aumenta(i); else k = aumenta(max+j); int aumenta(int p) int c; c = p+2; return c; Dirección 0x5140 0x514C 0x5148 0x5144 0x5130 0x512C 0x5128 0x5124 0x5120 0x511C 0x5118 0x5114 0x5110 0x510C 0x5108 0x5104 0x5100 0x010C 0x0108 0x0104 0x0100 0x00FF Contenido Parte 2: Microprogramación en el marco del invel ISA IJVM para Mic-1 Para las siguientes instrucciones escriba el microcódigo para la Mic-1. Recuerde que deben ser instrucciones que cumplan con las condiciones de consistencia del intérprete Mic-1. Que puedan ser incluidas en el Set de Instrucciones de IJVM. 1.- IXOR: saca dos operandos del stack (pila), hace un XOR de ambos y guarda el resultado en la pila. 2.- ISHL numshf : realiza el desplazamiento lógico hacia la izquierda el elemento del tope de la pila tantas veces como el valor de numshf (Asumir numshf positivo entre 0 y 3). 3.- WIDE_GOTO offset: salta a una nueva dirección con una distancia = offset, donde offset es un número de 32 bits.

3 Parte 3: Analísis de ejecución de programas de nivel ISA IJVM en Mic Para el segmento de programa mostrado a continuación realice lo siguiente: a. Codifíquelo en hexadecimal a partir de la dirección 0x5100 (Considere que I tiene un índice de 01, J de 02 y K de 03 en el ámbito de variables locales). b. Ilustre gráficamente la evolución de la pila de operandos (ver figura 4.9 del Tannenbaum como referencia). Escriba la expresión matemática que es calculada con el fragmento. c. Asuma que el programa se ejecuta por completo, partiendo de los contenidos iniciales mostrados en la tabla, y diga cuál es el contenido final de los registros y de la posiciones de memoria que se modifican. Etiq. Instrucción Memoria (zona de programa) Dirección Contenido L1: ILOAD I IFEQ L2 0c ILOAD J 0c C ILOAD I 0c IADD 0c ISTORE J 0c IINC I, -1 0c C GOTO L1 0x L2: ILOAD J 0x DUP 0x IADD 0x C ISTORE K 0x x x Memoria (Zona de Datos) Direcc. Inicial Final Registro Inicial Final 0X MAR 0X MDR 0X X X PC 0X X C 0X MBR 0X10 0X X SP 0X X X F LV 0X X X CPP 0X X C 0X000000AF TOS 0x X X X X X X000000C5.

4 2.- Suponga el contenido inicial de registros y memoria que aparece a continuación asuma que se acaba de ejecutar un Main1, a) Escriba el programa en assembler que se ejecuta hasta que se encuentre la primera instrucción HALT. b) Grafique las operaciones realizadas en la pila memoria para cada instrucción de assembler. (Ver figura 4.9 del Libro). Diga qué hace el programa. c) Diga cuáles son los contenidos finales de registros y memoria cuando se llega a la instrucción HALT. Direcc. Inicial Final Registro Inicial Final 0X X1209A3B3 0X X2C2C2025 0X C 0X X X X X X X X C 0X X X X X X X X XFFEDFF00 0X X035F649B 0X C 0X X X X X X X MAR 0X MDR 0X PC 0X MBR 0X SP 0X LV 0X CPP 0X TOS 0X

5 3.- Asuma el contenido inicial de registros y memoria que aparece en el reverso de la página, asuma también que el próximo ciclo de microcódigo a ejecutar es un Main1, Diga cuáles son los contenidos finales de registros y memoria después de ejecutar el IRETURN Direcc. Inicial 0X X0F0F0F0F 0X C 0X X X X X X XB6000FA7 Antes ireturn Después ireturn 0X X F Contenidos 0X X Reg Inicial Antes Despues 0X X MAR 0X X C 0X MDR 0X X X F PC 0X X X MBR 0XB6 0X X SP 0X A 0X C 0X F LV 0X X X CPP 0X X X TOS 0x X X X C 0X X X X X X X X C 0X X X X X X X X X X XA70F00B6 0X XAC X X150580AC 0X C 0X7E36057E 0X X X X X X X C 0X X X F 0X X00FF6030 0X X X C 0X05A7000F

Arquitectura de Conjunto de Instrucciones (ISA) Integer Java Virtual Machine (IJVM) para Mic-1

Arquitectura de Conjunto de Instrucciones (ISA) Integer Java Virtual Machine (IJVM) para Mic-1 Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC2721 Arquitectura del Computador I Prof. Osberth De Castro Clase 03 Arquitectura de Conjunto de Instrucciones (ISA) Integer Java Virtual

Más detalles

Nivel ISA. Nivel de Arquitectura del Conjunto de Instrucciones (Macro-arquitectura)

Nivel ISA. Nivel de Arquitectura del Conjunto de Instrucciones (Macro-arquitectura) Nivel ISA Nivel de Arquitectura del Conjunto de Instrucciones (Macro-arquitectura) Nivel de Arquitectura Nivel 6 Nivel de lenguaje orientado hacia problemas Traducción (compilador) Nivel 5 Nivel de lenguaje

Más detalles

IJVM Instructions. Computer Architecture The instruction opcode is 8 bit wide. Offsets are 16 bits wide (stored in two consecutive bytes)

IJVM Instructions. Computer Architecture The instruction opcode is 8 bit wide. Offsets are 16 bits wide (stored in two consecutive bytes) (1) IJVM Instructions The instruction opcode is 8 bit wide Offsets are 16 bits wide (stored in two consecutive bytes) For IINC varnum and const are each 8 bits wide (cannot use WIDE) Variable references

Más detalles

Nivel ISA. Revisión y resultados parcial 1

Nivel ISA. Revisión y resultados parcial 1 Nivel ISA Revisión y resultados parcial 1 Parcial 1 SOLUCIÓN Pregunta 1 Tomando en cuenta la secuencia de microinstrucciones (en lenguaje MAL) MAR=SP-1;rd MAR=SP H=MDR;wr MDR=TOS MAR=SP-1;wr TOS=H;goto

Más detalles

Mic-1: Microarchitecture. IJVM Instructions NOP. Computer Architecture WS January 2006 B+1. University of Fribourg, Switzerland

Mic-1: Microarchitecture. IJVM Instructions NOP. Computer Architecture WS January 2006 B+1. University of Fribourg, Switzerland Mic-1: Microarchitecture IJVM Instructions The instruction opcode is 8 bit wide University of Fribourg, Switzerland System I: Introduction to Computer Architecture WS 2005-2006 25. January 2006 Offsets

Más detalles

Práctica 3: Programación en ASM Orga 1

Práctica 3: Programación en ASM Orga 1 Ignacio Eguinoa Organización del Computador I DC - UBA Segundo Cuatrimestre de 2015 Generaciones de lenguajes 1G: Lenguaje de máquina(código binario de operaciones) 2G: Lenguaje Ensamblador(Assembly) (Textual

Más detalles

PRÁCTICA # 2. 0 Direcciones 1 Dirección 2 Direcciones 3 Direcciones

PRÁCTICA # 2. 0 Direcciones 1 Dirección 2 Direcciones 3 Direcciones UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIAS ESCUELA DE COMPUTACIÓN UNIDAD DOCENTE DE REDES, ARQUITECTURA Y SISTEMAS ORGANIZACIÓN Y ESTRUCTURA DEL COMPUTADOR I PRÁCTICA # 2 1. Escriba programas

Más detalles

Seguimiento. Organización del Computador I. Gustavo Cairo Carlos A. Di Pietro Carolina Lang. 1 er Cuatrimestre de 2016

Seguimiento. Organización del Computador I. Gustavo Cairo Carlos A. Di Pietro Carolina Lang. 1 er Cuatrimestre de 2016 La Máquina ORGA1: Arquitectura y Seguimiento Organización del Computador I Gustavo Cairo Carlos A. Di Pietro Carolina Lang Departamento de Computación - FCEyN UBA 1 er Cuatrimestre de 2016 Outline Arquitectura

Más detalles

Arquitectura del CPU. Organización del Computador 1 Verano 2016

Arquitectura del CPU. Organización del Computador 1 Verano 2016 Arquitectura del CPU Organización del Computador 1 Verano 2016 Agenda De dónde venimos? Introducción: esquema de una computadora Representación de la información Circuitos Combinatorios Circuitos Secuenciales

Más detalles

Llamada a un método. Llamada a métodos en Mic-1. Llamada a un método. Paso de parámetros. Instrucciones InvokeVirtual e ireturn

Llamada a un método. Llamada a métodos en Mic-1. Llamada a un método. Paso de parámetros. Instrucciones InvokeVirtual e ireturn Llamada a métodos en Mic-1 Instrucciones InvokeVirtual e ireturn Llamada a un método La dirección de comienzo del método se guarda en la reserva de constantes. 1 Llamada a un método public class demo {

Más detalles

RESEÑA DE LENGUAJE C

RESEÑA DE LENGUAJE C RESEÑA DE LENGUAJE C VARIABLES La función main. Es el punto de entrada al programa. void main(void) Aquí escribo mi programa Tipos de datos. Char. El char es una variable de 1 byte. Almacena números enteros.

Más detalles

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicio 1. Dada la siguiente expresión de un lenguaje de alto nivel int a = 6; int b = 7; int c = 3; int d; d = (a+b) * (a+b); Indique

Más detalles

DESCRIPCIÓN DE LAS INSTRUCCIONES

DESCRIPCIÓN DE LAS INSTRUCCIONES Todas las instrucciones del PIC cumplen las siguientes condiciones: Las instrucciones son simples y rápidas. Todas tienen un tiempo de ejecución de un ciclo de instrucción (cuatro ciclos de reloj) a excepción

Más detalles

Procesadores ISA Macroarquitecura - Interfaces

Procesadores ISA Macroarquitecura - Interfaces Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC2721 Arquitectura del Computador I Prof. Osberth De Castro Clase 04 Procesadores ISA Macroarquitecura - Interfaces ISA General Modelos

Más detalles

Segundo Parcial Programación en Mikro C PIC16F877

Segundo Parcial Programación en Mikro C PIC16F877 Segundo Parcial Programación en Mikro C para microcontroladores PIC PIC16F877 Operadores a nivel de bits Operador operacion & AND; compara pares de bits y regresa 1 si ambos son 1 s, de otra manera regresa

Más detalles

Programación en ensamblador Ejercicios propuestos

Programación en ensamblador Ejercicios propuestos Programación en ensamblador Ejercicios propuestos Ejercicio 1. Dada la siguiente expresión de un lenguaje de alto nivel int a = 6; int b = 7; int c = 3; int d; d = (a+b) * (a+b); Indique un fragmento de

Más detalles

Práctica 3 - Arquitectura del CPU

Práctica 3 - Arquitectura del CPU Práctica 3 - Arquitectura del CPU Organización del Computador 1 Primer cuatrimestre de 2012 Ejercicio 1 A partir de cada uno de los siguientes vuelcos parciales de memoria y estados del procesador, realizar

Más detalles

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S.

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S. Nombre: SOLUCIÓN Madrid, 24 de abril de 2008. NOTAS: Duración: 60 minutos. Se puede hacer a lápiz. No se permiten apuntes ni calculadora. No se permite desgrapar las hojas. 1. (2 puntos) Indique cuáles

Más detalles

Nombre: Carnet: Examen Parcial 1 (35 Puntos)

Nombre: Carnet: Examen Parcial 1 (35 Puntos) Universidad simón Bolívar Departamento de Electrónica y Circuitos / Sección de Sistemas Digitales EC7 Arquitectura del Computador II Trimestre Abril Julio de 008 0/0/008 Nombre: Carnet: Examen Parcial

Más detalles

Guía de ejercicios # 4 Rutinas: modularización y reuso

Guía de ejercicios # 4 Rutinas: modularización y reuso Guía de ejercicios # 4 Rutinas: modularización y reuso Organización de Computadoras 2018 UNQ Los objetivos de esta práctica son: Poder dividir en sub tareas un problema Volcar un sub problema en una rutina

Más detalles

Ejercicio 1. Considere el siguiente fragmento en ensamblador:

Ejercicio 1. Considere el siguiente fragmento en ensamblador: UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA. ESTRUCTURA DE COMPUTADORES Para la realización del presente examen se dispondrá de 1:30 horas. NO se podrán

Más detalles

Introducción al simulador

Introducción al simulador Departamento de Automática 1 / 17 Índice Proyecciones de dispositivos de entrada/salida Registros Instrucciones 2 / 17 Arquitectura del simulador Sitio web https://parraman.github.io/asm-simulator/ Proyecto

Más detalles

Guía de ejercicios # 8 Flags y Saltos

Guía de ejercicios # 8 Flags y Saltos Guía de ejercicios # 8 Flags y Saltos Organización de Computadoras 2018 UNQ Los objetivos de esta práctica son: Comprender qué son y para qué se utilizan los Flags. Conocer qué operaciones modifican los

Más detalles

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S.

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S. ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES 1º I.T.I.G. I.T.I.S. Examen Final 2º cuatrimestre Nombre: SOLUCIÓN Madrid, 20 de junio de 2008. NOTAS: Duración: 90 minutos. Se puede hacer a lápiz. No se permiten

Más detalles

Tema 3: Lenguaje ensamblador. La primera abstracción de la máquina para el programador

Tema 3: Lenguaje ensamblador. La primera abstracción de la máquina para el programador Tema 3: Lenguaje ensamblador La primera abstracción de la máquina para el programador Índice Introducción. Generación código máquina: ensamblador, montador y cargador. Instrucciones y directivas. Macros

Más detalles

Examen de Fundamentos de la Programación (Modelo 1)

Examen de Fundamentos de la Programación (Modelo 1) Examen de Fundamentos de la Programación (Modelo 1) 27 de noviembre de 2007 1. Qué escribe el siguiente programa si se teclea 5? int num, resultado; for (resultado=0; num; resultado++) num -= 2; printf

Más detalles

Arquitectura de Sistemas

Arquitectura de Sistemas Arquitectura de Sistemas Práctica 3: El teclado del PC Gustavo Romero López Actualizado: 10 de mayo de 2018 Arquitectura y Tecnología de Computadores Objetivos Objetivos: Recordar el funcionamiento de

Más detalles

09/02/2016 ET1032 ET1032. Informática Industrial. Informática Industrial. Hacer programas 1. Hacer programas 2

09/02/2016 ET1032 ET1032. Informática Industrial. Informática Industrial. Hacer programas 1. Hacer programas 2 Hacer programas 1 Hacer programas 2 1 Hacer programas 3 Hacer programas 4 2 Hacer programas 5 Hacer programas 6 3 Hacer programas 7 Hacer programas 8 4 Hacer programas 9 Hacer programas 10 5 Hacer programas

Más detalles

ET1032. Informática Industrial. Hacer programas 1

ET1032. Informática Industrial. Hacer programas 1 Hacer programas 1 Hacer programas 2 Hacer programas 3 Hacer programas 4 Hacer programas 5 Hacer programas 6 Hacer programas 7 Hacer programas 8 Hacer programas 9 Hacer programas 10 Hacer programas 11 Hacer

Más detalles

Arquitectura de Sistemas

Arquitectura de Sistemas Arquitectura de Sistemas Práctica 3: El teclado del PC Gustavo Romero López Actualizado: 10 de mayo de 2018 Arquitectura y Tecnología de Computadores Objetivos Objetivos: Recordar el funcionamiento de

Más detalles

UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA. ESTRUCTURA DE COMPUTADORES

UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INFORMÁTICA GRADO EN INGENIERÍA INFORMÁTICA. ESTRUCTURA DE COMPUTADORES Ejercicio 1 Los siguientes números se encuentran representados en complemento a dos utilizando 6 bits. Indique su correspondiente valor decimal: a) 010011 b) 100111 Ejercicio 3 Dada la siguiente expresión

Más detalles

Tema 05: Elementos de un programa en C

Tema 05: Elementos de un programa en C Tema 05: Elementos de un programa en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1

Más detalles

Operaciones lógicas y repetición

Operaciones lógicas y repetición Organización de computadoras Universidad Nacional de Quilmes http:// Repaso Algebra de Boole Memoria principal datos direcciones Unidad Aritmético- Logica (ALU) Unidad de Control de programa (UC) CPU 1

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

Funciones y Datos en Intel 8086

Funciones y Datos en Intel 8086 y Datos en 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 Tipos atómicos Tipos estructurados

Más detalles

Práctica 3: El teclado del PC

Práctica 3: El teclado del PC Práctica 3: El teclado del PC Gustavo Romero López Arquitectura y Tecnología de Computadores 6 de marzo de 017 Gustavo Romero López Práctica 3: El teclado del PC 1 / 11 Objetivos Objetivos: Fuentes: Recordar

Más detalles

Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017

Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017 Práctica de Arquitectura de Computadores Sistemas de Entrada/Salida: Entrada/Salida Programada Curso 2016/2017 Antonio Pérez Ambite Santiago Rodríguez de la Fuente Departamento de Arquitectura y Tecnología

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

FUNCIONAMIENTO DEL ORDENADOR

FUNCIONAMIENTO DEL ORDENADOR FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores

Más detalles

Práctica 3: El teclado del PC

Práctica 3: El teclado del PC Práctica 3: El teclado del PC Gustavo Romero López Arquitectura y Tecnología de Computadores 7 de junio de 2016 Gustavo Romero López Práctica 3: El teclado del PC 1 / 11 Objetivos Objetivos: Fuentes: Recordar

Más detalles

PROGRAMACIÓN EN C. PRÁCTICA 2: Operaciones con bits. Práctica 2: Índice. 2.1 Introducción 2.2 Representación de información binaria en C

PROGRAMACIÓN EN C. PRÁCTICA 2: Operaciones con bits. Práctica 2: Índice. 2.1 Introducción 2.2 Representación de información binaria en C PROGRAMACIÓN EN C PRÁCTICA 2: Operaciones con bits Práctica 2: Índice 2.1 Introducción 2.2 Representación de información binaria en C 2.3 Operando con bits en C 2.4 Máscaras 2.5 Desplazamientos 2.6 Ejercicios

Más detalles

Guía práctica lenguaje ensamblador

Guía práctica lenguaje ensamblador Guía práctica lenguaje ensamblador (c) Francisco Charte Ojeda Introducción Qué es el lenguaje ensamblador? Aplicaciones de la programación en ensamblador El lenguaje ensamblador de los x86 8, 16, 32 y

Más detalles

Operadores de comparación

Operadores de comparación Operadores de comparación Los operadores de comparación en C son: Igual (==) Distinto (!=) Mayor (>) y Mayor o igual (>=) Menor (

Más detalles

Operadores aritméticos

Operadores aritméticos Bloque 3.2 Operadores aritméticos Suma : x + y Resta : x y Multiplicación : x * y División : x / y Módulo : x % y (resto de la división Si los operandos son enteros tipo del resultado

Más detalles

APELLIDOS NOMBRE GRADO SOLUCIÓN. Figura 1

APELLIDOS NOMBRE GRADO SOLUCIÓN. Figura 1 DECODIFICADOR SISTEMAS DIGITALES BASADOS EN MICROPROCESADORES 12 febrero de 2018 APELLIDOS NOMBRE GRADO SOLUCIÓN Ejercicio 1 (40 minutos 4 puntos) La siguiente figura muestra un diagrama de bloques simplificado

Más detalles

Representación de la información Ejercicios resueltos

Representación de la información Ejercicios resueltos Representación de la información Ejercicios resueltos Ejercicio 1. Indique la representación de los siguientes números, razonando su respuesta: a) -16 en complemento a 2 con 5 bits b) -16 en complemento

Más detalles

Entender los aspectos técnicos, por los cuales un intruso puede ingresar a un sistema y tomar el control de este

Entender los aspectos técnicos, por los cuales un intruso puede ingresar a un sistema y tomar el control de este COMO PENETRAR UN SISTEMA POR MEDIO DE DESBORDAMIENTO DE BUFFER OBJETIVO Entender los aspectos técnicos, por los cuales un intruso puede ingresar a un sistema y tomar el control de este AGENDA Programas

Más detalles

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE) Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben

Más detalles

Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio

Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio Circuitos Digitales II y Laboratorio Electrónica Digital II y Laboratorio Fundamentos de Arquitectura de Computadores Modelo de von Neumann Profesor: Felipe Cabarcas Correo:cabarcas@udea.edu.co Oficina:

Más detalles

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos. Lenguaje C Un poco de historia C es un lenguaje de propósito general, es decir, se pueden desarrollar aplicaciones de diversas áreas. Dentro de sus principales características podemos mencionar que: Es

Más detalles

Ejercicios del tema 4. El procesador

Ejercicios del tema 4. El procesador Ejercicios del tema 4. El procesador Estructura del procesador elemental WepSIM Address Bus Data Bus Control Bus C0 Ta Internal Bus RA RB RC LC MAR T9 Memory MRdy BE ADDR DATA R W A31-A0 BE3-BE0 D31-D0

Más detalles

Tema 3 (I) Fundamentos de la programación en ensamblador

Tema 3 (I) Fundamentos de la programación en ensamblador Tema 3 (I) Fundamentos de la programación en ensamblador Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos 1. Fundamentos básicos de la

Más detalles

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II Clase #4 Clase #4 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Contenido Unidad de control Control cableado Control microprogramado MIC-1 La Unidad de Control La instrucción

Más detalles

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II Clase #4 Clase #4 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Contenido Unidad de control Control cableado Control microprogramado MIC-1 1 La Unidad de Control La instrucción

Más detalles

introducción a la computación

introducción a la computación introducción a la computación representaciones computacionales Bruno Lara Guzmán Departamento de Computación, Facultad de Ciencias 20 de noviembre de 2013 (UAEM) introducción a la computación 20 de noviembre

Más detalles

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 1

Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 1 Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 1 Contenidos: 1. Características generales de C 2. Edición y compilación de un programa C 3. Variables y tipos

Más detalles

SESIÓN DE EJERCICIOS E1

SESIÓN DE EJERCICIOS E1 SESIÓN DE EJERCICIOS E1 Primera parte: ejercicios test (soluciones al final) A resolver antes de comenzar la sesión en el aula Ejercicio 1 Qué definición de constantes es la correcta en lenguaje C? a)

Más detalles

Microprocesadores. Introducción al Lenguaje C - Parte IV. Prof. Luis Araujo. Universidad de Los Andes

Microprocesadores. Introducción al Lenguaje C - Parte IV. Prof. Luis Araujo. Universidad de Los Andes Introducción al Lenguaje C - Parte IV Universidad de Los Andes Funciones Las funciones son porciones de código que devuelven un valor y permiten descomponer el programa en módulos que se llaman entre ellos

Más detalles

Tema: Lenguaje ensamblador embebido

Tema: Lenguaje ensamblador embebido Compiladores. Guía 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Lenguaje ensamblador embebido Contenido En esta guía se presenta una breve introducción a las estructuras

Más detalles

Organización de computadoras. Clase 4. Universidad Nacional de Quilmes. Lic. Martínez Federico

Organización de computadoras. Clase 4. Universidad Nacional de Quilmes. Lic. Martínez Federico Organización de computadoras Clase 4 Universidad Nacional de Quilmes Lic. Martínez Federico Memoria: Organización Lectura Escritura Direcciones Qué pasó? Qué pasó? Memoria: Organización Lectura Escritura

Más detalles

Programación Estructurada. Sesión 2:El lenguaje de programación C

Programación Estructurada. Sesión 2:El lenguaje de programación C Programación Estructurada Sesión 2:El lenguaje de programación C Contextualización Una parte importante del lenguaje C son las palabras reservadas, son identificadores con un significado predefinido. Estas

Más detalles

Arquitectura de Computadoras

Arquitectura de Computadoras 4-1 Arquitectura de Computadoras Tema 4: Arquitectura del Set de Instrucciones Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom 4-2 Arquitectura del Set de Instrucciones Indice

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 constará de dos partes: 1ª parte: Test, con una puntuación de 5 puntos y 40 minutos de tiempo 2ª parte: Ejercicios prácticos, con una puntuación

Más detalles

Mientras (expresión lógica) Instrucciones a repetir mientras la expresión lógica es verdadera Fin Mientras

Mientras (expresión lógica) Instrucciones a repetir mientras la expresión lógica es verdadera Fin Mientras Clase teórica 7 Algoritmos en C Página 1 de 5 INSTRUCCIÓN WHILE Una forma más general que el FOR para realizar iteraciones es el WHILE (mientras), el cual permite repetir una serie de instrucciones mientras

Más detalles

PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07

PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07 PROCESADORES DE LENGUAJE EXAMEN FINAL 8-JUNIO-07 1. En qué método de análisis sintáctico puede suceder que en la construcción del árbol de derivación de las posibles expansiones de un símbolo no terminal

Más detalles

Signo Exponente Mantisa. b) (6ptos) Qué números representan en este sistema: 0x0000 y 0x0FFB?

Signo Exponente Mantisa. b) (6ptos) Qué números representan en este sistema: 0x0000 y 0x0FFB? Organización del Computador I - Primer Parcial - Segundo Cuatrimestre 2010 Este examen se aprueba obteniendo al menos 65 puntos. El parcial es a libro abierto, con lo cual se puede utilizar todo lo definido

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

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

EXAMEN ORDINARIO DE ORGANIZACIÓN DE COMPUTADORES

EXAMEN ORDINARIO DE ORGANIZACIÓN DE COMPUTADORES 11 de febrero de 2010 16h. Escuela Técnica Superior de Ingeniería Informática Camino del Cementerio s/n. 47011 Valladolid EXAMEN ORDINARIO DE ORGANIZACIÓN DE COMPUTADORES NOTA: Los alumnos con las prácticas

Más detalles

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta Centro Asociado Palma de Mallorca Antonio Rivero Cuesta La Sintaxis de Java I... 5 Tipos de datos... 6 Tipos de datos simples... 7 Operadores... 11 Operadores Aritméticos... 12 Operadores relacionales...

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

Estructura de Computadores. Problemas de Instrucciones y Direccionamientos

Estructura de Computadores. Problemas de Instrucciones y Direccionamientos Estructura de Computadores. Problemas de Instrucciones y Direccionamientos Departamento de Arquitectura y Tecnología de Sistemas Informáticos Octubre 2009 1. Sea un computador con palabras y direcciones

Más detalles

Preliminares: programación con C++

Preliminares: programación con C++ Preliminares: programación con C++ JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING Archivos y Comentarios Todo programa en lenguaje C++ debe tener la siguiente extensión: file.c, file.cc file.cpp

Más detalles

Práctica 6. El procesador

Práctica 6. El procesador Práctica 6 El procesador Material: PC y Visual Studio 2013 Duración: 2 horas Lugar: Laboratorios de prácticas (Laboratorio de Redes-Hardware) La herramienta que vamos a utilizar para el desarrollo de las

Más detalles

la solución a una ecuación cuadrática solicitando al usuario los términos de dicha ecuación.

la solución a una ecuación cuadrática solicitando al usuario los términos de dicha ecuación. ALGORITMOS SECUENCIALES: La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente

Más detalles

Elementos léxicos del lenguaje de programación C

Elementos léxicos del lenguaje de programación C Elementos léxicos del lenguaje de programación C Elementos léxicos de los lenguajes de programación (tokens) Palabras reservadas Identificadores Literales Operadores Delimitadores Comentarios Apéndices

Más detalles

Tema 3. Estructuras de control

Tema 3. Estructuras de control Tema 3. Estructuras de control 3.1. Secuencial 3.2. Selección 3.3. Repetición 2 Objetivos Objetivos del tema: Conocer y saber la utilidad de las tres estructuras de control (secuencial, alternativa y repetitiva)

Más detalles

Tema 2. Diseño del repertorio de instrucciones

Tema 2. Diseño del repertorio de instrucciones Enunciados de problemas Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 10 Tema 2: Hoja: 3 / 10 Base teórica Al diseñar un computador, uno

Más detalles

Características generales

Características generales REPERTORIO DE INSTRUCCIONES En esta sección se pretende: Conocer las características generales de las instrucciones para el PIC16F84 Los distintos modos de direccionamiento, y Los diferentes grupos de

Más detalles

Bus de direcciones. Bus de datos

Bus de direcciones. Bus de datos 1) INTRODUCCIÓN A LA MÁQUINA SENCILLA La máquina sencilla (MS) es un computador concebido para fines exclusivamente didácticos. MS sólo dispone de dos bloques: Unidad Central de Proceso y memoria principal.

Más detalles

Lenguajes de Interfaz

Lenguajes de Interfaz Lenguajes de Interfaz Unidad 1 Introducción al Lenguaje Ensamblador M. C. Miguelangel Fraga Aguilar 1.1 Importancia de la programación en Lenguaje Ensamblador Mejor conocimiento del funcionamiento del

Más detalles

Programación 1 Tema 2. Lenguaje de programación y ejecución de un programa

Programación 1 Tema 2. Lenguaje de programación y ejecución de un programa Programación 1 Tema 2 Lenguaje de programación y ejecución de un programa Índice Lenguaje de programación Símbolos Sintaxis Semántica Computador Ejecución de un programa Sistema operativo, entorno de programación

Más detalles

Arquitectura de Computadores II Clase #3

Arquitectura de Computadores II Clase #3 Arquitectura de Computadores II 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

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

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

FUNDAMENTOS DE MICROPROCESADORES SOLUCIONES A LOS PROBLEMAS DE LA UNIDAD-3.- EL PROCESADOR I: EL LENGUAJE MAQUINA

FUNDAMENTOS DE MICROPROCESADORES SOLUCIONES A LOS PROBLEMAS DE LA UNIDAD-3.- EL PROCESADOR I: EL LENGUAJE MAQUINA 3.1. Un programa escrito para MIPS invoca a la subrutina func, a la que transfiere tres argumentos a, b y c. La subrutina tiene dos variables locales m y n. Mostrar la posición del puntero de pila y los

Más detalles

Capitulo 12. Tira de bits

Capitulo 12. Tira de bits Capitulo 12. Tira de bits 12.1 Representación de números naturales (enteros positivos) base 10 base 2 base 16 decimal binario hexadecimal 0 0 0 1 1 1 2 10 2 3 11 3 4 100 4 5 101 5 6 110 6 7 111 7 8 1000

Más detalles

Repaso Registros internos Z80 1/37

Repaso Registros internos Z80 1/37 Repaso Registros internos Z80 1/37 Repaso Formato instrucciones Formato con 4 direcciones Acumulador: A A op oper2 PC: Program Counter dirección de la próxima instrucción Instrucciones de operación Código

Más detalles

Introducción al EMU8086

Introducción al EMU8086 Introducción al EMU8086 Facultad: Estudios Tecnologicos. Escuela: Electrónica. Asignatura: Microprocesadores Objetivo General Utilizar el programa emulador EMU8086 y relacionarlo con los elementos básicos

Más detalles

Lección 2 Introducción al lenguaje C

Lección 2 Introducción al lenguaje C Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)

Más detalles

Operadores. Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.

Operadores. Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++. Operadores Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++. Operadores aritméticos Son operadores binarios (requieren siempre dos operandos) que realizan las operaciones aritméticas

Más detalles

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador

Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicio 1. Escriba un programa en ensamblador del MIPS 32 para calcular la suma de los 100 primeros números naturales. El programa

Más detalles

PROGRAMACION ESTRUCTURADA: Tema 1. El lenguaje de programación C

PROGRAMACION ESTRUCTURADA: Tema 1. El lenguaje de programación C PROGRAMACION ESTRUCTURADA: Tema 1. El lenguaje de programación C Presenta: David Martínez Torres Universidad Tecnológica de la Mixteca Instituto de Computación Oficina No. 37 dtorres@mixteco.utm.mx Contenido

Más detalles

Práctica 6: Programación en ASM Orga 1

Práctica 6: Programación en ASM Orga 1 Matías Vargas Telles y Azul López basado en trabajo previo de Carlos A. Di Pietro Organización del Computador I DC - UBA 2 do Cuatrimestre de 2013 Dónde estamos? Arquitectura Orga1 Operaciones: Manejo

Más detalles

EMC VNXe3200. Lista de verificación de solución de problemas. Número de referencia Rev. 02

EMC VNXe3200. Lista de verificación de solución de problemas. Número de referencia Rev. 02 EMC VNXe3200 Lista de verificación de solución de problemas Número de referencia 302-000-221 Rev. 02 Copyright 2015 EMC Corporation. Todos los derechos reservados. Publicado en México. Publicado en febrero

Más detalles

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA PRÁCTICA 1: ESTRUCTURA INTERNA DE UNA CPU.

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA PRÁCTICA 1: ESTRUCTURA INTERNA DE UNA CPU. INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA ELECTRÓNICA PRÁCTICA 1: ESTRUCTURA INTERNA DE UNA CPU. OBJETIVOS: En esta práctica se pretende que el alumno aprenda la estructura y funcionamiento de un procesador

Más detalles