Arquitectura de Computadores I

Slides:



Advertisements
Presentaciones similares
2. Manejo de memoria Manejo de memoria estática
Advertisements

El modelo de Von Neumann
Diseño de la ruta de datos monociclo para la arquitectura MIPS
Microprocesadores Componentes básicos..
Compiladores e intérpretes
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS CHAPULTEPEC
CLASE 3 SOFTWARE DEL MICROPROCESADOR
Arquitectura de Computadores I
Fermín Sánchez Carracedo Universitat Politècnica de Catalunya
Computación PROGRAMACIÓN.
Declaración de datos en el segmento de datos.. EXISTEN UN CONJUNTO DE DIRECTIVAS QUE NOS PERMITEN DECLARAR DATOS EN EL SEGMENTO DE DATOS, LAS DIRECTIVAS.
Circuitos Digitales II Alineamiento en Memoria y Ejecución de un programa Semana No.8 Semestre Prof. Gustavo Patiño Prof. Eugenio.
Assembly y el Simulador SPIM
66.20 Organización de Computadoras
66.20 Organización de Computadoras
Departamento de Ingeniería de Sistemas Universidad de Antioquia
CLASE 10.
CLASE 12.
Circuitos Digitales II
Circuitos Digitales II Elementos sobre la Arquitectura del Conjunto de Instrucciones Semana No.2 Semestre Prof. Gustavo Patiño
Arquitectura de Computadores
Introducción al Lenguaje C (ANSI)
ARQUITECTURA INTEL FORMATOS DE INSTRUCCIÓN
Formatos de instrucción
Circuitos Digitales II
Arquitectura de Conjunto de Instrucciones (ISA)
Introducción al Software
Composición Interna de un Procesador
Organización y Estructura del Computador 1
CLASE 11.
Aritmética y Computadores. Refresco de aritmética binaria. Operaciones aritméticas y lógicas. Construcción de una ALU para MIPS. Multiplicación y División.
ISA (Instruction Set Architecture)
Lenguaje C.
MIPS Intermedio.
Introducción a la Ingeniería en Sistemas
Datapath para las instrucciones de brinco
© Prof. José Mª Foces Morán PCSpim: SPIM sobre Windows Ventana principal de PCSpim Consola: permite interactuar con el programa que está siendo.
(CC) , José M. Foces-Morán.
Arquitecturas de Computadoras Curso Propedéutico
Instrucciones: FORMATO DE INSTRUCCIONES
Organización del Computador I Verano MIPS (1 de 2) Basado en el capítulo 3 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
Transformación de los Datos en Información leCCI Ó N 7.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 13.
Overview Sistemas Computacionales
Asignación de Espacio No Contiguo
Programación en MIPS.
LENGUAJE DE PROGRAMACIÓN
PBN © Jaime Alberto Parra Plaza CLASE 5 LOS SEGMENTOS.
Organización del Computador I Verano Excepciones Basado en el capítulo 6 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 11.
introducción al Lenguaje Ensamblador
Memoria Principal Memoria de acceso aleatorio. La unidad de memoria y jerarquías de almacenamiento Unidades de Almacenamiento. La unidad de memoria es.
Organización del Computador

Objetivo Mostrar los fundamentos de la programación a través de ejemplos y prácticas utilizadas cotidianamente en el desarrollo de aplicaciones.
Capítulo 3 Instrucciones y direccionamiento Félix García Carballeira Jesús Carretero Pérez José Daniel Sánchez García David Expósito Singh © Ediciones.
Capítulo 4 CPU y la memoria.
SEMANA 01_2.
Informática Clase Arquitectura de la Computadora.
ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 10.
Organización del Computador I Verano Control Multiciclo Basado en el capítulo 5 del libro de Patterson y Hennessy Verano 2004 Profesora Borensztejn.
introducción al Lenguaje Ensamblador
SISTEMAS COMPUTACIONALES ADMINISTRATIVOS E.E. Fundamentos de Base de Datos 1.8 Estructura de un sistema de base de datos Fuentes: Fundamentos de Bases.
Es un tipo especial de software que nos permite *Crear *Desarrollar *Programar otras aplicaciones. Haciendo uso de sus conocimientos lógicos y lenguajes.
Arquitectura de Computadores I
CONJUNTO DE INSTRUCCIONES Maquinas Digitales
ARQUITECTURA DE COMPUTADORES
MIPS Intermedio.
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
ALGORITMOS Convenio SENA Institución Educativa Técnica Atanasio Girardot Docente: José Manuel Hernández R. Correo: AÑO.
Transcripción de la presentación:

