Ïðåä.Ñòðàíèöà  Ðàçäåë Ñîäåðæàíèå


 

7.11. Ïðèëîæåíèå

Ôóíêöèè ïåðåõîäîâ è èíñòðóêöèè ÀÒ-ïðåîáðàçîâàòåëÿ

 

1:  <1>  -->  {<2><3>}

            Ïðàâèëà:

            Ññûëêè:

            Âûáîð: {

            Ôóíêöèÿ: φ( "{", <1>) = ( }<3><2>{)

            Èíñòðóêöèÿ: (4,2)(5,3)(5,2)(4,1)ComEnd

 

2.  <2> ::= "bool"{6}.a1 <4>.f1

            Ïðàâèëà: f1 = a1

            Ññûëêè: a1 = -2

            Âûáîð: "bool"

            Ôóíêöèÿ: φ( "bool", <2>) = ( .f1<4>.a1 {6} "bool")

            Èíñòðóêöèÿ: (8,nl)(5,4)(9,1)(8,-3)(6,6)(3,0)ComEnd

 

3. <3> ::= <6><7>

            Ïðàâèëà:

            Ññûëêè:

            Âûáîð: "Èäåíòèôèêàòîð"

            Ôóíêöèÿ: φ*( "Èäåíòèôèêàòîð", <3>) = ( <7><6>)

            Èíñòðóêöèÿ: (5,7)(5,6)ComEnd

 

 

4  <4>f2 ::=":""Èäåíòèôèêàòîð" {5}.b1<5>.g1

            Ïðàâèëà: b1=f2, g1=f2

            Ññûëêè: b1 = -2, g1 = -1

            Âûáîð: ":"

            Ôóíêöèÿ:  φ( ":", <4>) = [f2] ( .g1<5>.b1 {5}"Èäåíòèôèêàòîð" ":")

            Èíñòðóêöèÿ: (8,-1)(5,5)(9,1)(8,-4)(6,5)(1,0)(4,4)ComEnd

 

5.   <5>.g2 ::= ",""Èäåíòèôèêàòîð"{5}.b2<5>g3.

            Ïðàâèëà: b2=g2, g3=g2,

            Ññûëêè: b2 = -3, g3 = -1

            Âûáîð: ","

            Ôóíêöèÿ:  φ( ",", <5>) = [g2] ( .g3<5>.b2 {5}"Èäåíòèôèêàòîð"",")

            Èíñòðóêöèÿ: (8,-1)(5,5)(9,1)(8,-4)(6,5) (1,0) (4,10)ComEnd

 

6.  <5>.g4 ::= ;

            Ïðàâèëà:

            Ññûëêè:

            Âûáîð: ";"

            Ôóíêöèÿ: φ( ";", <5>) = [g4](";")

            Èíñòðóêöèÿ: (6,10)(4,3)ComEnd

 

 

7.  <6> ::= "Èäåíòèôèêàòîð"{7}.c1<8>.j1

            Ïðàâèëà: j1=c1

            Ññûëêè:c1= -2

 

            Âûáîð: "Èäåíòèôèêàòîð"

            Ôóíêöèÿ: φ( "Èäåíòèôèêàòîð", <6>) = ( j1<8>.c1{7}"Èäåíòèôèêàòîð")

            Èíñòðóêöèÿ: (8,nl)(5,8)(9,1)(8,-3)(6,7)(1,0)ComEnd

 

8.  <7> ::= <6><7>

            Ïðàâèëà:

            Ññûëêè:

            Âûáîð: "Èäåíòèôèêàòîð"

            Ôóíêöèÿ: φ*( "Èäåíòèôèêàòîð", <7>) = ( <7><6>)

            Èíñòðóêöèÿ: (5,7)(5,6)ComEnd

 

9.  <7> ::= $

            Ïðàâèëà:

            Ññûëêè:

            Âûáîð: "}"

            Ôóíêöèÿ: φ*( "}", <7>) = ( )

            Èíñòðóêöèÿ: ComEnd

 

10.  <8>.j2 ::= "="<9>.k1{1}.d1.d2;

            Ïðàâèëà: d1=j2, d2=k1

            Ññûëêè: d1 = -3, k1 = -3

            Âûáîð: "="

            Ôóíêöèÿ:  φ( "=", <8>) = [j2] ( ";".d2.d1{1}).k1 <9> "=")

            Èíñòðóêöèÿ: (4,3)(8,nl)(8,-3)(6,1)(8.-3)(5,9)(4,11)ComEnd

 

11:  <9>.k2 ::= <10>.l1<11>.m1.n1

            Ïðàâèëà: k2=m1, n1=l1

            Ññûëêè: m1 = -2, l1 = -3

            Âûáîð: "Èäåíòèôèêàòîð"

            Ôóíêöèÿ:  φ*( ""Èäåíòèôèêàòîð"", <9>) = [k2] ( .n1.m1<11>.l1<10>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,11)(8.-3)(5,10)ComEnd

 

