Käsuformaadid (Instruction formats)

Preview:

DESCRIPTION

Käsuformaadid (Instruction formats). Käsukood ja erinev arv aadresse käsus. Null aadressiga arvuti. Käsukood (OPCode). Ühe aadressiga arvuti. Käsukood (OPCode). Aadress 1. Kahe aadressiga arvuti. Käsukood (OPCode). Aadress 1. Aadress 2. Kolme aadressiga arvuti. Käsukood (OPCode). - PowerPoint PPT Presentation

Citation preview

04/21/23 T. Evartson 1

Käsukood (OPCode)

Käsukood (OPCode)

Käsukood (OPCode)

Käsukood (OPCode)

Aadress 1

Aadress 1

Aadress 1

Aadress 2

Aadress 2 Aadress 3

Käsukood ja erinev arv aadresse käsus.

Käsu pikkus ja mälu sõna laius

Käsk

Käsk

Käsk

Käsk

Mälu sõna

Käsk

Käsk

Käsk

Käsk

Mälu sõna

Käsk

Käsk

Käsk

Käsk

Käsk

Käsk

Käsk

Mälu sõna

KäskKäsk

Käsukood (OPCode) Aadress 1Lühike aadr

Ühe aadressiga arvuti

Kahe aadressiga arvuti

1,5 aadressiga arvuti

Kolme aadressiga arvuti

Käsuformaadid (Instruction formats)

Null aadressiga arvuti

04/21/23 T. Evartson 2

04/21/23 T. Evartson 3

04/21/23 T. Evartson 4

1. Vahetu adresseerimine Immediate addressing

KK (käsukood)

OP (operand)

KK

OP

KK OP

2. Otsene adresseerimine Absolute addressing, Direct addressing

KK

MÄLU

OP

Reg.

OPKK AADRLühike aadr.

Pikk aadress

Adresseerimise viisid. Addressing modes

04/21/23 T. Evartson 5

KK

MÄLU

OP

Reg.KK AADR

Lühike aadr.

AadressAadress

MÄLU

AadressOP

Register indirect addressing.

Kaudne adresseerimine. Indirect addressing.3.

04/21/23 T. Evartson 6

Reg.KK AADR

Lühike aadr.

MÄLU

AadressOP

+Oper. mõõt

Reg.KK AADR

Lühike aadr.

MÄLU

AadressOP

5. Autodekrementne adresseerimine.

-Oper. mõõt

Autoinkrementne adresseerimine.4.

04/21/23 T. Evartson 7

6.

Reg.

Ind. Reg.

KK I reg. aad.Lühike aadr.

MÄLU

Pikk aadress

OP

+

Indeks

BAAS

AADRESS

MÄLU

Baas

Indeks

OP

MÄLU

Baas

Indeks

OPOP

NiheOffset

Adresseerimine indekseerimisega. (Indexed addressing)

04/21/23 T. Evartson 8

7.

Reg.

BAAS Reg.

KK B reg. aad.Lühike aadr.

MÄLU

Pikk aadress

OP

+

Indeks

BAAS Reg.

8. Adresseerimine baseerimise ja indekseerimisega.

KK

Reg.

BAAS Reg.

MÄLU

Pikk aadress

OP

+BR

BAAS Reg.

IR

IND. Reg.

Lühikeaadress

Lühikeaadress

Adresseerimine baseerimisega.

04/21/23 T. Evartson 9

KK

NIHE

PC

MÄLU

+

Pikkaadress

Pikkaadress

OP

9. Suhteline adresseerimine. Relative addressing.

04/21/23 T. Evartson 10

Virtuaalmälu (Virtual Memory)Lehekülgedeks jagamine (Pagening)

Aadressi ruum

. . .

0

4096

81914K

põhimälu

0

4096

0

1

0

1

0

1

1

0

Ketas Füüsiline kettaaadress (seade, pea

rada,sektor)

Kehtivusebit

Füüsilinemälu

Füüsilisedlehekülgedeaadressid

Virtuaalneleheküljenumber

04/21/23 T. Evartson 11

04/21/23 T. Evartson 12

04/21/23 T. Evartson 13

MÄLU

Operand

...

Nihe leheküljelVirtuaalne leheküje number

Nihe leheküljelFüüsiline leheküje number

Transleerimine

Lehekülg 0

Lehekülg 1

Lehekülg n-1

