Unidad 3. Facultad de Ciencias Departamento de Electrónica

Documentos relacionados
El repertorio de instrucciones

Plataformas de soporte computacional: arquitecturas avanzadas,

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS

3. Instrucciones: lenguaje de la máquina

Números con y sin signo Suma y resta Operaciones Lógicas Construyendo una ALU Multiplicación División Punto Flotante

Procesador MIPS - Registros

UNIDAD 2: Instrucciones: el lenguaje de las computadoras.

Arquitectura del MIPS: Introducción

El nivel ISA (II)! Conjunto de Instrucciones

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy

Fundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo)

Organización de Computadoras. Principios de Conjuntos de Intrucciones

La Unidad Aritmética

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012

Organización procesador MIPS

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

Sección de procesamiento: El camino de datos

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

El procesador. Diseño del control

Arquitectura de Computadoras I Ingeniería de Sistemas Curso 2017

Fundamentos de los Computadores Grado en Ingeniería Informática

GUIA 24: REPERTORIO DE INSTRUCCIONES

Modelo de von Neumann

INTRUCCIONES: LENGUAJE MAQUINA

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

Unidad 5 Unidad central de proceso

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

Estructuras de Computadores I Tarea 02 02/99

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

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

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

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Unidad Nº II Capacidad de la unidad central. de procesamiento. Instituto Universitario Politécnico. Santiago Mariño

UNIDAD I CONCEPTOS GENERALES. Conceptos Generales Microprocesadores Otoño 2011

El procesador. Datapath y control

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA

Organización de Computadoras. Clase 7

Asignatura de Organización de Computadoras. Alberto Hernández Cerezo. Cristian Tejedor García. Rodrigo Alonso Iglesias. Universidad de Valladolid

ALU. Unidad aritmético-lógica

Repaso concepto de programa

TEMA 4 ESTRUCTURA VON-NEUMANN DEL COMPUTADOR DIGITAL

Fundamentos y Arquitectura de Computadores (ITTSE UV)

Arquitectura de Computadoras

Fundamentos y Arquitectura de Computadores (ITTSE UV)

8. Diseño de la codificación binaria del repertorio de Instrucciones.

Ejercicios del tema 4. El procesador

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II Clase #4

Pr. Dr. Xavier Bonnaire

Tema 2: Lenguaje máquina. La interfaz entre el hardware y el software

Pipelining. Introducción

MIPS. Universidad de Sonora 2

El Conjunto de Instrucciones de la Arquitectura Lagarto I

INSTRUCCIONES: EL LENGUAJE DEL PROCESADOR

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

Tema 6: Descripción del ISA del MIPS

Generación de un ejecutable

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.

UNIVERSIDAD DE CORDOBA ESTRUCTURA DE COMPUTADORAS UNIDAD III

El procesador: camino de datos y. IEC UTM Moisés E. Ramírez G. control

FUNCIONAMIENTO DE LA UNIDAD DE CONTROL DEL PROCESADOR

Contenido. Conjunto de Instrucciones. Formato de la Instrucción. Instrucciones de 1 byte. Formato de la Instrucción 28/09/2011

TEMA VI DISEÑO DEL PROCESADOR

22/03/2012. La división es una de las operaciones menos frecuentes. Revisemos la forma de ejecutarla

Organización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017

El procesador. Datapath para las instrucciones de brinco

ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones

Tema 2. Diseño del repertorio de instrucciones

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

Arquitectura de Computadoras

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

Procesadores ISA Macroarquitecura - Interfaces

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:

Unidad I: Organización del Computador. Ing. Marglorie Colina

Unidad IV: Programación de microcontroladores

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Introducción al lenguaje ensamblador DLX: instrucciones de enteros.

El Diseño de un Lenguaje Máquina

Bus de direcciones. Bus de datos

Tipo de datos. Montse Bóo Cepeda. Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain.

Arquitectura de Computadores

Ejercicios del tema 4. El procesador

Elementos constituyentes de la ejecución de un programa

Sistemas con Microprocesadores I

