Ir al contenido

Diferencia entre revisiones de «Instrucción (informática)»

De Wikipedia, la enciclopedia libre
Contenido eliminado Contenido añadido
DumZiBoT (discusión · contribs.)
m robot Añadido: hu:Utasítás (informatika)
Línea 23: Línea 23:
<li>Comprobación de la [[memoria caché|caché]].</li>
<li>Comprobación de la [[memoria caché|caché]].</li>
<li>Inicio del proceso de lectura/escritura en la memoria.</li></ul></li>
<li>Inicio del proceso de lectura/escritura en la memoria.</li></ul></li>
<li>'''Instrucciones Aritméticas''': pueden implicar transferencia de datos antes y/o después. Realizan operaciones aritméticas de las que se encarga la ALU.</li>
<li>'''Instrucciones Aritméticas''': pueden implicar transferencia de datos antes y/o después. Realizan operaciones aritméticas de las que se encarga la ALU (SUMA, RESTA, MULTIPLICACIÓN, DIVISIÓN, etc).</li>
<li>'''Instrucciones Lógicas''': al igual que las aritméticas, la ALU se encarga de realizar estas operaciones, que en este caso son de tipo lógico.</li>
<li>'''Instrucciones Lógicas''': al igual que las aritméticas, la ALU se encarga de realizar estas operaciones, que en este caso son de tipo lógico(OR,AND,NOT,NOR,NAND,XOR).</li>
<li>'''Instrucciones de Conversión''': similares a las aritméticas y lógicas. Pueden implicar lógica especial para realizar la conversión.</li>
<li>'''Instrucciones de Conversión''': similares a las aritméticas y lógicas. Pueden implicar lógica especial para realizar la conversión.</li>
<li>'''Instrucciones de Transferencia de Control''': actualizan el [[contador de programa]] ('''PC'''). Administran las llamadas/retornos a las [[subrutina|subrutinas]], el paso de [[parámetro|parámetros]] y el [[enlazado]].</li>
<li>'''Instrucciones de Transferencia de Control''': actualizan el [[contador de programa]] ('''PC'''). Administran las llamadas/retornos a las [[subrutina|subrutinas]], el paso de [[parámetro|parámetros]] y el [[enlazado]].</li>

Revisión del 22:11 29 jun 2008

En Informática, se le llama instrucción a un conjunto de datos insertados en una secuencia estructurada o específica que el procesador interpreta y ejecuta.

Los tipos de instrucción permitidos están definidos y determinados dentro de cada plataforma en la Arquitectura del Repertorio de Instrucciones (ARI) (ISA, instruction set architecture), que también determina los registros de origen y destino de la CPU, y en ocasiones un dato inmediato (aquellos que son especificados explícitamente en la instrucción).

Normalmente una instrucción se divide en dos campos:

  • Código de Operación: Designa la operación que va a ser realizada. En lenguaje ensamblador, se asigna a su valor numérico un mnemónico. Por ejemplo, en el MIPS tenemos una instrucción con el código de operación 0224x en lenguaje ensamblador es la operación add.
  • Datos de la Operación: dependiendo del tipo de instrucción, este campo puede estar dividido en otros o ser único, incluso no existir. En el se suelen indicar los registros y datos con los que trabajar.

El tamaño (longitud en bits) de la instrucción depende de cada arquitectura, pudiendo variar de 4 hasta 128 bits.

La instrucción debe almacenarse temporalmente (en el registro de instrucción, RI) para que la CPU analice su contenido y extraiga los datos que la forman. A este paso se le llama decodificación.

Tipos de Instrucciones

  • Instrucciones de Transferencia de Datos: en este tipo de instrucciones, se transfieren datos desde una localización a otra. Los pasos que se siguen para realizarlo son:
    1. Determinación de las direcciones de origen y destino de memoria.
    2. Realización de la transformación de memoria virtual a memoria real.
    3. Comprobación de la caché.
    4. Inicio del proceso de lectura/escritura en la memoria.
  • Instrucciones Aritméticas: pueden implicar transferencia de datos antes y/o después. Realizan operaciones aritméticas de las que se encarga la ALU (SUMA, RESTA, MULTIPLICACIÓN, DIVISIÓN, etc).
  • Instrucciones Lógicas: al igual que las aritméticas, la ALU se encarga de realizar estas operaciones, que en este caso son de tipo lógico(OR,AND,NOT,NOR,NAND,XOR).
  • Instrucciones de Conversión: similares a las aritméticas y lógicas. Pueden implicar lógica especial para realizar la conversión.
  • Instrucciones de Transferencia de Control: actualizan el contador de programa (PC). Administran las llamadas/retornos a las subrutinas, el paso de parámetros y el enlazado.
  • Instrucciones de I/O (entrada/salida): administran los comandos de entrada/salida. Si hay un mapa de memoria de entrada/salida, determina la dirección de este mapa de memoria.