PDF de programación - 3.1.2 Repertorio de instrucciones y formato de la instrucción máquina - Parte III. Diseño del procesador - Módulo 3.1 Lenguaje máquina y ensamblador

Imágen de pdf 3.1.2 Repertorio de instrucciones y formato de la instrucción máquina - Parte III. Diseño del procesador - Módulo 3.1 Lenguaje máquina y ensamblador

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina - Parte III. Diseño del procesador - Módulo 3.1 Lenguaje máquina y ensambladorgráfica de visualizaciones

Publicado el 23 de Noviembre del 2018
664 visualizaciones desde el 23 de Noviembre del 2018
845,0 KB
25 paginas
Creado hace 16a (21/02/2008)
3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

3.1.2 Repertorio de instrucciones y formato de la

instrucción máquina

Parte III. Diseño del procesador

Módulo 3.1 Lenguaje máquina y ensamblador

Ingeniería Técnica en Informática

Facultad de Informática - Universidad Complutense de Madrid

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Índice

1 Repertorio de instrucciones

Clasificación de las instrucciones

2 Aplicaciones del repertorio de instrucciones

Ejecución alternativa
Ejecución iterativa
Subrutinas

3 Formato de la instrucción máquina

Alternativas de diseño
Número de operandos explícitos
Ejemplos

4 Arquitecturas CISC y RISC

Arquitecturas CISC
Arquitecturas RISC
Ejempos

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Clasificación de las instrucciones (1/2)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Clasificación de las instrucciones (2/2)

Transferencia de datos, permiten el movimiento entre distintos
dispositivos de almacenamiento del computador
Aritméticas, permiten realizar operaciones de tipo aritmético
Lógicas y de manipulación de bits, permiten realizar operaciones
lógicas, bit a bit, entre los operandos o manipular un bit del
operando
Desplazamiento y rotación, permiten desplazar o rotar un operando
a la decha. o la izda. un no determinado de bits
Control de flujo, permiten romper la secuencia normal de ejecución

Otras instrucciones

Transformación de datos
Manipulación de direcciones
Creación de marcos de almacenamiento local
Control del sistema
Entrada / Salida

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Transferencia de datos (1/2)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Transferencia de datos (2/2)

Permiten el movimiento entre distintos dispositivos de
almacenamiento del computador (registros, memoria y pila)
Necesario especificar

Tipo de movimiento
Dirección de operandos fuente y destino
Tamaño de datos a mover (byte, palabra, doble palabra, ...)
No de elementos a mover (para movimientos múltiples)

Instrucción
MOVE fnte, dest

Operación
dest ← fnte

LOAD Ri, dir

STORE dir, Ri

PUSH fnte

POP dest

MOVEM fnte, dest, n

Ri ← dir
Ri ← dir
Pila ← fnte
dest ← Pila
dest0 ← fnte0

destn−1 ← fnten−1

Descripción
Transfiere palabra de reg. a reg.,
reg. a mem, mem. a reg o mem. a
mem. (fuente= mem. o reg.; des-
tino = mem. o reg.)
Transfiere palabra de memoria a
registro
Transfiere palabra de registro a
memoria
Transfiere palabra de mem. o reg.
a la cabecera de pila
Transfiere palabra de cabecera de
pila a mem. o reg.
Transfiere n palabras a partir de
una dir. inicial fuente y una dir.
inicial destino

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Instrucciones aritméticas (1/2)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Instrucciones aritméticas (2/2)

Permiten realizar operaciones de tipo aritmético
Necesario especificar

Tipo de operación (suma, resta, multiplicación, división, etc.)
Tipo de operandos y de aritmética (con signo, sin signo, entera,
punto flotante, BCD, ...)
Tamaño de datos sobre los que se opera
Dirección de operandos fuente y destino (0, 1, 2 ó 3, según el
repertorio)

Instrucción
ADD fnt1,fnt2,dest
SUB fnt1,fnt2,dest
MULT fnt1,fnt2,dest
DIV fnt1,fnt2,dest
NEG fnte,dest
ABS fnte,dest
INC fnte,dest
DEC fnte,dest
COMP fnt1,fnt2

Descripción
Suma dos operandos
Resta dos operandos

Operación
dest←fnt1+fnt2
dest←fnt1-fnt2
dest←fnt1×fnt2 Multiplica dos operandos
dest←fnt1/fnt2
dest←-fnte
dest←abs(fnte)
dest←fnte+1
dest←fnte-1
fnt1-fnt2

Divide dos operandos
Cambia de signo al operando
Obtiene el valor absoluto
Suma 1 al operando
Resta 1 al operando
Resta y activa los bits de
estado según resultado

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Instrucciones lógicas y de manipulación de bits (1/2)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Instrucciones lógicas y de manipulación de bits (2/2)

Permiten realizar operaciones lógicas, bit a bit, entre los operandos
o manipular un bit del operando
Necesario especificar

Tipo de operación (AND, OR, NOT, Bit Clear, Bit Set, etc)
Tamaño de datos sobre los que se opera (byte, palabra, doble palabra,
...)
Dirección de operandos fuente y destino (0, 1, 2 ó 3, según el
repertorio)
El número de bit en las instrucciones de manipulación de bit

