Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Three-Address Instructions
ADD R1, R2, R3 R1 R2 + R3
Two-Address Instructions
ADD R1, R2 R1 R1 + R2
One-Address Instructions
ADD M AC AC + M[AR]
Zero-Address Instructions
ADD TOS TOS + (TOS 1)
RISC Instructions
Lots of registers. Memory is restricted to Load & Store
Example :
LOAD A
ADD B AC = AC + B
or
SUB B AC = AC - B
Operand 1 & Result in AC (accumulator), a register
SUB B B subtracts from AC, the result stored in AC
Address for Next instruction? program counter (PC)
Short instruction (requires less bit) but need more instructions
for arithmetic problem
Y = (A-B) / (C+D x E)
Instruction Comment
SUB Y, A, B Y A-B
MPY T, D, E T DxE
ADD T, T, C T T+C
DIV Y, Y, T Y Y/ T
Three-address
instructions
Y = (A-B) / (C+D x E)
MOVE Y, A
SUB Y, B
MOVE T, D
MPY T, E
ADD T, C
DIV Y, T
Two-address instructions
Y = (A-B) / (C+D x E)
INSTRUCTIONS Comment
LOAD D AC D
MPY E
AC AC x E
ADD C
AC AC + C
STOR Y
LOAD A Y AC
SUB B AC A
DIV Y AC AC B
STOR Y AC AC / Y
Y AC
One-address Instructions
Utilization of Instruction Addresses
Register Ri EA = R i
Indirect (R i ) EA = [R i ]
(LOC) EA = [LOC]
Index X(R i ) EA = [R i ] + X
Autoincremen t (R i )+ EA = [R i ] ;
Incremen t R i
Autodecrement (R i ) Decremen t Ri ;
EA = [R i ]
Dr. Yeresime Suresh 13