MIPS: Modelo de programación. (I Parte)

Documentos relacionados
CONTROLADORA PARA PIXELS CONPIX

Arquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3. Departamento de Ingeniería de Sistemas Universidad de Antioquia

Sistemas de impresión y tamaños mínimos Printing Systems and minimum sizes

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

INSTRUCCIONES PARA ENVIAR SU PELICULA PARA LA VIDEOLIBRERIA

Real Time Systems. Part 2: Cyclic schedulers. Real Time Systems. Francisco Martín Rico. URJC. 2011

ADAPTACIÓN DE REAL TIME WORKSHOP AL SISTEMA OPERATIVO LINUX

Flashcards Series 5 El Agua

OSCILLATION 512 (LM 3R)

Arquitecturas vectoriales, SIMD y extensiones multimedia

Creating your Single Sign-On Account for the PowerSchool Parent Portal

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

V.- V.-El El manejo de de las las Interrupciones

Speak Up! In Spanish. Young s Language Consulting. Young's Language Consulting. Lesson 1 Meeting and Greeting People.

El nivel ISA (II)! Conjunto de Instrucciones

Repaso de funciones exponenciales y logarítmicas. Review of exponential and logarithmic functions

School Preference through the Infinite Campus Parent Portal

Arquitectura de Computadores II Clase #3

Agustiniano Ciudad Salitre School Computer Science Support Guide Second grade First term

Video Server. Quick Installation Guide. English, Español

Shortcut to Informal Spanish Conversations Level 2 Lesson 1

5.2 LA FUNCION EXPONENCIAL. Copyright Cengage Learning. All rights reserved.

MANUAL EASYCHAIR. A) Ingresar su nombre de usuario y password, si ya tiene una cuenta registrada Ó

manual de servicio nissan murano z51

Vimar By-phone. Your home on your mobile phone.

CUANDO LA MUSA SE HACE VERBO VERSOS CORTOS POEMAS DE AMOR POEMAS DE DESAMOR Y POEMAS CORTOS SPANISH EDITION

An explanation by Sr. Jordan

2008 Series Hemodialysis Machine Operator s Manuals Addendum for Concentrate Connection

BIT-BAND Una Solución eficiente para modificar bits

Nueva confirmación de pedido de compra con cambios: proveedor ES

Synergy Spanish Solutions. Día de San Valentín Audio Lessons

PELICULAS CLAVES DEL CINE DE CIENCIA FICCION LOS DIRECTORES LOS ACTORES LOS ARGUMENTOS Y LAS ANECD

74 Prime Time. conjetura Suposición acerca de un patrón o relación, basada en observaciones.

TU EMBARAZO Y EL NACIMIENTO DEL BEBE GUIA PARA ADOLESCENTES EMBARAZADAS TEEN PREGNANCY AND PARENTI

1. Introducción a la Arquitectura de Computadoras

Puede pagar facturas y gastos periódicos como el alquiler, el gas, la electricidad, el agua y el teléfono y también otros gastos del hogar.

Servicio de Reclamos Amadeus Guía Rápida

Cisco CSS Series Content Services Switches

Vermont Mini-Lessons: Leaving A Voic

Flashcards Series 3 El Aeropuerto

Notas del instructor / Instructor s notes:

Los Verbos Reflexivos

SFD-200-N-B DESPERTADOR-PROYECTOR-CON VOZ. Manual de instrucciones

Plataforma de movilidad SAP en la Nube

Steps to Understand Your Child s Behavior. Customizing the Flyer

Arquitectura de Computadores

Keep reading, for a list of required elements and questions to inspire you!

Disfruten su verano! Hola estudiantes,

Tema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras

Grow healthy. Stay healthy. Grow healthy. Stay healthy. PREGNANCY JOURNEY BOOK DIARIO DEL EMBARAZO

Arquitecturas RISC v.2014

Los seres vivos/ living things. CONOCIMIENTO DEL MEDIO 3º DE PRIMARIA

SISTEMA DE GESTIÓN Y ANÁLISIS DE PUBLICIDAD EN TELEVISIÓN

THE RACING RULES OF SAILING FOR

Level 2 Spanish, 2010

Tendencias actuales en el diseño de computadoras

Save Money 2-up Single Doorhanger Set OH payday advance edition, 4 different doorhangers, Spanish

LAC Modificación DIRECT ALLOCATIONS TO ISPs DISTRIBUCIONES INICIALES A ISPs

