QUE-HACE-CADA-INSTRUCCION-esquem...
ingenieracasi
Estructura de Computadores
2º Grado en Ingeniería Informática
Escuela Técnica Superior de Ingenieros Informáticos
Universidad Politécnica de Madrid
Reservados todos los derechos.
No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-11161380
ÀQUƒ HACE CADA INSTRUCCIîN?
TRANSFERENCIA DE DATOS
LD, ST y MOVE
LD .R2, #4[.R4] ; R2 <Ñ M(R4 + 4)
la ubicaci—n de los operandos depende
ST .R2, #4[.R4] ; M(R4 + 4) <Ñ R2 ! del modelo de ejecuci—n del procesador
(reg-reg, reg-mem, mem-mem)
MOVE .R2, .R4 ; R4 <Ñ R2
MOVE [.R2], [.R4] ; M(R4) <Ñ M(R2)
PUSH y POP
a la hora de aumentar/decrementar el contador de programa
}
PUSH .R1 ; M(SP) <Ñ R1, SP <Ñ SP - 4
(SP) en estas instrucciones, hay que tener en cuenta si este
POP .R1 ; SP <Ñ SP + 4, R1 <Ñ M(SP) est‡ apuntando al primer dato o a la primera posici—n libre
ARITMƒTICAS Y DE COMPARACIîN
Todas modifican los biestables de estado ADDC .R1, .R2 ; R1 <Ñ R1 + R2 + C
ADD .R1, .R2 ; R1 <Ñ R1 + R2 SUBC .R1, .R2 ; R1 <Ñ R1 - R2 - C
-U sin signo
SUB .R1, .R2 ; R1 <Ñ R1 - R2 CMP .R1, .R2 ; R1 - R2 , no modifica R1 ni R2 -S con signo
MUL .R1, .R2 ; R1 <Ñ R1 * R2 INC .R1 ; R1 <Ñ R1 + 1
DIV .R1, .R2 ; R1 <Ñ R1 / R2 DEC .R2 ; R2 <Ñ R2 - 1
DE BIT LîGICAS
CLR.I #3, .R1 ; pone a 0 el bit 3 de R1 AND .R1, .R2 ; R1 <Ñ R1 AND R2
SET.I #3, .R1 ; pone a 1 el bit 3 de R1 XOR .R1, #4 ; R1 <Ñ R1 XOR 4
TEST.I #3, .R1 ; biestable Z <Ñ NOT(bit3(R1)) OR .R1, [.R2] ; R1 <Ñ R1 OR M(R2)
; si bit3(R1) = 0, biestable Z <Ñ 1
; si no, biestable Z <Ñ 0 NOT #8[.R1] ; M(R1 + 8) <Ñ NOT M(R1 + 8)
DESPLAZAMIENTO
ROTACIîN
Realizan desplazamientos de bits a izquierda/derecha
(equivalen a multiplicar/dividir por 2) Realizan rotaciones de bits a izquierda/derecha incluyendo o
no el biestable de Acarreo
TRUCO: L de left y R de right
ROL .R1
LîGICO
ROR .R1
SHL .R1
A travŽs del biestable de Acarreo
SHR .R2
ROLC .R1
ARITMƒTICO (para enteros con signo) RORC .R1
SHLA .R1
CON RETORNO
SHRA .R2
CALL /1000 ; r1 <Ñ PC, PC <Ñ 1000 (dir ret en reg)
*pueden especificar el n¼ de posiciones a desplazar, ej: SHL .R1, #4 ; M(SP) <Ñ PC, SP <Ñ SP - 4, PC <Ñ 1000 (dir ret en pila)
RET ; PC <Ñ R1 (dir ret en reg)
; SP <Ñ SP + 4, PC <Ñ M(SP) (dir ret en pila)
SALTOS
CONDICIONALES
INCONDICIONALES
El salto se realiza solo si se cumple la condici—n especificada
El salto se realiza siempre. Tienen como operando la direcci—n de
memoria donde est‡ la siguiente instrucci—n a ejecutar Bcc Direcci—n
cc = Z, C, V, P, N, EQ, GT, GE, LT, LE, NZ, NC, NV, NEQ, É
BR /1000 ; PC <Ñ 1000
BR #4[.R3] ; PC <Ñ R3 + 4 ej: BZ /1000 ; si biestable(Z)=1 PC <Ñ 1000
BR $10 ; PC <Ñ PC +10 ; si no, PC <Ñ PC + N
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.