TIPOS DE DIRECCIONAMIENTO POSIBLES

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2

La Unidad de Control y el Camino de Datos

ARQUITECTURA SPARC: MODOS DE DIRECCIONAMIENTO

Diseño del procesador MIPS R2000

5 Lenguaje de Máquina

Formato de instrucciones

Lenguajes de Interfaz

Ejercicios para el 3er parcial

ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN

Diseño de la ruta de datos multiciclo. Procesador Multiciclo. Diseño de la ruta de datos multiciclo. Diseño de la ruta de datos multiciclo

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

Transcripción:

Universidad Autónoma de San Luis Potosí Facultad de Ciencias Departamento de Electrónica Unidad 3 Instrucciones: Lenguaje de la Computadora Dra. Ruth M. Aguilar Ponce Primavera Unidad 3 Operaciones del Hardware de la computadora Números con signo y sin signo Representando instrucciones en la computadora Operaciones Lógicas Instrucciones de toma de decisiones Suportando procedimientos en el hardware Modos de direccionamiento Introducción Instrucciones son los comandos al hardware de la computadora El conjunto de instrucciones es el vocabulario de comandos entendidos en una arquitectura El conjunto de instrucciones explota el concepto de programa-almacenado creado por Von Neumann La idea central es que tanto instrucciones como datos sean almacenados en memoria 3 Introducción El conjunto de instrucciones es uno de los aspectos de diseño mas importante de la computadora Su importancia radica en que afecta directamente el desempeño de la maquina debido a que afecta tanto al número de instrucciones por programa y a la cantidad de ciclos por instrucción ISA es el medio por el cual el programador controla la computadora 4 Fundamentos de diseño Fundamentos de diseño Repertorio de Operaciones: Cuantas y cuales operaciones serán proporcionadas, y que tan complejas las operaciones pueden ser Tipos de Datos: Los diferentes tipos de datos sobre los cuales se realizarán las operaciones Formato de las instrucciones: Longitud (en bits), número de direcciones, tamaño de los diversos campos, etc. Registros: Numero de registros de CPU que pueden ser referenciados por instrucciones y su uso Direccionamiento El modo o modos por los cuales las direcciones de un operando son especificadas 5 6

Repertorio de Operaciones Fundamentos de diseño Tipos de Datos Números de Punto fijo Formato de las instrucciones Variable Registros Tamaño (wordlength) Direccionamiento Directo Complex Instruction Set Computer La estrategia de diseño detrás del conjunto de instrucciones se basa en: Simplificar compiladores Usando instrucciones casi equivalentes a las instrucciones de alto nivel Mejorar el desempeño por medio de decrementar el número de instrucciones RISC Números de Punto Flotante Fijo Numero de registros Indirecto 7 La estrategia de diseño es proveer una plataforma para el buen funcionamiento de los lenguajes de alto nivel 8 Teniendo instrucciones complejas reduce el tamaño del programa Programas pequeños toman menos memoria por lo tanto ahorran este recurso. Si los programas son pequeños entonces deberían mejorar el desempeño Programas pequeños implican menos instrucciones que leer Menos instrucciones reducirá el tiempo de ejecución del programa 9 En muchos casos el programa, expresado en lenguaje de maquina simbólico es mas corto, sin embargo, el numero de bits de memoria no es notablemente mas pequeño. C Programs C Programs 5 C Programs RISC... VAX-/78.8.67 M68.9.9 Z8.. PDP-/7.9.7 Las razones por la cual el ahorro es insignificante son las siguientes: El conjunto de instrucciones es muy grande, por lo cual la forma de identificar cada instrucción (opcode) contiene un número mayor de bits Los compiladores favorecen el uso de instrucciones sencillas, por lo cual las instrucciones complejas son muy raramente usadas favorece el direccionamiento a memoria, lo cual requiere mas bits que el direccionamiento a registros El tiempo de ejecución tampoco se ve reducido por medio de un programa mas pequeño debido a que: Para soportar instrucciones complejas, la unidad de control requiere de una complejidad mayor. Esta complejidad afecta el tiempo de ejecución por instrucción Debido a que las instrucciones simples son favorecidas sobre las complejas, tenemos muchas instrucciones que tienen un tiempo de ejecución mayor debido a factores ajenos a ellas.

Reduced Instruction Set Computer Las características generales de las arquitecturas RISC son: Operaciones registro-a-registro La mayor parte de las instrucciones realizan las operaciones entre registros. Solo un par de instrucciones hacen acceso a memoria Modos de direccionamiento simple El conjunto de instrucciones realiza direccionamiento simple entre registros y algunos muy limitados a memoria. Direccionamiento mas complejos pueden ser construidos en base a estos 3 Características de RISC Formato de instrucciones simples Generalmente, pocos formatos de instrucciones son usados La longitud de las instrucciones es fija y alineada al los limites de la longitud de palabra Locación de campos es fija, especialmente el campo que identifica las instrucciones CPI bajos Instrucciones simples con formatos simples hacen que sea fácil realizar mas instrucciones en menos ciclos de reloj 4 Ventajas de RISC vs RISC El diseño efectivos de compiladores mas optimizados puede realizarse en base a instrucciones simples La mayoría de las instrucciones generadas por el compilador son simples, por lo tanto una unidad de control específicamente optimizada para instrucciones simples será mas rápida y la ejecución de tales instrucciones será mas rápida. Técnicas avanzadas tales como pipeling puede ser mas eficientemente empleada en este tipo de arquitectura. Esta arquitectura responde mejor a las interrupciones debido a su bajo CPI 5 Énfasis en Hardware Incluye instrucciones complejas multi-ciclo Las instrucciones incluyen almacenamiento y obtención de operandos desde la memoria Tamaño de código pequeño Unidad de control compleja RISC Énfasis en Software Instrucciones reducidas a un solo ciclo Las operaciones de almacenamiento y obtención de datos desde la memoria son independientes Tamaño de código relativamente mas grande Unidad de control optimizada para instrucciones simples 6 Principios de diseño Operaciones del Hardware de la Computadora Simplicidad favorece regularidad Lo pequeño es mas rápido Operaciones mas comunes rápidas Buen diseño demanda buenos compromisos El tipo de instrucciones se dividen en las siguientes clases: Aritmética Lógicas Transferencia de Datos Toma de decisiones Saltos incondicionales 7 8 3

Dirección 5// Operaciones del Hardware de la Computadora La primera clase de operaciones que se deben incluir en un conjunto de instrucciones son las operaciones aritméticas Primer principio de diseño Simplicidad favorece regularidad Operandos del Hardware de la Computadora Los operandos deben ser seleccionados de un pequeño conjunto de locaciones especiales llamadas registros El tamaño de los registros es de 3-bits para la arquitectura MIPS Todas la operaciones aritméticas requieren de tres operandos. 9 Palabra es la unidad natural de acceso en la computadora. Para la arquitectura MIPS la palabra es de 3-bits Operandos Operandos en Memoria Los operandos, generalmente tres para las operaciones aritméticas deben ser seleccionados del conjunto de registros. Los lenguajes de programación de alto nivel cuentan con estructuras de datos tales como arreglos. Segundo Principio de Diseño: Pequeño es mas rápido Los registros solo pueden mantener hasta 3 datos representados en 3 bits En el caso de la arquitectura MIPS, el número de registros con el que cuenta es 3. Por lo tanto, estructuras mas complejas deben ser guardadas en memoria. Instrucciones de Transferencia de datos Memoria Las operaciones aritméticas solo pueden realizar operaciones entre registros Por lo cual, el conjunto de instrucciones debe contar con instrucciones de transferencia de datos Para acceder a una palabra en la memoria, la instrucción debe contener la dirección Memoria es un gran arreglo unidimensional, donde la dirección actúa como el índice del arreglo. La instrucción de transferencia de datos que copia datos de la memoria hacia los registros es llamada LOAD Procesador 3 Memoria Datos 3 4 4

