Documente Academic
Documente Profesional
Documente Cultură
Operation -se calculează adresa efectivă EA, de pointer address ← PC+SEXT(pgoffset9) EA ← BaseR+ZEXT(index6) EA ← PC+SEXT(pgoffset9)
unde se va citi informaţia din memorie: EA ← Mem[pointer address] DR ← Mem[EA] DR ← EA
EA ← PC+SEXT(pgoffset9) DR ← Mem[EA]
DR ← Mem[EA] -încarcă în registrul destinaţie conţinutul de -încarcă în registrul destinaţie conţinutul -încarcă în registrul destinaţie
-încarcă în registrul destinaţie conţinutul memorie de la adresa efectivă de memorie de la adresa efectivă valoarea EA (nu conţinutul de
de memorie de la adresa efectivă memorie de la adresă)
Example
Operation -se calculează adresa efectivă unde se va scrie pointer address ← PC+SEXT(pgoffset9) EA ← BaseR+ZEXT(index6)
informaţia în memorie: EA ← Mem[pointer address] Mem[EA] ← SR
EA ← PC+SEXT(pgoffset9) Mem[EA] ← SR
Mem[EA] ← SR
-conţinutul aflat în registrul sursă se scrie în -idem -idem
memorie la adresa efectivă calculată (EA)
Example
Instructiuni de control
Instructio BR
n conditional Branch
(salt conditionat)
Assembler BRn Label (negativ) BRzp Label (pozitiv sau 0)
format BRz Label (= cu 0) BRnp Label (diferit de 0)
BRp Label (pozitiv) BRnz Label (negativ sau 0)
BR+ Label (?????) BRnzp Label (salt neconditionat pe oricare din conditii, echivalent instructiunii JMP,doar ca deplasamentul este pe 9 biti)
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Encoding
┌───┬┬┬┬────────┐
0011 n z p Pageoffset9
Intreruperi
Instructio JMP JMPR JSR JSRR
n Jump Jump (BaseR) Jump to SubRoutine Jump to SubRoutine (BaseR)
(salt neconditionat)
Assembler
JMP Label JMP BaseR JSR Label JSRR BaseR
format
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Encoding
┌───┬┬──────────┐ ┌───┬──┬──┬─────┐ ┌───┬┬──────────┐ ┌───┬┬─┬──┬─────┐
1100 1 Pageoffset 11 1100 000 BaseR 000000 0100 1 Pageoffset 11 0100 0 00 BaseR 000000
Example
Assembler
RET RET RTI
format
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Encoding
┌───┬──┬──┬─────┐ ┌───┬──┬──┬─────┐ ┌───┬───────────┐
1100 000 111 000000 1100 000 111 000000 1000 000 000 000 000
Operation PC ← R7 If .....?????????
Example
Apeluri de sistem
Instructio TRAP
n system call
Assembler
TRAP trapvector8
format
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Encoding
┌───┬───┬───────┐
1111 0000 trapvect 8
Operation
Example
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
┌───┬┬┬┬┬┬┬┬┬┬┬┬┐
0 0 0 1 DR SR1 0 0 0 SR2