Füüsiline mälu aadress

Programmis kasutatav loogiline aadress

0111231

0111223

Nihe leheküljelVirtuaalne leheküje number

Nihe leheküljelFüüsiline leheküje number

Füüsiline mälu aadress

Programmis kasutatav loogiline aadress

Füüsiline lehekülje number. . .

. . .

. . .

Lehekülgedetabel

2 virtuaalset lehekülge

2 füüsilist lehekülge

20

12

Lehekülg 4K

04/21/23 T. Evartson 14

04/21/23 T. Evartson 15

Segmenteerimine (Segmentation)

Nihe segmendisLoogiline segmendi number

Füüsiline mälu aadress

Transleerimine

Programmis kasutatav loogiline aadress

Segmendi algus aadress

+

04/21/23 T. Evartson 16

Füüsiline segmendi number. . .

. . .

. . .

Segmentide tabel

Nihe segmendisLoogiline segmendi number

Füüsiline mälu aadress

Programmis kasutatav loogiline aadress

+

04/21/23 T. Evartson 17

Segmenteerimine lehekülgedeks jagamisega (Segmentation with paging)

Segmendinumber

Leheküljenimber

Niheleheküljel

Nihe

+

. . .

Segmentide tabel

. . .

Füüsiline mälu aadress

Lehekülg

Lehekülgede tabel

04/21/23 T. Evartson 18

04/21/23 T. Evartson 19

04/21/23 T. Evartson 20

04/21/23 T. Evartson 21

Kõrgtaseme keelHigh-level language

If n<100 then a:= b else v[i]:=k[j-1]

end;

Assembler keelAssembly language

ADD a,b,cMOV d, MXOR c,d

MasinkoodBinary machinelanguage

00110111001110110001100101001111010000010111110000011100

Käsusüsteem

Andmeedastus käsud Data transfer instructionsMOV, LOAD, STORE, ...

Aritmeetika-loogika käsud Arithmetic-logic instructionsAND, OR, ADD, SUB, …

Hargnemiste (siirete) käsud Branch instructionsJMP, CALL, RET, …

Pinumälu, sisend-väljund seadmete ja protsessori juhtimineStack, I/O, Machine control instructions

PUSH, POP, IN, OUT, NOP, ...

Käsusüsteem Instruction set

04/21/23 T. Evartson 22

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

Hüpoteetiline protsessor

04/21/23 T. Evartson 23

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

Käsukoodi laadimine Fetch

04/21/23 T. Evartson 24

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

MOV a,b

04/21/23 T. Evartson 25

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

LOAD C

04/21/23 T. Evartson 26

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

ADD a,c dKolm osa :1. a ladimineTMP1-te2. c laadimineTMP2-te3. Täitmineres. salv. d-sse

ADD a,c d

04/21/23 T. Evartson 27

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

CALL APAlam-programmiAP aadressi laadimine

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

CALL AP

04/21/23 T. Evartson 28

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

Call APtagasipöörde aadressisalvestaminepinumällu

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

Call AP

04/21/23 T. Evartson 29

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

Call APkäsusolevaAP aadressi laadimine

SP:=IDB

PC:=IDP

IDP:=PC

IDB

MAR:=IDB

Call AP

04/21/23 T. Evartson 30

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

RETtagasi-pöörduminealamprogrammist

IDB

MAR:=IDB

RET

04/21/23 T. Evartson 31

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IN dvälisseadmestregistrisseD andmetelugemine.I/O seadme aadressi lugemine

IDB

MAR:=IDB

IN d

04/21/23 T. Evartson 32

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

IN dvälisseadmestregistrisseD andmetelugemine.

IDB

MAR:=IDB

IN d

04/21/23 T. Evartson 33

IR

Andme latchA

B

PC

TMP2TMP1

D

C

ALUJuhtautomaat

Control and timing

Aadr. latch

SP

Käsudekooder

MAR

. . .

. . .

AB

LoadTMP1

LoadTMP2

IDB:=A

IDB:=B

IDB:=C

IDB:=D

A:=IDB

D:=IDB

C:=IDB

B:=IDB

INC/DECLoadAL

AB:=PC

AB:=SPAB:=MAR

ALU Oper.

Load IR

Load AL

CLK

SP:=IDB

PC:=IDP

IDP:=PC

NOPNo Operation

IDB

MAR:=IDB

NOP