Arquitectura de Computadores I Ejemplo: El conjunto de instrucciones en el MIPS

Ejemplo: El conjunto de instrucciones en el MIPS Introducción. Instrucciones aritméticas. Operandos: Registros y localidades de memoria. Lenguaje de máquina: Representación de las instrucciones en el computador. Instrucciones de decisión.

Introducción

Introducción Instrucciones – conjunto de instrucciones. Los diferentes conjuntos de instrucciones se parecen entre si. La simplicidad en el diseño es uno de los objetivos de un desarrollador cuando escoge el conjunto de instrucciones. Estudio del conjunto de instrucciones del MIPS. Usado por NEC, Nintendo, Silicon Graphics & Sony, entre otros.

Operaciones aritméticas “Deben existir instrucciones para realizar operaciones aritméticas fundamentales”. Principio de diseño 1: La simplicidad favorece la regularidad.

Operaciones aritméticas Ejemplo: A continuación se muestran 2 segmentos de código escritos en C para un programa particular. Asumiendo que las variables a, b, c, ... i, j existen dentro de sus respectivos entornos, ¿ cual sería el código MIPS que el compilador generaría para cada segmento ? // Segmento 1: a = b + c; d = a – e; // Segmento 2: f = ( g + h ) – ( i + j );

Operandos para las instrucciones. Las variables en un lenguaje de alto nivel tienen su contraparte en el mundo del lenguaje de máquina. Se trata de los registros. Un registro es una localidad especial ubicada en la unidad de procesamiento. El tamaño de los registros en MIPS es de 32 bits. Así mismo, MIPS posee un total de 32 registros. El compilador se encarga de hacer desbordamiento de variables para compensar la cantidad de registros. “ Principio de diseño 2: Generalmente los diseños pequeños son más veloces. ”

Operandos para las instrucciones. La convención usada en MIPS es nombrar los registros con dos caracteres, precedidos por el carácter $. Ej: $s0, $s1, $t0, $t1. * Las operaciones aritméticas ocurren solo entre registros de MIPS, por lo tanto deben existir instrucciones para transferir datos entre los registros y la memoria del sistema. Las dos instrucciones que usa MIPS para tales transferencias es lw y sw. ** Por el tamaño de las palabrasen MIPS, se deben considerar dos conceptos: La restricción de alineamiento y el formato Big Endian para el almacenamiento de los bytes individuales en memoria.

Operandos para las instrucciones. Ejemplo: Compile el siguiente par de segmentos de código y genere el código equivalente para MIPS. Use la notación $s0, $s1, ... para representar las variables en el programa y $t0, $t1 .... para representar los elementos de tipo temporal. Asuma que la dirección base del arreglo A está almacenada en el registro $s3. // Segmento 1: A[12] = h + A[8]; // Segmento 2: g = h + A[i];

Representación binaria de las instrucciones.   Dirección Instrucción Formato op rs rt rd shamt function add R reg 32 sub 34 lw I 35 Address sw 43 Reg

Representación binaria de las instrucciones Ejemplo: Compile y ensamble la siguiente línea de código escrita en C para MIPS. Asuma que el registro $s0 almacena la dirección base del arreglo A, mientras que la variable h corresponde al registro $s2. // Código en C: A[300] += h;

Instrucciones para la toma de decisiones. Existen tres instrucciones en MIPS para controlar las estructuras de decisión y las repetitivas: beq, bne y slt. El formato para bne y beq es el siguiente: bne reg,reg,etiqueta beq reg,reg,etiqueta El formato para slt es: slt reg,reg,reg

Instrucciones para la toma de decisiones. Ejemplo: Usando las instrucciones de decisión vistas, compile los siguientes bloques de código escrito en C. Asuma que el registro base del arreglo A es $s0. Las variables f, g, h, i y j corresponden a los registros $s1, $s2, $s3, $s4 y $s5, respectivamente.

Instrucciones para la toma de decisiones. // Segmento 1: if (i==j) f = g + h; else f = g – h; // Segmento 2: Loop: f = f + g; g = g + 1; if(g!=h)go to Loop; // Segmengto 3: while (A[j] == k)