12.  <9>.k2 ::= <10>.l1<11>.m1.n1

            Ïðàâèëà: k2=m1, n1=l1

            Ññûëêè: m1 = -2, l1 = -3

            Âûáîð: "~"

            Ôóíêöèÿ:  φ*( "~", <9>) = [k2] ( .n1.m1<11>.l1<10>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,11)(8.-3)(5,10)ComEnd

 

13.  <9>.k2 ::= <10>.l1<11>.m1.n1

            Ïðàâèëà: k2=m1, n1=l1

            Ññûëêè: m1 = -2, l1 = -3

            Âûáîð: "("

            Ôóíêöèÿ:  φ*( "(", <9>) = [k2] ( .n1.m1<11>.l1<10>)

 

 

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,11)(8.-3)(5,10)ComEnd

 

14.  <9>.k2 ::= <10>.l1<11>.m1.n1

            Ïðàâèëà: k2=m1, n1=l1

 

            Ññûëêè: m1 = -2, l1 = -3

            Âûáîð: "false"

            Ôóíêöèÿ:  φ*( "false", <9>) = [k2] ( .n1.m1<11>.l1<10>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,11)(8.-3)(5,10)ComEnd

 

15.  <9>.k2 ::= <10>.l1<11>.m1.n1

            Ïðàâèëà: k2=m1, n1=l1

            Ññûëêè: m1 = -2, l1 = -3

            Âûáîð: "true"

            Ôóíêöèÿ:  φ*( "true", <9>) = [k2] ( .n1.m1<11>.l1<10>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,11)(8.-3)(5,10)ComEnd

 

16.   <10>.l3 ::= <12>.p1<13>.q1.r1

            Ïðàâèëà: l3=q1, r1=p1

            Ññûëêè: q1 = -2, p1 = -3

            Âûáîð: " Èäåíòèôèêàòîð "

            Ôóíêöèÿ:  φ*( " Èäåíòèôèêàòîð ", <10>) = [l3] ( .r1.q1<13>.p1<12>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,13)(8.-3)(5,12)ComEnd

 

17.  <10>.l3 ::= <12>.p1<13>.q1.r1

            Ïðàâèëà: l3=q1, r1=p1

            Ññûëêè: q1 = -4, p1 = -3

            Âûáîð: " ~ "

            Ôóíêöèÿ:  φ*( " ~ ", <10>) = [l3] ( .r1.q1<13>.p1<12>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,13)(8.-3)(5,12)ComEnd

 

18.  <10>.l3 ::= <12>.p1<13>.q1.r1

            Ïðàâèëà: l3=q1, r1=p1

            Ññûëêè: q1 = -4, p1 = -3

            Âûáîð: " ( "

            Ôóíêöèÿ:  φ*( "(", <10>) = [l3] ( .r1.q1<13>.p1<12>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,13)(8.-3)(5,12)ComEnd

 

19.  <10>.l3 ::= <12>.p1<13>.q1.r1

            Ïðàâèëà: l3=q1, r1=p1

            Ññûëêè: q1 = -4, p1 = -3

            Âûáîð: " false "

            Ôóíêöèÿ:  φ*( "false ", <10>) = [l3] ( .r1.q1<13>.p1<12>)

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,13)(8.-3)(5,12)ComEnd

 

20.  <10>.l3 ::= <12>.p1<13>.q1.r1

            Ïðàâèëà: l3=q1, r1=p1

            Ññûëêè: q1 = -4, p1 = -3

            Âûáîð: " true"

            Ôóíêöèÿ:  φ*( "true", <10>) = [l3] ( .r1.q1<13>.p1<12>)

 

            Èíñòðóêöèÿ: (8,nl)(8,-2)(5,13)(8.-3)(5,12)ComEnd

 

21.  <11>.m2.n2 ::= "|" <10>l2{3}.x1.x2.x3<11>.m3.n3

            Ïðàâèëà: m2=m3, x1=l2, x2=n2, n3=x3

            Ññûëêè: m3 = -2, l2 = --2, x2=-6, x3=-3

            Âûáîð: "|"

            Ôóíêöèÿ:  φ( "|", <11>) = [.n2.m2] ( .n3.m3<11>.x3.x2.x1{3}.l2<10>"|")

            Èíñòðóêöèÿ:(8,nl)(8,-2)(5,11)(8,-3)(8,-6)(8,nl)(6,3)(8.-2)(5,10)(4,6)ComEnd

 

22.  <11>.m4.n4 ::= {8}

            Ïðàâèëà: m4=n4

            Ññûëêè

            Âûáîð: ")"

            Ôóíêöèÿ: φ*( ")", <11>) = [.n3.m3] ( )

            Èíñòðóêöèÿ:(6,8)ComEnd

 

23.  <11>.m4.n4 ::= {8}

            Ïðàâèëà: m4=n4

            Ññûëêè

            Âûáîð ";"

            Ôóíêöèÿ: φ*( ";", <11>) = [.n3.m3] ( )

            Èíñòðóêöèÿ:(6,8)ComEnd

 