Gender, Definite, & Indefinite Articles Making things plural

CUPEANS (COMUNICACIÓN INGLÉS) 2015

Qué viva la Gráfica de Cien!

INEL 4206 Microprocesadores Texto: Barry B Brey, The Intel Microprocessors: 8va. Ed., Prentice Hall, 2009

TIPO DE CAMBIO AL CIERRE DE de enero de 2012 CLOSING EXCHANGE RATES AT YEAR END 2011 January 2, January 2, de enero de 2012

Coopeande 5: Ofreciendo los mejores precios con SAP

Setting Up an Apple ID for your Student

Conditioning Exercises: Standing

SISTEMA DE CONTROL LÓGICO PROGRAMABLE (PLC) SOBRE HARDWARE EMBEBIDO Y BAJO SISTEMA OPERATIVO LINUX

A W. Product Label Identification. Etiqueta de identificación del producto. Andersen

Flashcards Series 1 Saludos y Despedidas

SCADA BASADO EN LABVIEW PARA EL LABORATORIO DE CONTROL DE ICAI

TEACHER TOOLS: Teaching Kids Spanish Vocabulary. An Activity in 4 Steps

EMPLOYER & EMPLOYEE RETIREMENT PLAN TAX CREDITS

El Viaje de Dumbo. : Hillary Blair

(GUÍA_DE_ESTUDIO) Recuerda los verbos regulares y stem-changing verbs.

PRINTING INSTRUCTIONS

Learning Masters. Early: Force and Motion

TSQM (Version 1.4) Treatment Satisfaction Questionnaire for Medication

Diseño y Administración de Redes de Computadoras

Sesión 3: PL 2b: Sistema para la adquisición de señales analógicas.

Read all instructions BEFORE assembly and USE of product. KEEP INSTRUCTIONS FOR FUTURE USE.

Es un software de simulación que ejecuta programas en lenguaje de ensamblador para procesadores con arquitectura MIPS32.

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

Instrucciones para la instalación de IBM SPSS Data Access Pack para Linux

Volatilidad: Noviembre 2010 Futuros Frijol de Soya

Spanish Advanced Unit 4: Research, Understanding and Written Response

Connection from School to Home Kindergarten Math Module 2 Topic A. Making 3 with Triangles and Chips

Sierra Security System

Guide to Health Insurance Part II: How to access your benefits and services.

Microprocesadores, Tema 8:

150Mbps Micro Wireless N USB Adapter

Definición de Memoria

Beneficios de Fundar una Corporación Sin Fines de Lucro Benefits of Establishing a Non-Profit Corporation

Final Project (academic investigation)

Gustar : Indirect object pronouns.

Some examples. I wash my clothes, I wash the dishes, I wash the car, I wash the windows. I wash my hands, I wash my hair, I wash my face.

VMware Horizon Mirage: Gestión Centralizada de imágenes Windows

TOUCH MATH. Students will only use Touch Math on math facts that are not memorized.

Transcripción:

MIPS: Modelo de programación (I Parte)

MIPS: Microprocessor without Interlocked Pipeline Stages Trabajaremos como MIPS Son similares a las desarrolladas en los años 80 Cerca de 100 millones de procesadores MIPS se fabricaron en el 2002 Utilizados por NEC, Nintendo, Cisco, Silicon Graphics, Sony, 1400 1300 1200 1100 1000 900 800 700 600 500 400 300 200 100 0 Other SPARC Hitachi SH PowerPC Motorola 68K MIPS IA-32 ARM 1998 1999 2000 2001 2002 2

1. Simplicidad favorece la regularidad Mantenga todas las instrucciones de un tamaño simple Siempre se necesita de operandos de tres registros para en las operaciones aritméticas 2. Lo pequeño es más rápido Tiene solamente 32 registros 3. Un buen diseño hace buenos compromisos Compromisos entre proveer mayores direcciones e instrucciones constantes y mantener las instrucciones del mismo largo. 4. Hacer la parte común rápida El direccionamiento relativo al PC en los saltos condicionales Direccionamiento inmediato para operadores constantes 3

Configuración básica de una máquina Registros de trabajo Memoria principal Bus de Datos Bus de Direcciones Bus de control Procesador 4

5

Name Register number Usage $zero 0 the constant value 0 $at 1 reserved for assembler $v0-$v1 2-3 values for results and expression evaluation $a0-$a3 4-7 arguments $t0-$t7 8-15 temporary registers $s0-$s7 16-23 saved registers $t8-$t9 24-25 more temporary registers $k0-$k1 26-27 reserved for Operating System kernel $gp 28 global pointer $sp 29 stack pointer $fp 30 frame pointer $ra 31 return address Cada registro se puede utilizar por su nombre o por su número 6

FIGURE 2.11 What is and what is not preserved across a procedure call. If the software relies on the frame pointer register or on the global pointer register, discussed in the following subsections, they are also preserved. Copyright 2009 Elsevier, Inc. All rights reserved. 7

FIGURE 2.10 The values of the stack pointer and the stack (a) before, (b) during, and (c) after the procedure call. The stack pointer always points to the top of the stack, or the last word in the stack in this drawing. Copyright 2009 Elsevier, Inc. All rights reserved. 8

FIGURE 2.12 Illustration of the stack allocation (a) before, (b) during, and (c) after the procedure call. The frame pointer ($fp) points to the fi rst word of the frame, often a saved argument register, and the stack pointer ($sp) points to the top of the stack. The stack is adjusted to make room for all the saved registers and any memory-resident local variables. Since the stack pointer may change during pro gram execution, its easier for programmers to reference variables via the stable frame pointer, although it could be done just with the stack pointer and a little address arithmetic. If there are no local variables on the stack within a procedure, the compiler will save time by not setting and restoring the frame pointer. When a frame pointer is used, it is initialized using the address in $sp on a call, and $sp is restored using $fp. This information is also found in Column 4 of the MIPS Reference Data Card at the front of this book. Copyright 2009 Elsevier, Inc. All rights reserved. 9

Usos de la memoria principal FIGURE 2.13 The MIPS memory allocation for program and data. These addresses are only a software convention, and not part of the MIPS architecture. The stack pointer is initialized to 7fff fffc hex and grows down toward the data segment. At the other end, the program code ( text ) starts at 0040 0000 hex. The static data starts at 1000 0000hex. Dynamic data, allocated by malloc in C and by new in Java, is next. It grows up toward the stack in an area called the heap. The global pointer, $gp, is set to an address to make it easy to access data. It is initialized to 1000 8000 hex so that it can access from 1000 0000 hex to 1000 ffff hex using the positive and negative 16-bit offsets from $gp. This information is also found in Column 4 of the MIPS Reference Data Card at the front of this book. Copyright 2009 Elsevier, Inc. All rights reserved. 10

11

Registros y sus aplicaciones FIGURE 2.14 MIPS register conventions. Register 1, called $at, is reserved for the assembler (see Section 2.12), and registers 26 27, called $k0 $k1, are reserved for the operating system. This information is also found in Column 2 of the MIPS Reference Data Card at the front of this book. Copyright 2009 Elsevier, Inc. All rights reserved. 12

32 bits R0 R1 R2 R30 R31 32 registros para propósito general PC = 0x0000001C 0x00000000 0x00000004 0x00000008 0x0000000C 0x00000010 0x00000014 0x00000018 0x0000001C 0xfffffff4 0xfffffffc 0xfffffffc REGISTROS MEMORIA 4GB Max (generalmente 64MB-1GB) 13

Qué es Big Endian? 14

Mas de la organización de memoria Dos puntos de vista de la memoria: 2 32 bytes con direcciones 0, 1, 2,, 2 32-1 2 30 4-byte words* con direcciones 0, 4, 8,, 2 32-4 Ambos puntos de vista utilizan direccionamiento por medio de Bytes No todas las arquitecturas lo requieren El direccionamiento por palabra debe ser múltiplo de 4 (alineado) 0x00000000 0x00000001 0x00000002 0x00000003 8 bits 0x00000000 0x00000004 0x00000008 0x0000000C 32 bits 0 1 2 3 15

FIGURE 2.18 Illustration of the five MIPS addressing modes. The operands are shaded in color. The operand of mode 3 is in memory, whereas the operand for mode 2 is a register. Note that versions of load and store access bytes, halfwords, or words. For mode 1, the operand is 16 bits of the instruction itself. Modes 4 and 5 address instructions in memory, with mode 4 adding a 16-bit address shifted left 2 bits to the PC and mode 5 concatenating a 26-bit address shifted left 2 bits with the 4 upper bits of the PC. Copyright 2009 Elsevier, Inc. All rights reserved. 16

17

18