Проектировании транслятора (язык проектирования Си++) с языка Си++ на язык Ассемблер (Лабораторная работа № 1-4), страница 14

0 0 0      2 26 0    1 0 11   

0 0 1      1 0 7      2 26 0    1 0 4      3 0 0      1 0 8      2 26 0    1 0 2      2 26 0    1 0 1      3 1 1            1 0 11   

2 32 0    1 0 2      2 32 0    1 0 0      3 1 1      1 0 11   

1 0 10   

2 26 0    1 0 2      2 34 0    1 0 0      3 1 2      1 0 11   

1 0 10

error.txt

error2.txt

Undeclared identifier: i

Undeclared identifier: i

Redefinition: a0

Undeclared identifier: i

postfix.txt

2 32 0   3 0 0    1 0 2                                             g 0 =

2 26 0   3 1 0    1 0 2                                            a0 5 =

0 0 1    2 32 0   3 3 0    1 0 5                               while g 3 <

2 34 0   2 34 0   3 1 1    1 0 0    1 0 2                  i i 1 + =

0 0 1    2 26 0   3 0 0    1 0 4                               while a0 0 >=

2 26 0   2 26 0   3 1 1    1 0 1    1 0 2                  a0 a0 1 - =

1 0 10                                                                     }

2 32 0   2 32 0   3 1 1    1 0 0    1 0 2                  g g 1 + =

1 0 10                                                                     }

2 26 0   2 34 0   3 1 2    1 0 0    1 0 2                  a0 i 100 + =

№2

(файл без ошибок)

main()

{

      int g=0,a0=10,i;

      while (g<3)

      { 

            //int a0=10;

            i=i+1;

            while (a0>0) a0=a0-1;

            g=g+1;

      }

      a0=i+100;

}

token.txt

0 0 2      1 0 7      1 0 8     

1 0 9     

0 0 0      2 32 0    1 0 2      3 0 0      1 0 12    2 26 0    1 0 2      3 1 0      1 0 12    2 34 0    1 0 11         

0 0 1      1 0 7      2 32 0    1 0 5      3 3 0      1 0 8     

1 0 9     

2 26 0    1 0 2      3 1 0      1 0 11   

2 34 0    1 0 2      2 34 0    1 0 0      3 1 1      1 0 11   

0 0 1      1 0 7      2 26 0    1 0 6      3 0 0      1 0 8      2 26 0    1 0 2      2 26 0    1 0 1      3 1 1            1 0 11   

2 32 0    1 0 2      2 32 0    1 0 0      3 1 1      1 0 11   

1 0 10   

2 26 0    1 0 2      2 34 0    1 0 0      3 1 2      1 0 11   

1 0 10 

error.txt   error2.txt

(файлы ошибок пусты)

postfix.txt

2 32 0    3 0 0      1 0 2     

2 26 0    3 1 0      1 0 2     

0 0 1      2 32 0    3 3 0      1 0 5     

2 26 0    3 1 0      1 0 2     

2 34 0    2 34 0    3 1 1      1 0 0      1 0 2     

0 0 1      2 26 0    3 0 0      1 0 6     

2 26 0    2 26 0    3 1 1      1 0 1      1 0 2     

1 0 10   

2 32 0    2 32 0    3 1 1      1 0 0      1 0 2     

1 0 10   

2 26 0    2 34 0    3 1 2      1 0 0      1 0 2     

5.4

(файл без ошибок)

main()

{

      int g=0,a0=10,i;

      while (g<3)

      { 

            //int a0=10;

            i=i+1;

            while (a0>0) a0=a0-1;

            g=g+1;

      }

      a0=i+100;

}

token.txt

0 0 2      1 0 7      1 0 8     

1 0 9     

0 0 0      2 32 0    1 0 2      3 0 0      1 0 12    2 26 0    1 0 2      3 1 0      1 0 12    2 34 0    1 0 11         

0 0 1      1 0 7      2 32 0    1 0 5      3 3 0      1 0 8     

1 0 9     

2 26 0    1 0 2      3 1 0      1 0 11   

2 34 0    1 0 2      2 34 0    1 0 0      3 1 1      1 0 11   

0 0 1      1 0 7      2 26 0    1 0 6      3 0 0      1 0 8      2 26 0    1 0 2      2 26 0    1 0 1      3 1 1            1 0 11   

2 32 0    1 0 2      2 32 0    1 0 0      3 1 1      1 0 11   

1 0 10   

2 26 0    1 0 2      2 34 0    1 0 0      3 1 2      1 0 11   

1 0 10 

error.txt   error2.txt

(файлы ошибок пусты)

postfix.txt

2 32 0    3 0 0      1 0 2     

2 26 0    3 1 0      1 0 2     

0 0 1      2 32 0    3 3 0      1 0 5     

2 26 0    3 1 0      1 0 2     

2 34 0    2 34 0    3 1 1      1 0 0      1 0 2     

0 0 1      2 26 0    3 0 0      1 0 6     

2 26 0    2 26 0    3 1 1      1 0 1      1 0 2     

1 0 10   

2 32 0    2 32 0    3 1 1      1 0 0      1 0 2     

1 0 10   

2 26 0    2 34 0    3 1 2      1 0 0      1 0 2     

prog_asm.