24.  <12>.p2 ::= "~"<14>.s1 {4}.y1.y2

            Ïðàâèëà: y1=s1, p2=y2

            Ññûëêè: s1=-2, y2=-1

            Âûáîð: "~"

            Ôóíêöèÿ:  φ( "~", <12>) = [.p2] (.y2,y1{4} .s1<14>"~")

            Èíñòðóêöèÿ: (8,-1)(8,nl)(6,4) (8,-2)(5,14)(4,7)ComEnd

 

25.  <12>.p3 ::=  <14>.s2

            Ïðàâèëà: p3=s2

            Ññûëêè: s2=-1

            Âûáîð: "Èäåíòèôèêàòîð "

            Ôóíêöèÿ:  φ*( "Èäåíòèôèêàòîð ", <12>) = [.p3] (.s2<14>)

            Èíñòðóêöèÿ: (8,-2)(5,14)ComEnd

 

26.  <12>.p3 ::=  <14>.s2

            Ïðàâèëà: p3=s2

            Ññûëêè: s2=-1

            Âûáîð: "( "

            Ôóíêöèÿ:  φ*( "( ", <12>) = [.p3] ( .s2<14>)

            Èíñòðóêöèÿ:(8,-1)(5,14)ComEnd

 

27.  <12>.p3 ::=  <14>.s2

            Ïðàâèëà: p3=s2

            Ññûëêè: s2=-1

            Âûáîð: "false "

            Ôóíêöèÿ:  φ*( "false", <12>) = [.p3] ( .s2<14>)                    

 

            Èíñòðóêöèÿ:(8,-1)(5,14)ComEnd

 

28.  <12>.p3 ::=  <14>.s2

            Ïðàâèëà: p3=s2

            Ññûëêè: s2=-1

            Âûáîð: "true"

            Ôóíêöèÿ:  φ*( "true", <12>) = [.p3] ( .s2<14>)

            Èíñòðóêöèÿ:(8,-1)(5,14)ComEnd

 

29.  <13>.q2.r2 ::= "&"<12>.p2{2}.x4.x5.x6<13>.q3.r3

            Ïðàâèëà: q2=q3, x4=p2, x5=r2, r3=x6

            Ññûëêè: x6=-3, p2=-2, x5=-6, q3=-2,

            Âûáîð: "&"

            Ôóíêöèÿ:  φ("&", <13>) = [.r2.q2] ( .r3.q3<13>.x6.x5.x4{2}.p2<12>"&")

            Èíñòðóêöèÿ:(8,nl)(8,-2)(5,13)(8,-3)(8,-6)(8,nl)(6,2)(8,-2)(5,12)(4,5)ComEnd

 

30.  <13>.q4.r4 ::= {8}

Ïðàâèëà: q4=r4

            Ññûëêè

            Âûáîð: ";"

            Ôóíêöèÿ:  φ*( ";", <13>) = [.r4.q4] ()

            Èíñòðóêöèÿ:(6,8)ComEnd

 

31.  <13>.q4.r4 ::= {8}

Ïðàâèëà: q4=r4

            Ññûëêè

            Âûáîð: "|"

            Ôóíêöèÿ:  φ*( "|", <11>) = [.r4.q4] ()

            Èíñòðóêöèÿ:(6,8)ComEnd

 

32.  <13>.q4.r4 ::= {8}

Ïðàâèëà: q4=r4

            Ññûëêè

            Âûáîð: ")"

            Ôóíêöèÿ:  φ*( ")", <11>) = [.r4.q4] ({8})

            Èíñòðóêöèÿ:(6,8)ComEnd

 

33.  <14>.s3::="Èäåíòèôèêàòîð"{7}.c2

Ïðàâèëà: s3=c2

            Ññûëêè: c2=-1

            Âûáîð: " Èäåíòèôèêàòîð "

            Ôóíêöèÿ:  φ( " Èäåíòèôèêàòîð ", <14>) = [.s3] ( .c2{7}"Èäåíòèôèêàòîð")

            Èíñòðóêöèÿ: (9,1)(8,-2)(6,7)(1,0)ComEnd

 

34.  <14>.s4::= "("<9>.k3")"

Ïðàâèëà:  s4=k3

            Ññûëêè: c2=-2

            Âûáîð: " ( "

            Ôóíêöèÿ:  φ( " (", <14>) = [.s4] ( ")".k3<9>"(")

 

                        Èíñòðóêöèÿ: (4,9)(8,-2)(5,9)(4,8)ComEnd

 

35.   <14>.s5::= "false"{9}.t1

Ïðàâèëà: s5=t1

            Ññûëêè: t1=-1

            Âûáîð: "false"

            Ôóíêöèÿ:  φ( "false", <14>) = [.s5] (.t1{9}"false")

            Èíñòðóêöèÿ(9,1)(8,-2)(6,9)(3,2)ComEnd

 

36/  <14>.s6::= "true"{9}.t2

Ïðàâèëà:  s6=t2

            Ññûëêè: t2=-1

            Âûáîð: "true"

            Ôóíêöèÿ:  φ( "true", <14>) = [.s6] (.t2{9}"true")

            Èíñòðóêöèÿ(9,1)(8,-2)(6,9)(3,1)ComEnd

 


Ïðåä.Ñòðàíèöà  Ðàçäåë Ñîäåðæàíèå