Transferencia de Datos (LOAD) El formato de esta instrucción es el nombre de la operación, seguido por el registro donde se guardara la información y la constante y el registro usado para accesar la memoria. LW $t, 8($s3) Transferencia de datos (STORE) La instrucción de transferencia de datos que transfiere un dato de un registro hacia una locación de memoria es llamada STORE STORE es la instrucción complementaria a LOAD y comparten el mismo formato LW Load Word SW $t, 3($s3) 5 6 Operandos Constantes o Inmediatos Muchas operaciones requieren de constantes Si el conjunto de instrucciones no ofrece la posibilidad de operar constantes, estas tendrían que ser almacenadas en memoria y posteriormente transferidas a algún registro. Por lo cual, el conjunto de instrucciones ofrece versiones de las instrucciones donde algún operando es constante. 7 Operandos inmediatos Tercer Principio de Diseño Realiza el caso común rápido Introduce operaciones aritméticas que permitan constante, estas son llamadas operaciones inmediatas. Ejemplo add immediate addi $s3, $s3, 4 8 Operandos Inmediatos Operandos constantes son muy comunes, incluyéndolos en el conjunto de instrucciones logramos instrucciones mas rápidas y que usan menos energía que si las constantes estuvieran en memoria y se transferirán a un registro. La constante cero tiene un rol importante, nos permite mover datos de registro a registro por medio de sumar con la constante cero. Representación de Números en Base Los números son representados en base Cada digito de un número binario es llamado bit El valor de cada bit es o Los números sin signo son representados de la siguiente manera: Y 3 3 3 3 9 3 5

Número sin Signo Números sin signo Ejemplo: El número binario es la representación de: 3 8 4 8 3 3 9 8 7 6 5 4 3 9 8 7 6 5 4 3 9 8 7 6 5 4 3 MSB Bit Mas Significativo LSB Bit Menos Significativo Palabras de 3-bits pueden representar 3 diferentes patrones, por lo cual estas combinaciones representan los números de a 3 - = = = 49496794 3 = 49496795 3 Números con Signo La mayor parte de las aplicaciones requieren de números tanto positivos como negativos La solución mas obvia es adicionar una representación separada para el signo. Esta representación es conocida como signo y magnitud Sin embargo esta representación no es apropiada para su implementación en hardware 33 Números con Signo La representación que es fácilmente implementada en hardware es el Complemento a s El complemento a s se obtiene de x x x x x 3 3 3 3 34 Número con Signo Número con signo Ejemplo: obtener la representación de - La representación en complemento a s se realiza invirtiendo todos los bits y sumando uno 35 Extensión de Signo En ocasiones se requiere operar con números de diferentes longitudes Por ejemplo: se desea sumar un número de 6 bits con un número de 8 bits. Para operarlos se requiere realizar la extensión de signo del operando mas pequeño Ejemplo: 36 6

Ejercicio Cual es el valor decimal de los siguientes número en complemento a s Cual es el valor decimal de los mismos números en la representación sin signo? 655 4 37 Representando instrucciones en la Computadora Las instrucciones están compuestas por diferentes campos. Cada campo es representado con un número binario Al poner juntos todos los campos obtenemos la representación final de la instrucción en binario. Los registros son referidos por casi todas las instrucciones, por lo cual debemos encontrar una manera de representar los registros por números binarios 38 Representación de Registros Representando Instrucciones Nombre Número Uso $zero El valor constante cero $at Ensamblador temporal $v - $v 3 Valores regresados por funciones $a - $a3 4 7 Argumentos $t - $t7 8 5 Temporales $s - $s7 6 3 Temporales Salvados $t8 - $t9 4 5 Temporales $k - $k 6 7 Reservado para el sistema operativo $gp 8 Apuntador Global $sp 9 Apuntador al Stack $fp 3 Apuntador al Cuadro $ra 3 Dirección de Regreso 39 El conformación de la instrucción es llamado Formato de Instrucción. En la arquitectura MIPS tanto los números como las instrucciones son representadas por patrones binarios de 3-bits Cada instrucción en formato binario conforma el lenguaje de máquina y la secuencia de instrucciones binarias es conocida como Código de Maquina 4 Representando instrucciones Instrucciones en formato R Cuarto Principio de Diseño: Buen diseño demanda buenos compromisos El compromiso es mantener todas las instrucciones del mismo largo. Por lo tanto requerimos diferentes formatos para acomodar los diferentes operandos de las instrucciones. Formato R (Register-type) Formato I (Immediate-type) Formato J (Jump-type) 4 OPCODE RS RT RD SHAMT FUNCTION 6 bits 5 bits 5 bits 5 bits 5 bits 6 bits Selecciona la operación especifica a realizar. Cantidad de Corrimiento Indica el registro destino, donde el resultado será almacenado Indica el segundo operando fuente Indica el primer operando fuente de la instrucción Este campo denota la operación y formato de la instrucción 4 7