Instrucción
AND fnt1,fnt2,dest
OR fnt1,fnt2,dest
NOT fnte,dest
XOR fnt1,fnt2,dest
BCLR dest,n
BSET dest,n
BTEST fnte,n

Descripción
Operación
dest←fnt1∧fnt2
Y lógica
dest←fnt1∨fnt2 O lógica
dest← ¬fnte
Negación
dest←fnt1⊕fnt2 O exclusiva
dest(n)←0
dest(n)←1
Estado←fnte(n)

Pone a 0 el bit n
Pone a 1 el bit n
Activa flag según bit n

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Desplazamiento y rotación (1/2)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Desplazamiento y rotación (2/2)

Permiten desplazar o rotar un operando a la decha. o la izda. un no
determinado de bits
Necesario especificar

Tipo de operación (desplazamiento izda. o decha., rotación izda. o
decha., )
Tamaño de datos sobre los que se opera (byte, palabra, doble palabra,
...)
Dirección del operando
No de bits a desplazar o rotar

Instrucción

Operación

LSL fnte,n

LSR fnte,n

ASL fnte,n

ASR fnte,n
RL fnte,n
RR fnte,n

Descripción
Desp. lógico izda. n bits
Desp. lógico dcha. n bits
Desp. aritm. izda. n bits
Desp. aritm. dcha. n bits
Rotación izquierda n bits
Rotación derecha n bits

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Control de flujo (1/4)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Control de flujo (2/4)

Permiten romper la secuencia normal de ejecución y saltar a una
determinada dirección especificada en la instrucción o implícita
Necesario especificar

Dirección de siguiente instrucción a ejecutar si el salto es explícito
Las instrucciones de bifurcación o salto condicional (Bcc), saltan o
no en función de la condición especificada (cc)
Esta condición se calcula a partir de los bits de condición del
registro de estado

Los bits de condición se activan según el resultado de las
instrucciones que se detallan en las siguientes tablas

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Control de flujo (3/4)

Instrucción Operación
JMP dir
Bcc dir

JSR dir

RTS
SKIP n
NOP

PC←dir
if(cc) PC←dir
else PC←PC+longInstr
Pila←(PC,STR)
PC←dir
(PC,STR)←Pila
PC←PC+n×longInstr
PC←PC+longInstr

Descripción
Salta (Jump) a dir
Bifurca (Branch) a dir
si (cc) es cierta
Salto a subrutina
Guarda PC y estado
Retorno subrutina, recupera PC y STR
Salta n instrucciones
No hace nada, siguiente instr.

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Control de flujo (4/4)

cc
EQ

Nombre
Igual (Equal)

NEQ No igual (No equal)

GT

GE

LT

LE

Z
NZ

Mayor que (Greater Than)

Mayor o igual (Gr. or Eq.)

Menor que (Less Than)

Menor o igual (Les.or Eq.)

Cero (Zero)
No cero (No Zero)

Cierta si
En una comparación previa los operandos son
iguales
En una comparación previa los operandos son
distintos
En una comparación previa el primer operan-
do es mayor que el segundo
En una comparación previa el primer operan-
do es mayor o igual que el segundo
En una comparación previa el primer operan-
do es menor que el segundo
En una comparación previa el primer operan-
do es menor o igual que el segundo
El resultado de una operación anterior es cero
El resultado de una operación anterior es dis-
tinto de cero

cc Nombre
Positivo
P

N

C

Negativo

Acarreo (Carry)

NC No acarreo (No Carry)

V

Desbord. (Overflow)

NV No desbord. (No Overfl.)

T
F

Verdad (True)
Falso (False)

Cierta si
El resultado de una operación anterior es po-
sitivo
El resultado de una operación anterior es ne-
gativo
El resultado de una operación anterior ha
producido acareo
El resultado de una operación anterior no ha
producido acareo
El resultado de una operación anterior ha
producido desbordamiento
El resultado de una operación anterior no ha
producido desbordamiento
Siempre cierta
Siempre falsa

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las instrucciones

Otras instrucciones (1/2)

Transformación de datos

Manipulación de direcciones

Cambian el formato de los datos, por ej. de decimal a binario

Permiten calcular la dirección efectiva de un operando y almacenarla
en un registro o en pila

LEA fnt,reg
PEA fnt

(Load effective address: reg ← Dir de fnt)
(Push Effective Address: Pila ← Dir de fnte)

Creación de marcos de almacenamiento local

Permiten reservar espacio en la pila del sistema, p. ej:

LINK reg,#tam
UNLK reg

(Pila←reg, reg←SP, SP←SP+tam)
(SP←reg, reg←Pila)

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Aplicaciones del repertorio de instrucciones

Ejecución alternativa

Ejecución alternativa

3.1.2 Repertorio de instrucciones y formato de la instrucción máquina

Repertorio de instrucciones

Clasificación de las
  • Links de descarga
http://lwp-l.com/pdf14303

Comentarios de: 3.1.2 Repertorio de instrucciones y formato de la instrucción máquina - Parte III. Diseño del procesador - Módulo 3.1 Lenguaje máquina y ensamblador (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad