• Keine Ergebnisse gefunden

faikf

N/A
N/A
Protected

Academic year: 2022

Aktie "faikf"

Copied!
367
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

AM

0

(Kapitel 14.1 + 14.2)

JanisVoigtländer

TehnisheUniversitätDresden

Sommersemester 2007

(2)

.

6

?

- -

? ?

6

6

?

6

?

.

.

.

.

.

... . . . . .

. . . .

...

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

... . . . . . . . . . . .

.

.

.

.

... . . . . .

. . . .

...

.

.

.

. .

. . . . . . . . . .

...

.

.

.

.

.

.

.

.

.

.

prozessor

Haupt-

speiher Zentral-

Steuerleitungen Steuerleitungen Adressbus

Datenbus E/A-Geräte

(3)

0

4 2 -7 .

Ausgabeband

17 -3 6 8 1

8

? 6

?

7

6

?

@@

Eingabeband AM 0

Datenbus

3 2 8 9 -17

2 3 4 5

Adressen: 1

-5 11 4

Datenkeller Hauptspeicher

? -

Befehlsz¨ahler 9

1: LIT 3;

2: JMP 7;

3: ADD;

.. . 9: MUL;

Programmspeicher

(4)

int main()

{ int i,n,s;

sanf("%i",&n);

i=1;

s=0;

while (i<=n)

{ s=s+i*i;

i=i+1;

}

printf("%d",s);

return 0;

}

(5)

int main()

{ int i,n,s;

sanf("%i",&n);

i=1;

s=0;

while (i<=n)

{ s=s+i*i;

i=i+1;

}

printf("%d",s);

return 0;

}

Wir brauhen: Speiherplätze

(6)

int main()

{ int i,n,s;

sanf("%i",&n);

i=1;

s=0;

while (i<=n)

{ s=s+i*i;

i=i+1;

}

printf("%d",s);

return 0;

}

Wir brauhen: Speiherplätze,Ein- und Ausgabe

(7)

int main()

{ int i,n,s;

sanf("%i",&n);

i=1;

s=0;

while (i<=n)

{ s=s+i*i;

i=i+1;

}

printf("%d",s);

return 0;

}

Wir brauhen: Speiherplätze,Ein- und Ausgabe,Auswertung von

Ausdrüken

(8)

int main()

{ int i,n,s;

sanf("%i",&n);

i=1;

s=0;

while (i<=n)

{ s=s+i*i;

i=i+1;

}

printf("%d",s);

return 0;

}

Wir brauhen: Speiherplätze,Ein- und Ausgabe,Auswertung von

Ausdrüken, Kontrolluss

(9)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

(10)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

(11)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

(12)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

(13)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

(14)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

(15)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

;

h

[

n

/

d

](

n

) =

d,fallsn

=

n,sonsth

[

n

/

d

](

n

) =

h

(

n

)

(16)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

;

h

[

n

/

d

](

n

) =

d,fallsn

=

n,sonsth

[

n

/

d

](

n

) =

h

(

n

)

Beispielefür h

=