Representado instrucciones Instrucciones Aritméticas (R-type) Para evitar cometer errores en el manejo de las instrucciones en binario, usaremos su representación en hexadecimal Ejemplo: ECA8 64 43 add Reg Reg reg 3 sub reg reg Reg 34 A = b + c + d + e; t t t3 t4 t5 6-bits 5-bits 5-bits 5-bits 5-bits 6-bits add $t,$t,$t3 add $t,$t,$t4 add $t,$t,$t5 add $t,$t,$t3 add $t,$t,$t4 add $t,$t,$t5 44 Representando Instrucciones Ejercicio add $t,$t,$t3 add $t,$t,$t4 add $t,$t,$t5 add $t,$t,$t3 A B 9 add $t,$t,$t4 9 C 9 add $t,$t,$t5 9 D 9 Que instrucción de MIPS es representada por el siguiente patrón en base OPCODE RS RT RD SHAMT FUNCT 9 34 add $t,$t,$t3 9 3 add $t,$t,$t4 9 9 3 add $t,$t,$t5 9 3 9 3 45 46 Operaciones Lógicas Corrimiento Operación Lógica Operador en C Operador en Java Instrucción MIPS Shift Izquierdo << << SLL Shift Derecho >> >>> SRL AND & & AND, ANDI OR I I OR, ORI NOT ~ ~ NOR Las operaciones de corrimiento (shift) mueven bits hacia la izquierda o derecha, rellenando los espacios vacios con cero. Ejemplo: Corrimiento izquierdo de 4 bits 9 = = 44 Corrimiento derecho de 4 bits 44 = = 9 47 48 8

AND, OR NOT Las funciones AND y OR se aplican bit a bit Ejemplo: AND A B AND OR A B OR 49 La operación NOT requiere de un solo operando Si el operando es regresa un, o viceversa Sin embargo, para continuar con la regularidad de las instrucciones con 3 operandos, esta operación no fue incluida, en su lugar implementaron la instrucción NOR Si uno de los operandos es, entonces: A B A A 5 Operaciones Lógicas Ejercicio SLL $t,$t,const t t Const SRL $t,$t,cons t t const AND $t,$t,$t3 t t3 t 36 OR $t,$t,$t3 t t3 t 37 NOR $t,$t,$t3 t t3 t 39 6-bits 5-bits 5-bits 5-bits 5-bits 6-bits Que instrucción de MIPS son representada por los siguiente patrones en base OPCODE RS RT RD SHAMT FUNCT 9 5 8 9 37 5 5 Formato I Instrucciones en formato I El formato I (Inmediato) se usa para todas las instrucciones que usan una constante. Por ejemplo: La arquitectura MIPS incluye una versión de la suma con una constante: ADDI RegistroDestino, Registro, Constante RegistroDestino = Registro + Constante Estas instrucciones requieren un formato diferente al formato R. 53 OPCODE RS RT Dirección/Numero Inmediato 6 bits 5 bits 5 bits 6 bits Indica la dirección para algunas instrucciones, en otros casos indica la constante con la que se operara Indica el registro destino Indica el operando fuente de la instrucción Este campo denota la operación y formato de la instrucción 54 9

