Unidad 3. Facultad de Ciencias Departamento de Electrónica
|
|
- José María Gil Ortega
- hace 5 años
- Vistas:
Transcripción
1 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
2 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-/ M 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.
3 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
4 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
5 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
6 Número sin Signo Números sin signo Ejemplo: El número binario es la representación de: 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 - = = = = 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 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
7 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? 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
8 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: ECA 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,$t add $t,$t,$t 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 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 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
10 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 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 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
11 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 +; } 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
El repertorio de instrucciones
El repertorio de instrucciones Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización
Más detallesPlataformas de soporte computacional: arquitecturas avanzadas,
Plataformas de soporte computacional: arquitecturas avanzadas, sesión Diego R. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice. Arquitectura
Más detallesEstructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS
Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS GAC: Grupo de Arquitectura de Computadores Dpt. Electrónica e Sistemas. Universidade da Coruña. Bibliografía Computer Organization
Más detalles3. Instrucciones: lenguaje de la máquina
3. Instrucciones: lenguaje de la máquina Fundamentos de Computadores Ingeniería de Telecomunicación Raúl Durán Díaz Departamento de Automática Escuela Politécnica Superior Curso académico 2009 2010 Raúl
Más detallesNúmeros con y sin signo Suma y resta Operaciones Lógicas Construyendo una ALU Multiplicación División Punto Flotante
/3/22 rquitectura de Computadoras Primavera 22 Números con sin signo Suma resta Operaciones Lógicas Construendo una LU Multiplicación División Punto Flotante 2 Los números son representados en base 2 Cada
Más detallesProcesador MIPS - Registros
MIPS Microprocessor without Interlocked Pipeline Stages Surgió a comienzos de los 80 en Stanford. Sintetiza las principales ideas de RISC. Arquitectura eficiente y simple. 1 Procesador MIPS - Registros
Más detallesUNIDAD 2: Instrucciones: el lenguaje de las computadoras.
UNIDAD 2: Instrucciones: el lenguaje de las computadoras. 2.1 Introducción Para comandar una computadora se le debe hablar en su lenguaje. Las palabras del lenguaje de una máquina son llamadas instrucciones,
Más detallesArquitectura del MIPS: Introducción
Arquitectura del MIPS: Introducción Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización
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 detallesOrganización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy
Organización del Computador I Verano MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Arquitectura MIPS (R2000) Registros Formato de Instrucción
Más detallesFundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo)
8. Diseño del Procesador Fundamentos de los Computadores Grado en Ingeniería Informática (hasta final del diseño monociclo) Objetivos Plantear y modificar una ruta de datos para un repertorio de instrucciones
Más detallesOrganización de Computadoras. Principios de Conjuntos de Intrucciones
Organización de Computadoras Principios de Conjuntos de Intrucciones Clasifición de las ISA Secuencia de Código para C = A + B Stack Acumulador Registro (Reg-Mem) Registro (load-store) Push A Load A Load
Más detallesLa Unidad Aritmética
Prof. Rodrigo Araya E. raraya@inf.utfsm.cl Universidad Técnica Federico Santa María Departamento de Informática Valparaíso, 1 er Semestre 2006 1 2 3 4 5 En este capítulo profundizaremos la aritmética computacional
Más detalles16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012
/4/22 Introducción rquitectura de Computadoras Primavera 22 Construyendo el path Esquema de implementación Simple Unidad de Control 2 Los elementos básicos de un sistema de computo son: Nos centraremos
Más detallesOrganización procesador MIPS
Organización procesador MIPS Organización MIPS Memoria CPU Registros FPU Registros Alu Mul Div Hi Lo U. Aritmética Traps Manejo de Memoria Organización MIPS Unidad Aritmética y Lógica (ALU). Unidad Aritmética
Más detallesTema 3 (III) Fundamentos de la programación en ensamblador
Tema 3 (III) Fundamentos de la programación en ensamblador Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenidos } Fundamentos básicos de la
Más detallesSección de procesamiento: El camino de datos
Sección de procesamiento: El camino de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución
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 detallesEl procesador. Diseño del control
El procesador Diseño del control Datapath MIPS simple Universidad de Sonora Arquitectura de Computadoras 2 MIPS simple El datapath anterior cubre instrucciones: Aritméticas-lógicas: add, sub, and, or y
Más detallesArquitectura de Computadoras I Ingeniería de Sistemas Curso 2017
Arquitectura de Computadoras I Ingeniería de Sistemas Curso 217 Práctica de Laboratorio: Microprocesador MIPS Segmentado El objetivo de esta práctica es implementar el microprocesador MIPS (visto en clase
Más detallesFundamentos de los Computadores Grado en Ingeniería Informática
Repaso Arquitectura MIPS Fundamentos de los Computadores Grado en Ingeniería Informática Arquitectura MIPS Registros Instrucciones Organización de memoria Formato de las instrucciones Modos de direccionamiento
Más detallesGUIA 24: REPERTORIO DE INSTRUCCIONES
Prof Sandro Costantini GUIA 24: INSTRUCCIONES Las instrucciones maquinas son las acciones elementales que puede ejecutar un computador Una acción compleja deberá codificarse como una secuencia de instrucciones
Más detallesModelo de von Neumann
Conceptos básicos Modelo de von Neumann También conocida como arquitectura de Princeton. Propuesta por John von Neumann en 1945. Partes de una computadora digital: Unidad de procesamiento (CPU unidad central
Más detallesINTRUCCIONES: LENGUAJE MAQUINA
INTRUCCIONES: LENGUAJE MAQUINA 1.- INTRODUCCION Conceptos importantes Instrucción: Orden al hardware del Computador Repertorio de Instrucciones Lenguaje Máquina (ML) Lenguaje Ensamblador (AL) Lenguaje
Más detallesEjercicios 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 detallesUnidad 5 Unidad central de proceso
Unidad 5 Unidad central de proceso Objetivo El objetivo de esta unidad es que el alumno logre: entender el funcionamiento básico de la Unidad Central de Proceso (UCP), definir las componentes básicas de
Más detallesArquitectura 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 detallesEstructuras de Computadores I Tarea 02 02/99
Estructuras de Computadores I Tarea 02 02/99 1. Dada la secuencia de bits: 0011 0100 0101 0101 0100 0011 0100 0010 Qué representa, asumiendo que es: a. Un número entero en complemento dos. b. Fracción
Más detallesEjercicios 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 detallesESTRUCTURA 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 detallesArquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3. Departamento de Ingeniería de Sistemas Universidad de Antioquia 2011 2
Arquitectura de Computadores y laboratorio Clase 15: Arquitectura MIPS Pt.3 Departamento de Ingeniería de Sistemas Universidad de Antioquia 2011 2 Instrucciones de control de flujo Arquitectura de Computadores
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 detallesUnidad Nº II Capacidad de la unidad central. de procesamiento. Instituto Universitario Politécnico. Santiago Mariño
Instituto Universitario Politécnico Santiago Mariño Unidad Nº II Capacidad de la unidad central de procesamiento Organización de instrucción de máquina Cada instrucción requiere la información que necesita
Más detallesUNIDAD I CONCEPTOS GENERALES. Conceptos Generales Microprocesadores Otoño 2011
1 UNIDAD I CONCEPTOS GENERALES Fall 2011 Conceptos Generales Microprocesadores Otoño 2011 Contenido 2 Introducción Arquitectura generalizada de una computadora Componentes de una computadora Conjunto de
Más detallesEl procesador. Datapath y control
El procesador Datapath y control Introducción En esta parte del curso contiene: Las principales técnicas usadas en el diseño de un procesador. La construcción del datapath y del control. Estudiaremos la
Más detallesArquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA
Arquitecturas RISC Características de las arquitecturas RISC Juego de instrucciones reducido (sólo las esenciales) Acceso a memoria limitado a instrucciones de carga/almacenamiento Muchos registros de
Más detallesOrganización de Computadoras. Clase 7
Organización de Computadoras Clase 7 Temas de Clase Formatos de instrucción Modos de direccionamiento Notas de Clase 7 2 Elementos de una instrucción de máquina Código de operación especifica la operación
Más detallesAsignatura de Organización de Computadoras. Alberto Hernández Cerezo. Cristian Tejedor García. Rodrigo Alonso Iglesias. Universidad de Valladolid
Asignatura de Organización de Computadoras ARQUITECTURA MIPS SEGUNDO TRABAJO Alberto Hernández Cerezo Cristian Tejedor García Rodrigo Alonso Iglesias Universidad de Valladolid Segundo de Ingeniería Técnica
Más detallesALU. Unidad aritmético-lógica
ALU Unidad aritmético-lógica Definición La ALU (unidad aritmético-lógica) es el dispositivo que se encarga de realizar: a) Operaciones aritméticas (suma, resta, etc.). b) Operaciones lógicas (and, or,
Más detallesRepaso concepto de programa
Repaso concepto de programa ANTES se tenían sistemas cableados Datos Secuencia de funciones aritmético/lógicas Resultados Programación en hardware: cuando cambiamos las tareas, debemos cambiar el hardware
Más detallesTEMA 4 ESTRUCTURA VON-NEUMANN DEL COMPUTADOR DIGITAL
TEMA 4 ESTRUCTURA VON-NEUMANN DEL COMPUTADOR DIGITAL 1. ESTRUCTURA GENERAL DE UN COMPUTADOR VON-NEUMANN. Unidad de memoria (UM) Unidad Aritmético Lógica (UAL) Unidad de control (UC) Buses. Unidades de
Más detallesFundamentos y Arquitectura de Computadores (ITTSE UV)
Fundamentos y Arquitectura de Computadores (ITTSE UV) F. Micó REGISTROS DEL MIPS R2000/R3000 Nombre Código del Uso registro $zero 0 Valor constante 0 $v0 - $v1 2 3 Valores de retorno para las llamadas
Más detallesArquitectura 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 detallesFundamentos y Arquitectura de Computadores (ITTSE UV)
REGISTROS DEL MIPS32 Nombre Código del Uso común registro $zero 0 El contenido de este registro siempre es nulo $v0 - $v1 2 3 Valores de retorno para las llamadas al sistema $a0 - $a3 4 7 Argumentos para
Más detalles8. Diseño de la codificación binaria del repertorio de Instrucciones.
8. Diseño de la codificación binaria del repertorio de Instrucciones. Se desea elegir los códigos binarios de las instrucciones. Esta parte, en forma indirecta especifica lo que debe realizar un programa
Más detallesEjercicios 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 detallesArquitectura 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 detallesArquitectura 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 detallesPr. Dr. Xavier Bonnaire
Pr. Dr. Xavier Bonnaire Slide 1 Pr. Dr. Xavier Bonnaire - Universidad Tecnica Federico Santa María Temario Introducción Estructura Básica de un Computador Lenguaje de Máquina Básico Instrucciones para
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 detallesPipelining. Introducción
Pipelining Introducción Definición Técnica de implementación. Consiste en ejecutar traslapadas varias instrucciones al mismo tiempo. Universidad de Sonora Arquitectura de Computadoras 2 Ejemplo Pasos para
Más detallesMIPS. Universidad de Sonora 2
MIPS MIPS (Microprocessor without Interlocked Pipeline Stages) es una familia de microprocesadores RISC desarrollada por MIPS Technologies desde 1981 y por Imagination Technologies desde 2012. Principio
Más detallesEl Conjunto de Instrucciones de la Arquitectura Lagarto I
Sistema de numeración maya (base 20), se considera el primer sistema numérico que uso el cero. El Conjunto de Instrucciones de la Arquitectura Lagarto I i Resumen El conjunto de instrucciones de la arquitectura
Más detallesINSTRUCCIONES: EL LENGUAJE DEL PROCESADOR
INSTRUCCIONES: EL LENGUAJE DEL PROCESADOR ARQUITECTURA DEL PROCESADOR II La tecnología de las computadoras modernas, requiere que los profesionales de las distintas especialidades en ciencias de la computación,
Más detallesTema 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 detallesTema 6: Descripción del ISA del MIPS
Arquitectura de Computadores Tema 6: Descripción del ISA del MIPS Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom Arquitectura de Computadoras UNT D. Cohen 1 2014 Temario
Más detallesGeneración de un ejecutable
ASSEMBLER Generación de un ejecutable Programa de alto nivel Programa Compiler Assembler Linker Archivo Ejecutable Programa en lenguaje assembler Archivo Fuente Assembler Archivo Objeto Archivo Fuente
Más detallesESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES
Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: implementación uniciclo Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción. 2. Construcción
Más detallesTema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.
Tema 2: Arquitectura del repertorio de instrucciones Visión del computador que tiene el programador en bajo nivel. Lo que el programador en lenguaje ensamblador debe conocer para escribir programas: (1)
Más detallesUNIVERSIDAD DE CORDOBA ESTRUCTURA DE COMPUTADORAS UNIDAD III
ARITMETICA PARA COMPUTADORAS 1.- INTRODUCCION Objetivo Estudio de uno de los Componentes Clásicos de una Computadora Unidad Aritmético Lógica (ALU) Partes a estudiar Representación de los números negativos
Más detallesEl procesador: camino de datos y. IEC UTM Moisés E. Ramírez G. control
El procesador: camino de datos y IEC UTM Moisés E. Ramírez G. control 1 Introducción Se diseñará una implementación que incluya las instrucciones más importantes. Instrucciones de acceso a memoria: lw,
Más detallesFUNCIONAMIENTO DE LA UNIDAD DE CONTROL DEL PROCESADOR
MICROINSTRUCCIONES FUNCIONAMIENTO DE LA UNIDAD DE CONTROL DEL PROCESADOR La memoria de las maquinas IAS consiste en 1000 posiciones de almacenamiento, llamadas palabras, de 40 digitos binarios (bits) cada
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 detallesTEMA VI DISEÑO DEL PROCESADOR
TEMA VI DISEÑO DEL PROCESADOR Diseño del procesador 6.1 Repertorio de instrucciones 6.1.1 Procesadores de tres direcciones 6.1.2 Procesadores de dos direcciones 6.1.3 Procesadores de una dirección (procesadores
Más detalles22/03/2012. La división es una de las operaciones menos frecuentes. Revisemos la forma de ejecutarla
Arquitectura de Computadoras Primavera 2012 La división es una de las operaciones menos frecuentes. Revisemos la forma de ejecutarla 1 0 0 1 Cociente Divisor 1 0 0 0 1 0 0 1 0 1 0 Dividendo - 1 0 0 0 1
Más detallesOrganización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017
Organización del Computador 1 CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017 Estructura de una máquina von Neumann Ciclo de Ejecución 1. 2. 3. 4. 5. 6. UC obtiene la próxima instrucción de
Más detallesEl procesador. Datapath para las instrucciones de brinco
El procesador Datapath para las instrucciones de brinco Instrucciones de brinco Dos tipos de instrucciones de brincos: 1. Brinco condicional. beq $t0, $t1, Etiqueta ; if t0 == t1 goto Etiqueta 2. Brinco
Más detallesISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones
ISA (Instruction Set Architecture) Arquitectura del conjunto de instrucciones Instruction Set Architecture (ISA) Arquitectura del conjunto de instrucciones software Conjunto de instrucciones hardware Universidad
Más detallesTema 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 detallesFUNDAMENTOS 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 detallesArquitectura de Computadoras
Arquitectura de Computadoras Dr. Andrés David García García Escuela de Diseño, Ingeniería y Arquitectura Departamento de Mecatrónica 1 Microprocesadores y Periféricos Objetivos: Analizar la arquitectura
Más detallesPrá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 detallesProcesadores 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 detallesConvenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:
Unidades principales en la implementación Data El procesador: camino de datos y control IEC UTM Moisés E. Ramírez G. 1 Register # PC Address Instruction Instruction Registers Register # ALU memory Register
Más detallesUnidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Más detallesUnidad IV: Programación de microcontroladores
Unidad IV: Programación de microcontroladores El microcontrolador ejecuta el programa cargado en la memoria Flash. Esto se denomina el código ejecutable y está compuesto por una serie de ceros y unos,
Más detallesCurso sobre Microcontroladores Familia HC9S08 de Freescale
Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Responsable Area Educación ELKO / ARROW www.elkonet.com
Más detallesIntroducción al lenguaje ensamblador DLX: instrucciones de enteros.
PRÁCTICA 0.a Introducción al lenguaje ensamblador DLX: instrucciones de enteros. OBJETIVO El objetivo de esta práctica es la familiarización con el lenguaje ensamblador DLX, analizando la ejecución de
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 detallesBus 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 detallesTipo de datos. Montse Bóo Cepeda. Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain.
Tipo de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización de los computadores.
Más detallesArquitectura de Computadores
Arquitectura de Computadores Ricardo.Sanz@upm.es Curso 2004-2005 Arquitectura de Computadores Arquitectura de computadores es la disciplina que estudia la organización y funcionamiento de los computadores
Más detallesEjercicios del tema 4. El procesador
jercicios del tema 4. l procesador jercicio 1. Considere un procesador de 32 bits con una frecuencia de reloj de 500 MHz con la estructura del mostrado en el jercicio 3. La memoria se direcciona por bytes
Más detallesElementos constituyentes de la ejecución de un programa
Micro-Operaciones En la ejecución de un programa en una computadora, se ejecutan instrucciones, que pueden subdividirse en ciclos: Búsqueda/Ejecución Cada ciclo se compone a su vez de una serie de operaciones
Más detallesSistemas con Microprocesadores I
Sistemas con Microprocesadores I 1 Microcontroladores Introducción Harvard vs. von-neumann Clasificación del procesador Segmentado o Pipeline Ortogonal vs. No ortogonal 2 Microcontroladores PIC Siglas
Más detallesTIPOS DE DIRECCIONAMIENTO POSIBLES
DIRECCIONAMIENTO Y REGISTROS Los modos de direccionamiento de una arquitectura son el conjunto de sintaxis y métodos que usan las instrucciones para especificar una dirección de memoria, ya sea la dirección
Más detallesArquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2
Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2 Departamento de Ingeniería de Sistemas Universidad id d de Antioquia i 2011 2 Unidad de control principal Mediante el
Más detallesLa Unidad de Control y el Camino de Datos
Prof. Rodrigo Araya E. raraya@inf.utfsm.cl Universidad Técnica Federico Santa María Departamento de Informática Valparaíso, 1 er Semestre 2006 1 2 3 Contenido Veremos el diseño completo de un subconjunto
Más detallesARQUITECTURA SPARC: MODOS DE DIRECCIONAMIENTO
ARQUITECTURA SPARC: MODOS DE DIRECCIONAMIENTO De Diego Varona, Rubén Romay López, Oscar Manuel Vega Martínez, Jorge QUE SON LOS MODOS DE DIRECCIONAMIENTO Los llamados modos de direccionamiento son las
Más detallesDiseño del procesador MIPS R2000
Diseño del procesador MIPS R2000 Aula Virtual IS09 Sergio Barrachina Mir Área de Arquitectura y Tecnología de Computadores Dpt. de Ingeniería y Ciencia de los Computadores Universidad Jaume I Índice 1.
Más detalles5 Lenguaje de Máquina
5 Lenguaje de Máquina Ya visto el detalle de la organización de la CPU y el nivel de microprogramación, en este punto veremos las consideraciones del nivel de lenguaje de máquina. Este conjunto de instrucciones
Más detallesFormato de instrucciones
Formato de instrucciones Material Elaborado por el Profesor Ricardo González A partir de Materiales de las Profesoras Angela Di Serio María Blanca Ibañez Elementos de una instrucción de máquina add rd
Más detallesLenguajes 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 detallesEjercicios para el 3er parcial
Problema 1: Representar la ejecución de las siguientes instrucciones: Add $2, $5, $4 Add $4, $2, $5 Lw $5, 100($2) Add $3, $5, $4 Beq $8, $8, s1 And $1, $2, $3 OR $4, $5, $6 s1: Sub $7, $8, $9 Ejercicios
Más detallesARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN
ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN De Diego Varona, Rubén Romay López, Oscar Manuel Vega Martínez, Jorge INTRODUCCIÓN La representación de la instrucción en la computadora se denomina formato.
Más detallesDiseñ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
lw sw mem. instrución banco reg. mu LU mem. dato mu Camino crítico mem. instrución banco reg. mu LU mem. dato setup beq mem. instrución banco reg. mu LU mu setup R mem. instrución banco reg. mu LU mu setup
Más detallesLos números naturales y enteros en el 80X86 y en LAN
Los números naturales y enteros en el 80X86 y en LAN 1. Los números naturales en el 80X86/TASM Representación Sistema de representación En el 80X86 (y en la mayoría de los procesadores), los números naturales
Más detalles