[1/3,2/2,3/5℄:

h

[

5

/

7

] =

[1/3,2/2,3/5,5/7℄

(17)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

;

h

[

n

/

d

](

n

) =

d,fallsn

=

n,sonsth

[

n

/

d

](

n

) =

h

(

n

)

Beispielefür h

=

[1/3,2/2,3/5℄:

h

[

5

/

7

] =

[1/3,2/2,3/5,5/7℄und h

[

2

/

7

] =

[1/3,2/7,3/5℄

(18)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

;

h

[

n

/

d

](

n

) =

d,fallsn

=

n,sonsth

[

n

/

d

](

n

) =

h

(

n

)

Beispielefür h

=

[1/3,2/2,3/5℄:

h

[

5

/

7

] =

[1/3,2/2,3/5,5/7℄und h

[

2

/

7

] =

[1/3,2/7,3/5℄

Befehlezur Kommunikation mit:

Ein-undAusgabe

(19)

stattbenannter Speiherplätze(Variablen) lediglih

numerishe Adressen

einzigmögliher Speiherinhalt:ganze Zahl(int)

konkreterHauptspeiherinhaltmodelliertalspartielle

Abbildung vonAdressenauf Inhalte

mathematish:HS =

{

h

|

h

: N − Z }

Notation: h

=

[1/3,2/2,3/5℄

Update:h

[

n

/

d

]

;

h

[

n

/

d

](

n

) =

d,fallsn

=

n,sonsth

[

n

/

d

](

n

) =

h

(

n

)

Beispielefür h

=

[1/3,2/2,3/5℄:

h

[

5

/

7

] =

[1/3,2/2,3/5,5/7℄und h

[

2

/

7

] =

[1/3,2/7,3/5℄

Befehlezur Kommunikation mit:

Ein-undAusgabe

(20)

lediglihEin- und Ausgabeganzer Zahlen (int)

(21)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe

(22)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

(23)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

(24)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

(25)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

Notation: inp

=

1.13.5 oder out

= ε

(26)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

Notation: inp

=

1.13.5 oder out

= ε

READn:EinlesenersterPositionvoninp

(27)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

Notation: inp

=

1.13.5 oder out

= ε

READn:EinlesenersterPositionvoninp und

entsprehendes Updateder Positionn desHS

(28)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

Notation: inp

=

1.13.5 oder out

= ε

READn:EinlesenersterPositionvoninp und

entsprehendes Updateder Positionn desHS

WRITE n:Ausgabe desHS-Inhaltsan Positionn

(29)

lediglihEin- und Ausgabeganzer Zahlen (int)

Abstraktionvon interaktiverEin-und Ausgabe;

stattdessen:Eingabeband undAusgabeband

Bandinhalte modelliertalsendlihe Listen

mathematish:Inp =Out =

Z

Notation: inp

=

1.13.5 oder out

= ε

READn:EinlesenersterPositionvoninp und

entsprehendes Updateder Positionn desHS

WRITE n:Ausgabe desHS-Inhaltsan Positionn

amEnde von out

(30)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

(31)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

(32)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

(33)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

(34)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

(35)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

(36)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

Notation: d

=

8:7:2

(37)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

Notation: d

=

8:7:2

LIT z:Ablageeiner Konstante

(38)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

Notation: d

=

8:7:2

LIT z:Ablageeiner Konstante

LOADn:Ablage desHS-Inhaltsan Positionn

(39)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

Notation: d

=

8:7:2

LIT z:Ablageeiner Konstante

LOADn:Ablage desHS-Inhaltsan Positionn

ADD,MUL,...,EQ,NE,LT,...:Berehnungen

(40)

Problem:

Wir wollenstrukturierteAusdrüke wie

(3+5)*(7-2) oderj>2*i+1 auswerten.

Dies solljedoh inlinearisierter Form erfolgen,

insbesondereeineOperationimmernur aufzwei

Operandenwirken.

Folglihmüssen Zwishenergebnisseberehnet

und in geeigneterWeise vorrätig gehalten

werden.

Lösung:

Einführung einesDatenkellers

Ablage und Entnahme jeweils nur anKellerspitze

mathematish: DK=

Z

Notation: d

=

8:7:2

LIT z:Ablageeiner Konstante

LOADn:Ablage desHS-Inhaltsan Positionn

ADD,MUL,...,EQ,NE,LT,...:Berehnungen

STORE n:Entnahme undentsprehendes

Update derPositionn desHS

(41)

Durhnummerierung allerBefehlein einemProgramm

(42)

Durhnummerierung allerBefehlein einemProgramm

aktuelle Positionim Befehlszählergespeihert (m

BZ=

N

)

(43)

Durhnummerierung allerBefehlein einemProgramm

aktuelle Positionim Befehlszählergespeihert (m

BZ=

N

)

normalerweiseeinfaheErhöhungnah jeder

Befehlsabarbeitung

(44)

Durhnummerierung allerBefehlein einemProgramm

aktuelle Positionim Befehlszählergespeihert (m

BZ=

N

)

normalerweiseeinfaheErhöhungnah jeder

Befehlsabarbeitung

JMP n:Sprung an Positionn

(45)

Durhnummerierung allerBefehlein einemProgramm

aktuelle Positionim Befehlszählergespeihert (m

BZ=

N

)

normalerweiseeinfaheErhöhungnah jeder

Befehlsabarbeitung

JMP n:Sprung an Positionn

JMC n:bedingterSprung anPositionn

(46)

Durhnummerierung allerBefehlein einemProgramm

aktuelle Positionim Befehlszählergespeihert (m

BZ=

N

)

normalerweiseeinfaheErhöhungnah jeder

Befehlsabarbeitung

JMP n:Sprung an Positionn

JMC n:bedingterSprung anPositionn;

nur wennSpitze desDatenkellers gleih0

(47)

0

4 2 -7 .

Ausgabeband

17 -3 6 8 1

8

? 6

?

7

6

?

@@

Eingabeband AM 0

Datenbus

3 2 8 9 -17

2 3 4 5

Adressen: 1

-5 11 4

Datenkeller Hauptspeicher

? -

Befehlsz¨ahler 9

1: LIT 3;

2: JMP 7;

3: ADD;

.. . 9: MUL;

Programmspeicher

(48)

AM 0

=BZ

×

DK

×

HS

×

Inp

×

Out mit:

BZ =

N

Befehlszähler

DK =

Z

Datenkeller

HS =

{

h

|

h

: N − Z }

Hauptspeiher

Inp =

Z

Eingabeband

Out =

Z

Ausgabeband

(49)

AM 0

=BZ

×

DK

×

HS

×

Inp

×

Out mit:

BZ =

N

Befehlszähler

DK =

Z

Datenkeller

HS =

{

h

|

h

: N − Z }

Hauptspeiher

Inp =

Z

Eingabeband

Out =

Z

Ausgabeband

Mashine istjederzeitin einemZustand

s

= (

m

,

d

,

h

,

inp

,

out

) ∈

AM0

(50)

AM 0

=BZ

×

DK

×

HS

×

Inp

×

Out mit:

BZ =

N

Befehlszähler

DK =

Z

Datenkeller

HS =

{

h

|

h

: N − Z }

Hauptspeiher

Inp =

Z

Eingabeband

Out =

Z

Ausgabeband

Mashine istjederzeitin einemZustand

s

= (

m

,

d

,

h

,

inp

,

out

) ∈

AM0

Ein Programmist einepartielle, endlihdenierte Abbildung P

von

N

aufdie Menge

Γ

aller Befehle.

(51)

AM 0

=BZ

×

DK

×

HS

×

Inp

×

Out mit:

BZ =

N

Befehlszähler

DK =

Z

Datenkeller

HS =

{

h

|

h

: N − Z }

Hauptspeiher

Inp =

Z

Eingabeband

Out =

Z

Ausgabeband

Mashine istjederzeitin einemZustand

s

= (

m

,

d

,

h

,

inp

,

out

) ∈

AM0

Ein Programmist einepartielle, endlihdenierte Abbildung P

von

N

aufdie Menge

Γ

aller Befehle.

Notation: 1:P(1);

2:P(2);

3:P(3);

...

(52)

AM 0

=BZ

×

DK

×

HS

×

Inp

×

Out mit:

BZ =

N

Befehlszähler

DK =

Z

Datenkeller

HS =

{

h

|

h

: N − Z }

Hauptspeiher

Inp =

Z

Eingabeband

Out =

Z

Ausgabeband

Mashine istjederzeitin einemZustand

s

= (

m

,

d

,

h

,

inp

,

out

) ∈

AM0

Ein Programmist einepartielle, endlihdenierte Abbildung P

von

N

aufdie Menge

Γ

aller Befehle.

Notation: 1:P(1);

2:P(2);

3:P(3);

...

Programmabarbeitungbesteht auswiederholter Anwendung

von Befehlenauf einenZustand.

(53)

C[[.]]

:

Γ −→ (

AM0

AM0

)

(54)

C[[.]]

:

Γ −→ (

AM0

AM0

) C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

(55)

C[[.]]

:

Γ −→ (

AM0

AM0

) C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

C[[

WRITEn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

d

,

h

,

inp

,

out

.

h

(

n

))

(56)

C[[.]]

:

Γ −→ (

AM0

AM0

) C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

C[[

WRITEn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

d

,

h

,

inp

,

out

.

h

(

n

)) C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(57)

C[[.]]

:

Γ −→ (

AM0

AM0

) C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

C[[

WRITEn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

d

,

h

,

inp

,

out

.

h

(

n

)) C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

) C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wenn d

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

(58)

C[[.]]

:

Γ −→ (

AM0

AM0

) C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

C[[

WRITEn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

d

,

h

,

inp

,

out

.

h

(

n

)) C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wenn h

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

) C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wenn d

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

C[[

LIT z

]](

m

,

d

,

h

,

inp

,

out

) = (

m

+

1

,

z

:

d

,

h

,

inp

,

out

)

(59)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

(60)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

(61)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

C[[

LT

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

<

d

.

1,sonst b

=

0

(62)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

C[[

LT

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

<

d

.

1,sonst b

=

0

für EQ,NE, GT,LEund GEanalog

(63)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

C[[

LT

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

<

d

.

1,sonst b

=

0

für EQ,NE, GT,LEund GEanalog

C[[

JMPe

]](

m

,

d

,

h

,

inp

,

out

) = (

e

,

d

,

h

,

inp

,

out

)

(64)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

C[[

LT

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

<

d

.

1,sonst b

=

0

für EQ,NE, GT,LEund GEanalog

C[[

JMPe

]](

m

,

d

,

h

,

inp

,

out

) = (

e

,

d

,

h

,

inp

,

out

) C[[

JMCe

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

0

:

d

,dann

(

e

,

d

,

h

,

inp

,

out

)

;

(65)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

für MUL,SUB, DIVund MODanalog

C[[

LT

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

<

d

.

1,sonst b

=

0

für EQ,NE, GT,LEund GEanalog

C[[

JMPe

]](

m

,

d

,

h

,

inp

,

out

) = (

e

,

d

,

h

,

inp

,

out

) C[[

JMCe

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

0

:

d

,dann

(

e

,

d

,

h

,

inp

,

out

)

;

wennd

=

1

:

d

,dann

(

m

+

1

,

d

,

h

,

inp

,

out

)

(66)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 1 ,

ε

,[℄ ,2 ,

ε

)

(67)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 1 ,

ε

,[℄ ,2 ,

ε

)

( 2 ,

ε

,[2/2℄ ,

ε

,

ε

)

C[[

READn

]](

m

,

d

,

h

,

inp

,

out

) =

wenninp

=

rst

(

inp

).

rest

(

inp

)

mitrst

(

inp

) ∈ Z ,

rest

(

inp

) ∈ Z

, dann

(

m

+

1

,

d

,

h

[

n

/

rst

(

inp

)],

rest

(

inp

),

out

)

(68)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 1 ,

ε

,[℄ ,2 ,

ε

)

( 2 ,

ε

,[2/2℄ ,

ε

,

ε

)

( 3 , 1,[2/2℄ ,

ε

,

ε

)

C[[

LIT z

]](

m

,

d

,

h

,

inp

,

out

) = (

m

+

1

,

z

:

d

,

h

,

inp

,

out

)

(69)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 1 ,

ε

,[℄ ,2 ,

ε

)

( 2 ,

ε

,[2/2℄ ,

ε

,

ε

)

( 3 , 1,[2/2℄ ,

ε

,

ε

)

( 4 ,

ε

,[1/1,2/2℄ ,

ε

,

ε

)

C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

(70)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 1 ,

ε

,[℄ ,2 ,

ε

)

( 2 ,

ε

,[2/2℄ ,

ε

,

ε

)

( 3 , 1,[2/2℄ ,

ε

,

ε

)

( 4 ,

ε

,[1/1,2/2℄ ,

ε

,

ε

)

( 5 , 0,[1/1,2/2℄ ,

ε

,

ε

)

C[[

LIT z

]](

m

,

d

,

h

,

inp

,

out

) = (

m

+

1

,

z

:

d

,

h

,

inp

,

out

)

(71)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 2 ,

ε

,[2/2℄ ,

ε

,

ε

)

( 3 , 1,[2/2℄ ,

ε

,

ε

)

( 4 ,

ε

,[1/1,2/2℄ ,

ε

,

ε

)

( 5 , 0,[1/1,2/2℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

(72)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 3 , 1,[2/2℄ ,

ε

,

ε

)

( 4 ,

ε

,[1/1,2/2℄ ,

ε

,

ε

)

( 5 , 0,[1/1,2/2℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 7 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(73)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 4 ,

ε

,[1/1,2/2℄ ,

ε

,

ε

)

( 5 , 0,[1/1,2/2℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 7 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 8 , 2:1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(74)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD3; 17:LIT 1;

4:LIT 0; 11:LOAD1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 5 , 0,[1/1,2/2℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 7 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 8 , 2:1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 9 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LE

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

,

b

:

d

,

h

,

inp

,

out

)

,

wobeib

=

1,fallsd

.

2

d

.

1,sonst b

=

0

(75)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 6 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 7 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 8 , 2:1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 9 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 10 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

JMCe

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

0

:

d

,dann

(

e

,

d

,

h

,

inp

,

out

)

;

= : ( + , , , , )

(76)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 7 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 8 , 2:1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 9 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 10 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 11 , 0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(77)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 8 , 2:1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 9 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 10 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 11 , 0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 12 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(78)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 9 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 10 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 11 , 0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 12 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 13 , 1:1:0 ,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(79)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 10 ,

ε

,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 11 , 0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 12 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 13 , 1:1:0 ,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 14 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

MUL

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

d

.

1

) :

d

,

h

,

inp

,

out

)

(80)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 11 , 0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 12 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 13 , 1:1:0 ,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 14 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 15 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

(81)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD3; 17:LIT 1;

4:LIT 0; 11:LOAD1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 12 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 13 , 1:1:0 ,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 14 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 15 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 16 ,

ε

,[1/1,2/2,3/1℄ ,

ε

,

ε

)

C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

(82)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 13 , 1:1:0 ,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 14 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 15 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 16 ,

ε

,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 17 , 1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(83)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 14 , 1:0,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 15 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 16 ,

ε

,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 17 , 1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 18 , 1:1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

C[[

LIT z

]](

m

,

d

,

h

,

inp

,

out

) = (

m

+

1

,

z

:

d

,

h

,

inp

,

out

)

(84)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD 1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 15 , 1,[1/1,2/2,3/0℄ ,

ε

,

ε

)

( 16 ,

ε

,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 17 , 1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 18 , 1:1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 19 , 2,[1/1,2/2,3/1℄ ,

ε

,

ε

)

C[[

ADD

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

.

2

:

d

,dann

(

m

+

1

, (

d

.

2

+

d

.

1

) :

d

,

h

,

inp

,

out

)

(85)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 16 ,

ε

,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 17 , 1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 18 , 1:1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 19 , 2,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 20 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

C[[

STORE n

]](

m

,

d

,

h

,

inp

,

out

) =

wennd

=

d

.

1

:

d

,dann

(

m

+

1

,

d

,

h

[

n

/

d

.

1

],

inp

,

out

)

(86)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 17 , 1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 18 , 1:1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 19 , 2,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 20 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

C[[

JMPe

]](

m

,

d

,

h

,

inp

,

out

) = (

e

,

d

,

h

,

inp

,

out

)

(87)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 18 , 1:1,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 19 , 2,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 20 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 7 , 2,[1/2,2/2,3/1℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

(88)

1:READ 2; 8:LE; 15:STORE 3;

2:LIT 1; 9:JMC 21; 16:LOAD1;

3:STORE 1; 10:LOAD 3; 17:LIT 1;

4:LIT 0; 11:LOAD 1; 18:ADD;

5:STORE 3; 12:LOAD1; 19:STORE 1;

6:LOAD1; 13:MUL; 20:JMP 6;

7:LOAD2; 14:ADD; 21:WRITE 3;

( 19 , 2,[1/1,2/2,3/1℄ ,

ε

,

ε

)

( 20 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 6 ,

ε

,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 7 , 2,[1/2,2/2,3/1℄ ,

ε

,

ε

)

( 8 , 2:2,[1/2,2/2,3/1℄ ,

ε

,

ε

)

C[[

LOADn

]](

m

,

d

,

h

,

inp

,

out

) =

wennh

(

n

) ∈ Z

,dann

(

m

+

1

,

h

(

n

) :

d

,

h

,

inp

,

out

)

Referenzen

ÄHNLICHE DOKUMENTE

Sofern noh niht vorhanden, füge das neue Element als Blatt. so ein, dass die Suhbaumeigenshaft erfüllt ist,

Idee: zunähst Entsheidung, ob s[0℄ und t[0℄ einander. gegenübergestellt, oder eines

Lösung: Es gibt keine solhe positive ganze Zahl. Beweis: Denn für jede positive ganze Zahl n beweist die Umfomung

Es gibt eine konkret berehenbare Zahl w , so dass gilt: Jede ungerade Zahl n ≥ w kann als eine Summe aus drei Primzahlen geshrieben werden. Winogradow selbst konnte keinen Wert für

Dann gibt es für einen Streifen 6 , für einen anderen Streifen 5 und für den.. dritten Streifen

Jeder Autofahrer a hat sein individuelles Risikoprol, das durh den Parameter ϑ a beshrieben wird... Jeder Autofahrer a hat sein individuelles Risikoprol, das durh den Parameter ϑ

Wahrsheinlihkeit dass dies die Shahtel ist die ganz mit Äpfeln gefüllt ist oder. zur Hälfte mit Äpfeln und zur Hälfte mit Orangen

[r]