Instrucciones aritmética y lógicas en formato I Instrucción OPCODE RS RT Dirección/Inmediato ADDI $t,$t,const 8 t t constante ADDIU $t,$t,const 9 t t constante ANDI $t,$t,const t t constante ORI $t,$t,const 3 t t constante LW $t,dir($t) 35 t t dirección SW $t,dir($t) 43 t t dirección 6-bits 5-bits 5-bits 6-bits Instrucciones de Toma de Decisión Branch if equal BEQ registro, registro, L Esta instrucciones significa salta al código etiquetado como L si el valor de registro = registro Branch if not equal BNE registro, registro, L La instrucción indica salta al código etiquetado por L si el valor de registro registro 55 56 Instrucciones IF-THEN-ELSE Estructuras IF-THEN-ELSE Las estructuras IF-THEN- ELSE son implementadas usando las instrucciones anteriores Ejemplo i j i == j? i = j f = g + h; f = g - h; IF (i == j) f = g + h; ELSE f = g h; i j i == j? i = j f = g + h; f = g - h; IF (i == j) f = g + h; ELSE f = g h; BNE $S3, $S4, ELSE ADD $S, $S, $S J EXIT ELSE: SUB $S, $S, $S BEQ $S3, $S4, IF SUB $S, $S, $S J EXIT IF: ADD $S, $S, $S 57 58 Instrucciones de Comparación Ciclo FOR Set on Less Than SLT RegistroDestino,Registro,Registro Registro Destino Registro Registro Deotra manera Set on Less Than Immediate SLTI RegistroDestino, Registo, Constante Registro Destino Registro Constante Deotra manera 59 Las estructuras de ciclos se realizan usando las instrucciones BEQ, BNE SLT, SLTI Ejemplo FOR(i = ; i < NUM; i++) j = j + ; Inicializar contador i = ; i < NUM? Ejecuta las instrucciones internas del ciclo j = j+; Incrementa el contador i = i+; 6

Ciclo FOR Ejercicio Inicializar contador i = ; i < NUM? Ejecuta las instrucciones internas del ciclo j = j+; Incrementa el contador i = i+; ADD $t, $zero, $zero FOR: SLT $t, $t, $s $t i $t j $s NUM BEQ $t,$zero,exit ADDI $t,$t, ADDI $t,$t, J FOR Implemente el ciclo FOR usando BNE Inicializar contador i = ; i < NUM? Ejecuta las instrucciones internas del ciclo j = j+; Incrementa el contador i = i+; $t i $t j $s NUM ADD $t, $zero, $zero FOR: SLT $t, $t, $s BEQ $t,$zero,exit ADDI $t,$t, ADDI $t,$t, J FOR 6 6 Ciclos WHILE Ejercicio Ejemplo: While ( A < NUM) A ++; $t A $s NUM Implemente el siguiente ciclo while While ( A < ) { A < NUM? Ejecuta las instrucciones internas del ciclo A = A+; WHILE: SLT $t, $t, $s BEQ $t,$zero,exit ADDI $t,$t, J WHILE B = B +A; A = A +; } 63 64 Solución Formato de las Instrucciones de toma de decisión Implemente el siguiente ciclo while A $t While ( A < ) { B = B +A; A = A +; } B $t WHILE: SLT $t, $t, $zero BEQ ADD $t,$zero,exit $t,$t,$t ADDI $t,$t, J WHILE Instrucción OPCODE RS RT Dirección/Inmediato BEQ $t,$t,l 4 t t Dirección de L BNE $t,$t,l 5 t t Dirección de L SLTI $t,$t,const t t constante SLTIU $t,$t,const t t constante 6-bits 5-bits 5-bits 6-bits SLT $t,$t,$t3 t t3 t 4 SLTU $t,$t,$t3 t t3 t 43 ADDU $t,$t,$t3 t t3 t 33 SUBU $t,$t,$t3 t t3 t 35 6-bits 5-bits 5-bits 5-bits 5-bits 6-bits 65 66