From 4c0091765e21cad02b6a80b635ec9b7e1f894e97 Mon Sep 17 00:00:00 2001
From: hm19 <hm19@inf.ufpr.br>
Date: Tue, 3 Dec 2024 17:44:02 -0300
Subject: [PATCH] Parte 1 pronta

---
 AvaliaTrabs/MEPA          |  49 +--
 AvaliaTrabs/compilador    | Bin 88872 -> 54640 bytes
 AvaliaTrabs/res           |  20 --
 ORIGNAL/MEPA              |  63 ++--
 ORIGNAL/compilador        | Bin 54640 -> 54640 bytes
 ORIGNAL/compilador.output | 701 +++++++++++++++++++-------------------
 ORIGNAL/compilador.tab.c  | 318 +++++++++--------
 ORIGNAL/compilador.y      |  14 +-
 compilador.y              |  13 +-
 9 files changed, 566 insertions(+), 612 deletions(-)

diff --git a/AvaliaTrabs/MEPA b/AvaliaTrabs/MEPA
index 886e7b6..5b78212 100644
--- a/AvaliaTrabs/MEPA
+++ b/AvaliaTrabs/MEPA
@@ -1,46 +1,11 @@
      INPP
-     AMEM 1
+     AMEM 2
      DSVS R00
-R01: ENPR 1 
-     AMEM 1
-     DSVS R02
-R02: NADA 
-     CRVL 1, -5
-     CRCT 2
-     CMME
-     DSVF R03
-     CRVI 1, -4
-     CRVL 1, -5
-     SOMA
-     ARMI 1, -4
-     DSVS R04
-R03: NADA 
-     CRVI 1, -4
-     ARMZ 1, 0
-     CRVL 1, -5
-     CRCT 1
-     SUBT
-     CREN 1, 0
-     CHPR R01, 1
-     CRVL 1, 0
-     ARMI 1, -4
-     CRVL 1, -5
-     CRCT 2
-     SUBT
-     CREN 1, -4
-     CHPR R01, 1
-R04: NADA 
-     CRVL 1, -5
-     IMPR
-     CRVI 1, -4
-     IMPR
-     DMEM 1
-     RTPR 1, 2
 R00: NADA 
-     CRCT 0
+     LEIT
      ARMZ 0, 0
-     CRCT 3
-     CREN 0, 0
-     CHPR R01, 0
-     DMEM 1
-     PARA
+     LEIT
+     ARMZ 0, 1
+     CRVL 0, 0
+     CRCT 1
+     SOMA
diff --git a/AvaliaTrabs/compilador b/AvaliaTrabs/compilador
index 418d2e5150ad0514bff0d362109afc3681e4d3a3..ee427a95eb2852f72843c33cef74c5830b950ce3 100755
GIT binary patch
literal 54640
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
T-$8sB);|kj{ew_&5?wz4xvl}L

literal 88872
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
LJBYaKX<+~W065td

diff --git a/AvaliaTrabs/res b/AvaliaTrabs/res
index 0d287c1..5977d02 100644
--- a/AvaliaTrabs/res
+++ b/AvaliaTrabs/res
@@ -47,23 +47,3 @@ Tabela de Símbolos:
  numero     # 1 
  fecha_parenteses     # ) 
  then     # then 
- ident      # n 
- atribuicao      # := 
- numero     # 1 
- pt_virgula      # ; 
-write      # write 
- abre_parenteses      # ( 
- ident      # n 
- fecha_parenteses     # ) 
-
-Tabela de Símbolos:
-----------------------------------------------------------------------------------
-| Ident      | Categ    | Nivel    | Tipo       | Desloc     | Detalhes             |
-----------------------------------------------------------------------------------
-| k          | VS       | 0        | Inteiro    | 1          | -                    |
-| n          | VS       | 0        | Inteiro    | 0          | -                    |
-----------------------------------------------------------------------------------
- pt_virgula      # ; 
-end      # end 
-Tabela de Símbolos está vazia ou não inicializada.
- ponto      # . 
diff --git a/ORIGNAL/MEPA b/ORIGNAL/MEPA
index b5e90a0..f896f3e 100644
--- a/ORIGNAL/MEPA
+++ b/ORIGNAL/MEPA
@@ -1,46 +1,55 @@
      INPP
-     AMEM 1
+     AMEM 3
      DSVS R00
 R01: ENPR 1 
      AMEM 1
      DSVS R02
 R02: NADA 
-     CRVL 1, -5
+     CRVL 0, 2
+     CRVL 0, 2
+     MULT
+     ARMZ 1, 0
+     CRVL 0, 2
+     CRCT 2
+     DIVI
      CRCT 2
-     CMME
+     MULT
+     CRVL 0, 2
+     CMIG
      DSVF R03
-     CRVI 1, -4
-     CRVL 1, -5
+     CRVL 0, 1
+     CRVL 1, 0
      SOMA
-     ARMI 1, -4
+     ARMZ 0, 1
      DSVS R04
 R03: NADA 
-     CRVI 1, -4
-     ARMZ 1, 0
-     CRVL 1, -5
-     CRCT 1
-     SUBT
-     CREN 1, 0
-     CHPR R01, 1
+     CRVL 0, 1
      CRVL 1, 0
-     ARMI 1, -4
-     CRVL 1, -5
-     CRCT 2
      SUBT
-     CRVL 1, -4
-     CHPR R01, 1
+     ARMZ 0, 1
 R04: NADA 
-     CRVL 1, -5
-     IMPR
-     CRVI 1, -4
-     IMPR
      DMEM 1
-     RTPR 1, 2
+     RTPR 1, 0
 R00: NADA 
-     CRCT 0
+     LEIT
      ARMZ 0, 0
-     CRCT 3
-     CREN 0, 0
+     CRCT 0
+     ARMZ 0, 1
+     CRCT 0
+     ARMZ 0, 2
+R05: NADA 
+     CRVL 0, 2
+     CRVL 0, 0
+     CMEG
+     DSVF R06
      CHPR R01, 0
-     DMEM 1
+     CRVL 0, 1
+     IMPR
+     CRVL 0, 2
+     CRCT 1
+     SOMA
+     ARMZ 0, 2
+     DSVS R05
+R06: NADA 
+     DMEM 3
      PARA
diff --git a/ORIGNAL/compilador b/ORIGNAL/compilador
index 9bf17f6a56ed79edbea5c6a05eee54ce8c6f6917..ee427a95eb2852f72843c33cef74c5830b950ce3 100755
GIT binary patch
delta 1169
zcmeyciuuDT<_%YvL@fCy=NHrp?LP5w|2uV+{YU;iadY1Mg2~yIv3;|S!vrzL_RV|4
ziWwQ(HycI-nACF%^)c|P_Hl{p8uVFNoA>qg_1PHr*_rm)_c`{tIrR1QvAFhW_IY^r
z`MdTp_JxG@MZ|&>#r6621@!gx#q=e`GxqiM*}m&bWbD%vU=-*}=}YZP_B810OY6(d
z;pt0Ygo8f8KH=|ueUW{A$uW6-xrIf2Mj*X?eFERX;N82vzP`jh#=e5SKF?%>;_r%#
zeSO~rJV6%r^?mQ_D`D*WKG~=@L^?V)ogqAmfkDq8ks&dKL0w6efq}!?hQZdEVe*1r
zCBC@$m_+}8ppd}e(6Gpe$>)3Zt@`@<RzVEvOYiGj31#;6^#%6z^)dJL_4j4y_iY3V
z%Yw<iz7KtU2X~*kFxjflFLn-tB!db=B*QueZ3ah%DuytIaE1zo2!<MlS_UHqV+Ioj
zQwB2z7lvqt7=~DeIEHwJCWd(o>lx-Vm^0)v6fjsY6f$@)crth~crzq1STa~KSTihU
zuwe*huw_V|?8qctpU6<cP{&ZlP|x7XkiamFp@<=eL4$#rL6d=%!Ht2Ffs3Jqp_GA*
zA(w%LVIspMhRF<57}OZD7_u338MqnR89Ep`8M+v{8G0D>7*;Z@VsK|z#*o60%8<s8
z&XB>730BF@pvKV4(8r+5uz<mU!H|K6VJ<^I!vqFB2HtuG0fzbimoj|&FUYW*L7YL3
zL5x9*L5)F{;p6|c3`z`(81%tfR2kMV*fH2MI5GGz_%f`<u)>eQpCOPTfFXz>lp%^?
zBSSeuCBvcrc?^vV)eOxHQyFG3G%(C$Xk(bgu!LbY!wQBC4AU8$8HyR|TNxM_6d4vW
zz<@f80jFIV0vIA0f*7J0SQuOxDj0kjq#4*47#KJhco}#ZSQ*$DSQ!EtSQyk8n4vs2
z1}+8_22}=L26hyOih||U8D=raF~~D0Feox8)iWqVm2!cDikG2{L4!e)ftR6yA%`KC
zL6m`?fsH|eVI~6)11H0524Myv1|9|$1}?DWOBi?=rZA{Obu0#paWJqjurSO=SOK+x
zn}MA{f`NlUoPmddonbu#I|DldAA>C~0}I#}k_@a2d<+~6Vhn5y9AHUyhDrt<27iVm
zhX4Pi7$!0NhXQ$c$S_Q{oS31Ll$t9iub`-;tfDHd#v2=#kmMJT7{Kny?#AowW2wi-
z62ZzECYA&SlTS}HnansTgd-^_DLFYgHDz+_qzW!(W=3XaMh0d^=FRsfEo7P8GF@l$
zn(0U67&lEW+$PSrX>#W_cSeE97q^K^3NS)!uVrFjU}O+raF__;Z`#bbJzow0U->4B

delta 1149
zcmeyciuuDT<_%YvMBc7jxh(sIpPJIY@OfJ$j}-5En5?k*1(UNaW6x$ChY4bgJ)8H2
z6*DsSY&MJtFsbL~>l09r>0>uHGVZgpu<GmU>$5TGv$gMY=yU1|3h(RdV|MLh>kAF*
zb8+os>`O@Oi%tS5ith{P3-0UdOYTdFW9;j*{=?Fj%Gk&Dm+^03T3>o!MwoG5UuIv9
zcpoDe#Dd5^**>*DeSM~VeHqF5eR<i1eT+sRv;Kg=Ulx|WzP{8x#=fGyzOW4Al0Vvv
zeSLrahJlpy_5JDVD`o8a!@w}vs5e9^CN4cRBAS6g&mfT@F@-^0NtJ<t!`g<y)_L;6
zUM1f6SpR^akig)?u<)qJ$rpR|Z5SB(`ubKujOxqk>stwB_VxAo_Vx9#_VxAm<?8os
z1PjZ7$-cf1eSL>FpSn2Ns?RTW7K0>%3PU8r8U}3!M}|s<Fotl3a)t<oYK9sHBL-sz
z69!WTGX@uiXoeVuScW);c!oxXISgwV<}#Qw<T2zkSTGbYcrbV}crkc0Br;esSTR^L
zEM%}@2xhQl$e8TNBwb&~P|Q%vP|8rp;L0$CL5(4SL4!e;L6d=#fs4V7ftf*#frUYj
zL6@O~p@pH9p^c%Pp@X55L64z{ft6wY|7?a#hAf7Dh6xO83<eB_3`-c?8Q2+e7$!1I
zV$cVREN583Fq@&9p@$)fA(<hCA(bJGA)R3!LoY)g12+RtJ;P!KK?Yuir3?ZL3mCrr
z7iSP-&|;8fSk2(X@bUj-1|^1-3~~&sP&6YOq{^_KL5;zV!Jff~!I#00A%G!}!Ji?B
zA&TM9|1yROhERqEh8YaG3|$P<7^)biGt@K8WN>C!#ITHE9m7<HB8K{AhWQK-pa`Mh
zq&k%4%Mid22{w|2p`3w>!IgoHftP`UffY<MFmN$2Gl(+qG6bSHQj~#}ftNvoL7G8@
zK^3f)g+YTslVJvfIs-3*8dyY~L8G2Q6U?j!2c#T>Jc9y*B7+ixGD8<bHbV{rI|DDn
zbOufaeukM0Yz&haco>8kco<k1co`Nka4_&PNHXv;%w-T_Sjd2^7n#k=u$F;~ftP`o
zfrWvEft!JYL4tvuL7ah|fscWm!Im9t9LPsvU>9?Mg>@J>7}y!u87dh384?*LF#HDt
zDJTu*{Qv)7ezN7n431Pec?Cr!<=n}uCQ5OHC4qt1<g*h^CjXxp#*vtml$4yDoH{vn
zQUw<yGcyP=Ff(qxKWQNg)06#^>!#~%-Z1@u9OH(`h1<j#H%#u_=FTWJ`QkQlNhwB1
Y4Ae3)FfcL*FgQ$v@HcE`+@3E709%qT-v9sr

diff --git a/ORIGNAL/compilador.output b/ORIGNAL/compilador.output
index bb877c3..987a2ab 100644
--- a/ORIGNAL/compilador.output
+++ b/ORIGNAL/compilador.output
@@ -147,27 +147,27 @@ Grammar
    76 lista_escritas: lista_escritas VIRGULA expressao_simples
    77               | expressao_simples
 
-   78 expressao: expressao IGUAL expressao_simples
-   79          | expressao DIFERENTE expressao_simples
-   80          | expressao MENOR expressao_simples
-   81          | expressao MENOR_IGUAL expressao_simples
-   82          | expressao MAIOR expressao_simples
-   83          | expressao MAIOR_IGUAL expressao_simples
-   84          | expressao_simples
+   78 expressao: expressao_simples IGUAL expressao_simples
+   79          | expressao_simples DIFERENTE expressao_simples
+   80          | expressao_simples MENOR expressao_simples
+   81          | expressao_simples MENOR_IGUAL expressao_simples
+   82          | expressao_simples MAIOR expressao_simples
+   83          | expressao_simples MAIOR_IGUAL expressao_simples
 
-   85 expressao_simples: expressao_simples MAIS termo
-   86                  | expressao_simples MENOS termo
-   87                  | termo
+   84 expressao_simples: expressao_simples MAIS termo
+   85                  | expressao_simples MENOS termo
+   86                  | termo
 
-   88 termo: termo ASTERISCO fator
-   89      | termo DIV fator
-   90      | fator
+   87 termo: termo ASTERISCO fator
+   88      | termo DIV fator
+   89      | fator
 
-   91 $@21: %empty
+   90 $@21: %empty
 
-   92 fator: IDENT $@21 chamada_procedimento
-   93      | NUMERO
-   94      | ABRE_PARENTESES expressao FECHA_PARENTESES
+   91 fator: IDENT $@21 chamada_procedimento
+   92      | NUMERO
+   93      | ABRE_PARENTESES expressao FECHA_PARENTESES
+   94      | ABRE_PARENTESES expressao_simples FECHA_PARENTESES
 
    95 numero: NUMERO
 
@@ -192,8 +192,8 @@ Terminals, with rules where they appear
     $end (0) 0
     error (256)
     PROGRAM (258) 2
-    ABRE_PARENTESES (259) 2 34 65 71 75 94
-    FECHA_PARENTESES (260) 2 34 65 71 75 94
+    ABRE_PARENTESES (259) 2 34 65 71 75 93 94
+    FECHA_PARENTESES (260) 2 34 65 71 75 93 94
     VIRGULA (261) 6 18 20 42 68 72 76
     PONTO_E_VIRGULA (262) 2 16 27 31 37 46 47
     DOIS_PONTOS (263) 16 31 39 41 49
@@ -201,7 +201,7 @@ Terminals, with rules where they appear
     T_BEGIN (265) 45
     T_END (266) 45
     VAR (267) 10 39
-    IDENT (268) 2 17 18 19 20 21 27 31 44 58 74 92
+    IDENT (268) 2 17 18 19 20 21 27 31 44 58 74 91
     ATRIBUICAO (269) 62
     LABEL (270) 6
     TYPE (271)
@@ -215,7 +215,7 @@ Terminals, with rules where they appear
     WHILE (279) 98
     DO (280) 98
     OR (281)
-    DIV (282) 89
+    DIV (282) 88
     AND (283)
     NOT (284)
     IGUAL (285) 78
@@ -224,10 +224,10 @@ Terminals, with rules where they appear
     MAIOR_IGUAL (288) 83
     MENOR (289) 80
     MAIOR (290) 82
-    MAIS (291) 85
-    MENOS (292) 86
-    ASTERISCO (293) 88
-    NUMERO (294) 93 95
+    MAIS (291) 84
+    MENOS (292) 85
+    ASTERISCO (293) 87
+    NUMERO (294) 92 95
     READ (295) 71
     WRITE (296) 75
     LOWER_THAN_ELSE (297)
@@ -365,7 +365,7 @@ Nonterminals, with rules where they appear
         on right: 62
     chamada_procedimento (86)
         on left: 64
-        on right: 60 92
+        on right: 60 91
     $@18 (87)
         on left: 63
         on right: 64
@@ -397,20 +397,20 @@ Nonterminals, with rules where they appear
         on left: 76 77
         on right: 75 76
     expressao (97)
-        on left: 78 79 80 81 82 83 84
-        on right: 78 79 80 81 82 83 94 98 103
+        on left: 78 79 80 81 82 83
+        on right: 93 98 103
     expressao_simples (98)
-        on left: 85 86 87
-        on right: 62 68 70 76 77 78 79 80 81 82 83 84 85 86
+        on left: 84 85 86
+        on right: 62 68 70 76 77 78 79 80 81 82 83 84 85 94
     termo (99)
-        on left: 88 89 90
-        on right: 85 86 87 88 89
+        on left: 87 88 89
+        on right: 84 85 86 87 88
     fator (100)
-        on left: 92 93 94
-        on right: 88 89 90
+        on left: 91 92 93 94
+        on right: 87 88 89
     $@21 (101)
-        on left: 91
-        on right: 92
+        on left: 90
+        on right: 91
     numero (102)
         on left: 95
         on right: 49
@@ -1035,95 +1035,92 @@ State 68
 
 State 69
 
-   94 fator: ABRE_PARENTESES . expressao FECHA_PARENTESES
+   93 fator: ABRE_PARENTESES . expressao FECHA_PARENTESES
+   94      | ABRE_PARENTESES . expressao_simples FECHA_PARENTESES
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
     expressao          go to state 96
-    expressao_simples  go to state 73
+    expressao_simples  go to state 97
     termo              go to state 74
     fator              go to state 75
 
 
 State 70
 
-   92 fator: IDENT . $@21 chamada_procedimento
+   91 fator: IDENT . $@21 chamada_procedimento
 
-    $default  reduce using rule 91 ($@21)
+    $default  reduce using rule 90 ($@21)
 
-    $@21  go to state 97
+    $@21  go to state 98
 
 
 State 71
 
-   93 fator: NUMERO .
+   92 fator: NUMERO .
 
-    $default  reduce using rule 93 (fator)
+    $default  reduce using rule 92 (fator)
 
 
 State 72
 
-   78 expressao: expressao . IGUAL expressao_simples
-   79          | expressao . DIFERENTE expressao_simples
-   80          | expressao . MENOR expressao_simples
-   81          | expressao . MENOR_IGUAL expressao_simples
-   82          | expressao . MAIOR expressao_simples
-   83          | expressao . MAIOR_IGUAL expressao_simples
   103 if_then: IF expressao . $@24 THEN comando_sem_rotulo
 
-    IGUAL        shift, and go to state 98
-    DIFERENTE    shift, and go to state 99
-    MENOR_IGUAL  shift, and go to state 100
-    MAIOR_IGUAL  shift, and go to state 101
-    MENOR        shift, and go to state 102
-    MAIOR        shift, and go to state 103
-
     $default  reduce using rule 102 ($@24)
 
-    $@24  go to state 104
+    $@24  go to state 99
 
 
 State 73
 
-   84 expressao: expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
-
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
-
-    $default  reduce using rule 84 (expressao)
+   78 expressao: expressao_simples . IGUAL expressao_simples
+   79          | expressao_simples . DIFERENTE expressao_simples
+   80          | expressao_simples . MENOR expressao_simples
+   81          | expressao_simples . MENOR_IGUAL expressao_simples
+   82          | expressao_simples . MAIOR expressao_simples
+   83          | expressao_simples . MAIOR_IGUAL expressao_simples
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
+
+    IGUAL        shift, and go to state 100
+    DIFERENTE    shift, and go to state 101
+    MENOR_IGUAL  shift, and go to state 102
+    MAIOR_IGUAL  shift, and go to state 103
+    MENOR        shift, and go to state 104
+    MAIOR        shift, and go to state 105
+    MAIS         shift, and go to state 106
+    MENOS        shift, and go to state 107
 
 
 State 74
 
-   87 expressao_simples: termo .
-   88 termo: termo . ASTERISCO fator
-   89      | termo . DIV fator
+   86 expressao_simples: termo .
+   87 termo: termo . ASTERISCO fator
+   88      | termo . DIV fator
 
-    DIV        shift, and go to state 107
-    ASTERISCO  shift, and go to state 108
+    DIV        shift, and go to state 108
+    ASTERISCO  shift, and go to state 109
 
-    $default  reduce using rule 87 (expressao_simples)
+    $default  reduce using rule 86 (expressao_simples)
 
 
 State 75
 
-   90 termo: fator .
+   89 termo: fator .
 
-    $default  reduce using rule 90 (termo)
+    $default  reduce using rule 89 (termo)
 
 
 State 76
 
    71 leitura: READ ABRE_PARENTESES . lista_leituras FECHA_PARENTESES
 
-    IDENT  shift, and go to state 109
+    IDENT  shift, and go to state 110
 
-    lista_leituras  go to state 110
-    simb_leitura    go to state 111
+    lista_leituras  go to state 111
+    simb_leitura    go to state 112
 
 
 State 77
@@ -1134,8 +1131,8 @@ State 77
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    lista_escritas     go to state 112
-    expressao_simples  go to state 113
+    lista_escritas     go to state 113
+    expressao_simples  go to state 114
     termo              go to state 74
     fator              go to state 75
 
@@ -1165,7 +1162,7 @@ State 79
     $default  reduce using rule 47 (comandos)
 
     comando_composto            go to state 50
-    comandos                    go to state 114
+    comandos                    go to state 115
     comando                     go to state 52
     comando_sem_rotulo          go to state 53
     atribuicao_ou_procedimento  go to state 54
@@ -1191,7 +1188,7 @@ State 80
     $default  reduce using rule 96 ($@22)
 
     comando_composto            go to state 50
-    comando_sem_rotulo          go to state 115
+    comando_sem_rotulo          go to state 116
     atribuicao_ou_procedimento  go to state 54
     leitura                     go to state 55
     escrita                     go to state 56
@@ -1209,7 +1206,7 @@ State 81
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao          go to state 116
+    expressao          go to state 117
     expressao_simples  go to state 73
     termo              go to state 74
     fator              go to state 75
@@ -1228,7 +1225,7 @@ State 82
     $default  reduce using rule 96 ($@22)
 
     comando_composto            go to state 50
-    comando_sem_rotulo          go to state 117
+    comando_sem_rotulo          go to state 118
     atribuicao_ou_procedimento  go to state 54
     leitura                     go to state 55
     escrita                     go to state 56
@@ -1249,7 +1246,7 @@ State 84
 
    16 declara_var: $@5 lista_id_var DOIS_PONTOS tipo $@6 . PONTO_E_VIRGULA
 
-    PONTO_E_VIRGULA  shift, and go to state 118
+    PONTO_E_VIRGULA  shift, and go to state 119
 
 
 State 85
@@ -1258,7 +1255,7 @@ State 85
 
     $default  reduce using rule 38 ($@14)
 
-    $@14  go to state 119
+    $@14  go to state 120
 
 
 State 86
@@ -1266,11 +1263,11 @@ State 86
    34 parametros_ou_nada: ABRE_PARENTESES $@12 paramentros_formais . $@13 FECHA_PARENTESES
    37 paramentros_formais: paramentros_formais . PONTO_E_VIRGULA secao_pfs
 
-    PONTO_E_VIRGULA  shift, and go to state 120
+    PONTO_E_VIRGULA  shift, and go to state 121
 
     $default  reduce using rule 33 ($@13)
 
-    $@13  go to state 121
+    $@13  go to state 122
 
 
 State 87
@@ -1284,10 +1281,10 @@ State 88
 
    41 secao_pfs: $@15 . lista_id_pf DOIS_PONTOS tipo
 
-    IDENT  shift, and go to state 122
+    IDENT  shift, and go to state 123
 
-    lista_id_pf  go to state 123
-    parametro    go to state 124
+    lista_id_pf  go to state 124
+    parametro    go to state 125
 
 
 State 89
@@ -1296,7 +1293,7 @@ State 89
 
     IDENT  shift, and go to state 63
 
-    tipo  go to state 125
+    tipo  go to state 126
 
 
 State 90
@@ -1307,7 +1304,7 @@ State 90
 
     $default  reduce using rule 7 (parte_declara_rotulos)
 
-    bloco                  go to state 126
+    bloco                  go to state 127
     parte_declara_rotulos  go to state 15
 
 
@@ -1329,7 +1326,7 @@ State 93
 
    62 atribuicao: $@17 . ATRIBUICAO expressao_simples
 
-    ATRIBUICAO  shift, and go to state 127
+    ATRIBUICAO  shift, and go to state 128
 
 
 State 94
@@ -1343,275 +1340,274 @@ State 95
 
    64 chamada_procedimento: $@18 . lista_parametros
 
-    ABRE_PARENTESES  shift, and go to state 128
+    ABRE_PARENTESES  shift, and go to state 129
 
     $default  reduce using rule 66 (lista_parametros)
 
-    lista_parametros  go to state 129
+    lista_parametros  go to state 130
 
 
 State 96
 
-   78 expressao: expressao . IGUAL expressao_simples
-   79          | expressao . DIFERENTE expressao_simples
-   80          | expressao . MENOR expressao_simples
-   81          | expressao . MENOR_IGUAL expressao_simples
-   82          | expressao . MAIOR expressao_simples
-   83          | expressao . MAIOR_IGUAL expressao_simples
-   94 fator: ABRE_PARENTESES expressao . FECHA_PARENTESES
+   93 fator: ABRE_PARENTESES expressao . FECHA_PARENTESES
 
-    FECHA_PARENTESES  shift, and go to state 130
-    IGUAL             shift, and go to state 98
-    DIFERENTE         shift, and go to state 99
-    MENOR_IGUAL       shift, and go to state 100
-    MAIOR_IGUAL       shift, and go to state 101
-    MENOR             shift, and go to state 102
-    MAIOR             shift, and go to state 103
+    FECHA_PARENTESES  shift, and go to state 131
 
 
 State 97
 
-   92 fator: IDENT $@21 . chamada_procedimento
-
-    $default  reduce using rule 63 ($@18)
-
-    chamada_procedimento  go to state 131
-    $@18                  go to state 95
+   78 expressao: expressao_simples . IGUAL expressao_simples
+   79          | expressao_simples . DIFERENTE expressao_simples
+   80          | expressao_simples . MENOR expressao_simples
+   81          | expressao_simples . MENOR_IGUAL expressao_simples
+   82          | expressao_simples . MAIOR expressao_simples
+   83          | expressao_simples . MAIOR_IGUAL expressao_simples
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
+   94 fator: ABRE_PARENTESES expressao_simples . FECHA_PARENTESES
+
+    FECHA_PARENTESES  shift, and go to state 132
+    IGUAL             shift, and go to state 100
+    DIFERENTE         shift, and go to state 101
+    MENOR_IGUAL       shift, and go to state 102
+    MAIOR_IGUAL       shift, and go to state 103
+    MENOR             shift, and go to state 104
+    MAIOR             shift, and go to state 105
+    MAIS              shift, and go to state 106
+    MENOS             shift, and go to state 107
 
 
 State 98
 
-   78 expressao: expressao IGUAL . expressao_simples
+   91 fator: IDENT $@21 . chamada_procedimento
 
-    ABRE_PARENTESES  shift, and go to state 69
-    IDENT            shift, and go to state 70
-    NUMERO           shift, and go to state 71
+    $default  reduce using rule 63 ($@18)
 
-    expressao_simples  go to state 132
-    termo              go to state 74
-    fator              go to state 75
+    chamada_procedimento  go to state 133
+    $@18                  go to state 95
 
 
 State 99
 
-   79 expressao: expressao DIFERENTE . expressao_simples
-
-    ABRE_PARENTESES  shift, and go to state 69
-    IDENT            shift, and go to state 70
-    NUMERO           shift, and go to state 71
+  103 if_then: IF expressao $@24 . THEN comando_sem_rotulo
 
-    expressao_simples  go to state 133
-    termo              go to state 74
-    fator              go to state 75
+    THEN  shift, and go to state 134
 
 
 State 100
 
-   81 expressao: expressao MENOR_IGUAL . expressao_simples
+   78 expressao: expressao_simples IGUAL . expressao_simples
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 134
+    expressao_simples  go to state 135
     termo              go to state 74
     fator              go to state 75
 
 
 State 101
 
-   83 expressao: expressao MAIOR_IGUAL . expressao_simples
+   79 expressao: expressao_simples DIFERENTE . expressao_simples
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 135
+    expressao_simples  go to state 136
     termo              go to state 74
     fator              go to state 75
 
 
 State 102
 
-   80 expressao: expressao MENOR . expressao_simples
+   81 expressao: expressao_simples MENOR_IGUAL . expressao_simples
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 136
+    expressao_simples  go to state 137
     termo              go to state 74
     fator              go to state 75
 
 
 State 103
 
-   82 expressao: expressao MAIOR . expressao_simples
+   83 expressao: expressao_simples MAIOR_IGUAL . expressao_simples
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 137
+    expressao_simples  go to state 138
     termo              go to state 74
     fator              go to state 75
 
 
 State 104
 
-  103 if_then: IF expressao $@24 . THEN comando_sem_rotulo
+   80 expressao: expressao_simples MENOR . expressao_simples
 
-    THEN  shift, and go to state 138
+    ABRE_PARENTESES  shift, and go to state 69
+    IDENT            shift, and go to state 70
+    NUMERO           shift, and go to state 71
+
+    expressao_simples  go to state 139
+    termo              go to state 74
+    fator              go to state 75
 
 
 State 105
 
-   85 expressao_simples: expressao_simples MAIS . termo
+   82 expressao: expressao_simples MAIOR . expressao_simples
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    termo  go to state 139
-    fator  go to state 75
+    expressao_simples  go to state 140
+    termo              go to state 74
+    fator              go to state 75
 
 
 State 106
 
-   86 expressao_simples: expressao_simples MENOS . termo
+   84 expressao_simples: expressao_simples MAIS . termo
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    termo  go to state 140
+    termo  go to state 141
     fator  go to state 75
 
 
 State 107
 
-   89 termo: termo DIV . fator
+   85 expressao_simples: expressao_simples MENOS . termo
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    fator  go to state 141
+    termo  go to state 142
+    fator  go to state 75
 
 
 State 108
 
-   88 termo: termo ASTERISCO . fator
+   88 termo: termo DIV . fator
 
     ABRE_PARENTESES  shift, and go to state 69
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    fator  go to state 142
+    fator  go to state 143
 
 
 State 109
 
+   87 termo: termo ASTERISCO . fator
+
+    ABRE_PARENTESES  shift, and go to state 69
+    IDENT            shift, and go to state 70
+    NUMERO           shift, and go to state 71
+
+    fator  go to state 144
+
+
+State 110
+
    74 simb_leitura: IDENT .
 
     $default  reduce using rule 74 (simb_leitura)
 
 
-State 110
+State 111
 
    71 leitura: READ ABRE_PARENTESES lista_leituras . FECHA_PARENTESES
    72 lista_leituras: lista_leituras . VIRGULA simb_leitura
 
-    FECHA_PARENTESES  shift, and go to state 143
-    VIRGULA           shift, and go to state 144
+    FECHA_PARENTESES  shift, and go to state 145
+    VIRGULA           shift, and go to state 146
 
 
-State 111
+State 112
 
    73 lista_leituras: simb_leitura .
 
     $default  reduce using rule 73 (lista_leituras)
 
 
-State 112
+State 113
 
    75 escrita: WRITE ABRE_PARENTESES lista_escritas . FECHA_PARENTESES
    76 lista_escritas: lista_escritas . VIRGULA expressao_simples
 
-    FECHA_PARENTESES  shift, and go to state 145
-    VIRGULA           shift, and go to state 146
+    FECHA_PARENTESES  shift, and go to state 147
+    VIRGULA           shift, and go to state 148
 
 
-State 113
+State 114
 
    77 lista_escritas: expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
     $default  reduce using rule 77 (lista_escritas)
 
 
-State 114
+State 115
 
    46 comandos: comando PONTO_E_VIRGULA comandos .
 
     $default  reduce using rule 46 (comandos)
 
 
-State 115
+State 116
 
    49 comando: numero DOIS_PONTOS comando_sem_rotulo .
 
     $default  reduce using rule 49 (comando)
 
 
-State 116
+State 117
 
-   78 expressao: expressao . IGUAL expressao_simples
-   79          | expressao . DIFERENTE expressao_simples
-   80          | expressao . MENOR expressao_simples
-   81          | expressao . MENOR_IGUAL expressao_simples
-   82          | expressao . MAIOR expressao_simples
-   83          | expressao . MAIOR_IGUAL expressao_simples
    98 comando_repetitivo: $@22 WHILE expressao . DO $@23 comando_sem_rotulo
 
-    DO           shift, and go to state 147
-    IGUAL        shift, and go to state 98
-    DIFERENTE    shift, and go to state 99
-    MENOR_IGUAL  shift, and go to state 100
-    MAIOR_IGUAL  shift, and go to state 101
-    MENOR        shift, and go to state 102
-    MAIOR        shift, and go to state 103
+    DO  shift, and go to state 149
 
 
-State 117
+State 118
 
   100 cond_else: ELSE comando_sem_rotulo .
 
     $default  reduce using rule 100 (cond_else)
 
 
-State 118
+State 119
 
    16 declara_var: $@5 lista_id_var DOIS_PONTOS tipo $@6 PONTO_E_VIRGULA .
 
     $default  reduce using rule 16 (declara_var)
 
 
-State 119
+State 120
 
    39 secao_pfs: VAR $@14 . lista_id_pf DOIS_PONTOS tipo
 
-    IDENT  shift, and go to state 122
+    IDENT  shift, and go to state 123
 
-    lista_id_pf  go to state 148
-    parametro    go to state 124
+    lista_id_pf  go to state 150
+    parametro    go to state 125
 
 
-State 120
+State 121
 
    37 paramentros_formais: paramentros_formais PONTO_E_VIRGULA . secao_pfs
 
@@ -1619,58 +1615,58 @@ State 120
 
     $default  reduce using rule 40 ($@15)
 
-    secao_pfs  go to state 149
+    secao_pfs  go to state 151
     $@15       go to state 88
 
 
-State 121
+State 122
 
    34 parametros_ou_nada: ABRE_PARENTESES $@12 paramentros_formais $@13 . FECHA_PARENTESES
 
-    FECHA_PARENTESES  shift, and go to state 150
+    FECHA_PARENTESES  shift, and go to state 152
 
 
-State 122
+State 123
 
    44 parametro: IDENT .
 
     $default  reduce using rule 44 (parametro)
 
 
-State 123
+State 124
 
    41 secao_pfs: $@15 lista_id_pf . DOIS_PONTOS tipo
 
-    DOIS_PONTOS  shift, and go to state 151
+    DOIS_PONTOS  shift, and go to state 153
 
 
-State 124
+State 125
 
    42 lista_id_pf: parametro . VIRGULA lista_id_pf
    43            | parametro .
 
-    VIRGULA  shift, and go to state 152
+    VIRGULA  shift, and go to state 154
 
     $default  reduce using rule 43 (lista_id_pf)
 
 
-State 125
+State 126
 
    31 declaracao_funcao: FUNCTION IDENT $@9 parametros_ou_nada DOIS_PONTOS $@10 tipo . PONTO_E_VIRGULA bloco $@11 PONTO_E_VIRGULA
 
-    PONTO_E_VIRGULA  shift, and go to state 153
+    PONTO_E_VIRGULA  shift, and go to state 155
 
 
-State 126
+State 127
 
    27 declaracao_procedimento: PROCEDURE IDENT $@7 parametros_ou_nada PONTO_E_VIRGULA bloco . $@8 PONTO_E_VIRGULA
 
     $default  reduce using rule 26 ($@8)
 
-    $@8  go to state 154
+    $@8  go to state 156
 
 
-State 127
+State 128
 
    62 atribuicao: $@17 ATRIBUICAO . expressao_simples
 
@@ -1678,199 +1674,206 @@ State 127
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 155
+    expressao_simples  go to state 157
     termo              go to state 74
     fator              go to state 75
 
 
-State 128
+State 129
 
    65 lista_parametros: ABRE_PARENTESES . lista_parametros_parenteses FECHA_PARENTESES
 
     $default  reduce using rule 69 ($@20)
 
-    lista_parametros_parenteses  go to state 156
-    $@20                         go to state 157
+    lista_parametros_parenteses  go to state 158
+    $@20                         go to state 159
 
 
-State 129
+State 130
 
    64 chamada_procedimento: $@18 lista_parametros .
 
     $default  reduce using rule 64 (chamada_procedimento)
 
 
-State 130
-
-   94 fator: ABRE_PARENTESES expressao FECHA_PARENTESES .
-
-    $default  reduce using rule 94 (fator)
-
-
 State 131
 
-   92 fator: IDENT $@21 chamada_procedimento .
+   93 fator: ABRE_PARENTESES expressao FECHA_PARENTESES .
 
-    $default  reduce using rule 92 (fator)
+    $default  reduce using rule 93 (fator)
 
 
 State 132
 
-   78 expressao: expressao IGUAL expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   94 fator: ABRE_PARENTESES expressao_simples FECHA_PARENTESES .
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
-
-    $default  reduce using rule 78 (expressao)
+    $default  reduce using rule 94 (fator)
 
 
 State 133
 
-   79 expressao: expressao DIFERENTE expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
-
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+   91 fator: IDENT $@21 chamada_procedimento .
 
-    $default  reduce using rule 79 (expressao)
+    $default  reduce using rule 91 (fator)
 
 
 State 134
 
-   81 expressao: expressao MENOR_IGUAL expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+  103 if_then: IF expressao $@24 THEN . comando_sem_rotulo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    T_BEGIN  shift, and go to state 38
+    IDENT    shift, and go to state 45
+    IF       shift, and go to state 46
+    READ     shift, and go to state 48
+    WRITE    shift, and go to state 49
 
-    $default  reduce using rule 81 (expressao)
+    $default  reduce using rule 96 ($@22)
+
+    comando_composto            go to state 50
+    comando_sem_rotulo          go to state 160
+    atribuicao_ou_procedimento  go to state 54
+    leitura                     go to state 55
+    escrita                     go to state 56
+    comando_repetitivo          go to state 58
+    $@22                        go to state 59
+    comando_condicional         go to state 60
+    if_then                     go to state 61
 
 
 State 135
 
-   83 expressao: expressao MAIOR_IGUAL expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   78 expressao: expressao_simples IGUAL expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    $default  reduce using rule 83 (expressao)
+    $default  reduce using rule 78 (expressao)
 
 
 State 136
 
-   80 expressao: expressao MENOR expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   79 expressao: expressao_simples DIFERENTE expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    $default  reduce using rule 80 (expressao)
+    $default  reduce using rule 79 (expressao)
 
 
 State 137
 
-   82 expressao: expressao MAIOR expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   81 expressao: expressao_simples MENOR_IGUAL expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    $default  reduce using rule 82 (expressao)
+    $default  reduce using rule 81 (expressao)
 
 
 State 138
 
-  103 if_then: IF expressao $@24 THEN . comando_sem_rotulo
-
-    T_BEGIN  shift, and go to state 38
-    IDENT    shift, and go to state 45
-    IF       shift, and go to state 46
-    READ     shift, and go to state 48
-    WRITE    shift, and go to state 49
+   83 expressao: expressao_simples MAIOR_IGUAL expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    $default  reduce using rule 96 ($@22)
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    comando_composto            go to state 50
-    comando_sem_rotulo          go to state 158
-    atribuicao_ou_procedimento  go to state 54
-    leitura                     go to state 55
-    escrita                     go to state 56
-    comando_repetitivo          go to state 58
-    $@22                        go to state 59
-    comando_condicional         go to state 60
-    if_then                     go to state 61
+    $default  reduce using rule 83 (expressao)
 
 
 State 139
 
-   85 expressao_simples: expressao_simples MAIS termo .
-   88 termo: termo . ASTERISCO fator
-   89      | termo . DIV fator
+   80 expressao: expressao_simples MENOR expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    DIV        shift, and go to state 107
-    ASTERISCO  shift, and go to state 108
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    $default  reduce using rule 85 (expressao_simples)
+    $default  reduce using rule 80 (expressao)
 
 
 State 140
 
-   86 expressao_simples: expressao_simples MENOS termo .
-   88 termo: termo . ASTERISCO fator
-   89      | termo . DIV fator
+   82 expressao: expressao_simples MAIOR expressao_simples .
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    DIV        shift, and go to state 107
-    ASTERISCO  shift, and go to state 108
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
-    $default  reduce using rule 86 (expressao_simples)
+    $default  reduce using rule 82 (expressao)
 
 
 State 141
 
-   89 termo: termo DIV fator .
+   84 expressao_simples: expressao_simples MAIS termo .
+   87 termo: termo . ASTERISCO fator
+   88      | termo . DIV fator
 
-    $default  reduce using rule 89 (termo)
+    DIV        shift, and go to state 108
+    ASTERISCO  shift, and go to state 109
+
+    $default  reduce using rule 84 (expressao_simples)
 
 
 State 142
 
-   88 termo: termo ASTERISCO fator .
+   85 expressao_simples: expressao_simples MENOS termo .
+   87 termo: termo . ASTERISCO fator
+   88      | termo . DIV fator
 
-    $default  reduce using rule 88 (termo)
+    DIV        shift, and go to state 108
+    ASTERISCO  shift, and go to state 109
+
+    $default  reduce using rule 85 (expressao_simples)
 
 
 State 143
 
+   88 termo: termo DIV fator .
+
+    $default  reduce using rule 88 (termo)
+
+
+State 144
+
+   87 termo: termo ASTERISCO fator .
+
+    $default  reduce using rule 87 (termo)
+
+
+State 145
+
    71 leitura: READ ABRE_PARENTESES lista_leituras FECHA_PARENTESES .
 
     $default  reduce using rule 71 (leitura)
 
 
-State 144
+State 146
 
    72 lista_leituras: lista_leituras VIRGULA . simb_leitura
 
-    IDENT  shift, and go to state 109
+    IDENT  shift, and go to state 110
 
-    simb_leitura  go to state 159
+    simb_leitura  go to state 161
 
 
-State 145
+State 147
 
    75 escrita: WRITE ABRE_PARENTESES lista_escritas FECHA_PARENTESES .
 
     $default  reduce using rule 75 (escrita)
 
 
-State 146
+State 148
 
    76 lista_escritas: lista_escritas VIRGULA . expressao_simples
 
@@ -1878,61 +1881,61 @@ State 146
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 160
+    expressao_simples  go to state 162
     termo              go to state 74
     fator              go to state 75
 
 
-State 147
+State 149
 
    98 comando_repetitivo: $@22 WHILE expressao DO . $@23 comando_sem_rotulo
 
     $default  reduce using rule 97 ($@23)
 
-    $@23  go to state 161
+    $@23  go to state 163
 
 
-State 148
+State 150
 
    39 secao_pfs: VAR $@14 lista_id_pf . DOIS_PONTOS tipo
 
-    DOIS_PONTOS  shift, and go to state 162
+    DOIS_PONTOS  shift, and go to state 164
 
 
-State 149
+State 151
 
    37 paramentros_formais: paramentros_formais PONTO_E_VIRGULA secao_pfs .
 
     $default  reduce using rule 37 (paramentros_formais)
 
 
-State 150
+State 152
 
    34 parametros_ou_nada: ABRE_PARENTESES $@12 paramentros_formais $@13 FECHA_PARENTESES .
 
     $default  reduce using rule 34 (parametros_ou_nada)
 
 
-State 151
+State 153
 
    41 secao_pfs: $@15 lista_id_pf DOIS_PONTOS . tipo
 
     IDENT  shift, and go to state 63
 
-    tipo  go to state 163
+    tipo  go to state 165
 
 
-State 152
+State 154
 
    42 lista_id_pf: parametro VIRGULA . lista_id_pf
 
-    IDENT  shift, and go to state 122
+    IDENT  shift, and go to state 123
 
-    lista_id_pf  go to state 164
-    parametro    go to state 124
+    lista_id_pf  go to state 166
+    parametro    go to state 125
 
 
-State 153
+State 155
 
    31 declaracao_funcao: FUNCTION IDENT $@9 parametros_ou_nada DOIS_PONTOS $@10 tipo PONTO_E_VIRGULA . bloco $@11 PONTO_E_VIRGULA
 
@@ -1940,39 +1943,39 @@ State 153
 
     $default  reduce using rule 7 (parte_declara_rotulos)
 
-    bloco                  go to state 165
+    bloco                  go to state 167
     parte_declara_rotulos  go to state 15
 
 
-State 154
+State 156
 
    27 declaracao_procedimento: PROCEDURE IDENT $@7 parametros_ou_nada PONTO_E_VIRGULA bloco $@8 . PONTO_E_VIRGULA
 
-    PONTO_E_VIRGULA  shift, and go to state 166
+    PONTO_E_VIRGULA  shift, and go to state 168
 
 
-State 155
+State 157
 
    62 atribuicao: $@17 ATRIBUICAO expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
     $default  reduce using rule 62 (atribuicao)
 
 
-State 156
+State 158
 
    65 lista_parametros: ABRE_PARENTESES lista_parametros_parenteses . FECHA_PARENTESES
    68 lista_parametros_parenteses: lista_parametros_parenteses . VIRGULA $@19 expressao_simples
 
-    FECHA_PARENTESES  shift, and go to state 167
-    VIRGULA           shift, and go to state 168
+    FECHA_PARENTESES  shift, and go to state 169
+    VIRGULA           shift, and go to state 170
 
 
-State 157
+State 159
 
    70 lista_parametros_parenteses: $@20 . expressao_simples
 
@@ -1980,38 +1983,38 @@ State 157
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 169
+    expressao_simples  go to state 171
     termo              go to state 74
     fator              go to state 75
 
 
-State 158
+State 160
 
   103 if_then: IF expressao $@24 THEN comando_sem_rotulo .
 
     $default  reduce using rule 103 (if_then)
 
 
-State 159
+State 161
 
    72 lista_leituras: lista_leituras VIRGULA simb_leitura .
 
     $default  reduce using rule 72 (lista_leituras)
 
 
-State 160
+State 162
 
    76 lista_escritas: lista_escritas VIRGULA expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
     $default  reduce using rule 76 (lista_escritas)
 
 
-State 161
+State 163
 
    98 comando_repetitivo: $@22 WHILE expressao DO $@23 . comando_sem_rotulo
 
@@ -2024,7 +2027,7 @@ State 161
     $default  reduce using rule 96 ($@22)
 
     comando_composto            go to state 50
-    comando_sem_rotulo          go to state 170
+    comando_sem_rotulo          go to state 172
     atribuicao_ou_procedimento  go to state 54
     leitura                     go to state 55
     escrita                     go to state 56
@@ -2034,95 +2037,95 @@ State 161
     if_then                     go to state 61
 
 
-State 162
+State 164
 
    39 secao_pfs: VAR $@14 lista_id_pf DOIS_PONTOS . tipo
 
     IDENT  shift, and go to state 63
 
-    tipo  go to state 171
+    tipo  go to state 173
 
 
-State 163
+State 165
 
    41 secao_pfs: $@15 lista_id_pf DOIS_PONTOS tipo .
 
     $default  reduce using rule 41 (secao_pfs)
 
 
-State 164
+State 166
 
    42 lista_id_pf: parametro VIRGULA lista_id_pf .
 
     $default  reduce using rule 42 (lista_id_pf)
 
 
-State 165
+State 167
 
    31 declaracao_funcao: FUNCTION IDENT $@9 parametros_ou_nada DOIS_PONTOS $@10 tipo PONTO_E_VIRGULA bloco . $@11 PONTO_E_VIRGULA
 
     $default  reduce using rule 30 ($@11)
 
-    $@11  go to state 172
+    $@11  go to state 174
 
 
-State 166
+State 168
 
    27 declaracao_procedimento: PROCEDURE IDENT $@7 parametros_ou_nada PONTO_E_VIRGULA bloco $@8 PONTO_E_VIRGULA .
 
     $default  reduce using rule 27 (declaracao_procedimento)
 
 
-State 167
+State 169
 
    65 lista_parametros: ABRE_PARENTESES lista_parametros_parenteses FECHA_PARENTESES .
 
     $default  reduce using rule 65 (lista_parametros)
 
 
-State 168
+State 170
 
    68 lista_parametros_parenteses: lista_parametros_parenteses VIRGULA . $@19 expressao_simples
 
     $default  reduce using rule 67 ($@19)
 
-    $@19  go to state 173
+    $@19  go to state 175
 
 
-State 169
+State 171
 
    70 lista_parametros_parenteses: $@20 expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
     $default  reduce using rule 70 (lista_parametros_parenteses)
 
 
-State 170
+State 172
 
    98 comando_repetitivo: $@22 WHILE expressao DO $@23 comando_sem_rotulo .
 
     $default  reduce using rule 98 (comando_repetitivo)
 
 
-State 171
+State 173
 
    39 secao_pfs: VAR $@14 lista_id_pf DOIS_PONTOS tipo .
 
     $default  reduce using rule 39 (secao_pfs)
 
 
-State 172
+State 174
 
    31 declaracao_funcao: FUNCTION IDENT $@9 parametros_ou_nada DOIS_PONTOS $@10 tipo PONTO_E_VIRGULA bloco $@11 . PONTO_E_VIRGULA
 
-    PONTO_E_VIRGULA  shift, and go to state 174
+    PONTO_E_VIRGULA  shift, and go to state 176
 
 
-State 173
+State 175
 
    68 lista_parametros_parenteses: lista_parametros_parenteses VIRGULA $@19 . expressao_simples
 
@@ -2130,25 +2133,25 @@ State 173
     IDENT            shift, and go to state 70
     NUMERO           shift, and go to state 71
 
-    expressao_simples  go to state 175
+    expressao_simples  go to state 177
     termo              go to state 74
     fator              go to state 75
 
 
-State 174
+State 176
 
    31 declaracao_funcao: FUNCTION IDENT $@9 parametros_ou_nada DOIS_PONTOS $@10 tipo PONTO_E_VIRGULA bloco $@11 PONTO_E_VIRGULA .
 
     $default  reduce using rule 31 (declaracao_funcao)
 
 
-State 175
+State 177
 
    68 lista_parametros_parenteses: lista_parametros_parenteses VIRGULA $@19 expressao_simples .
-   85 expressao_simples: expressao_simples . MAIS termo
-   86                  | expressao_simples . MENOS termo
+   84 expressao_simples: expressao_simples . MAIS termo
+   85                  | expressao_simples . MENOS termo
 
-    MAIS   shift, and go to state 105
-    MENOS  shift, and go to state 106
+    MAIS   shift, and go to state 106
+    MENOS  shift, and go to state 107
 
     $default  reduce using rule 68 (lista_parametros_parenteses)
diff --git a/ORIGNAL/compilador.tab.c b/ORIGNAL/compilador.tab.c
index 9c1ddc9..c25b2f4 100644
--- a/ORIGNAL/compilador.tab.c
+++ b/ORIGNAL/compilador.tab.c
@@ -501,7 +501,7 @@ union yyalloc
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  3
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   140
+#define YYLAST   135
 
 /* YYNTOKENS -- Number of terminals.  */
 #define YYNTOKENS  43
@@ -510,7 +510,7 @@ union yyalloc
 /* YYNRULES -- Number of rules.  */
 #define YYNRULES  104
 /* YYNSTATES -- Number of states.  */
-#define YYNSTATES  176
+#define YYNSTATES  178
 
 #define YYUNDEFTOK  2
 #define YYMAXUTOK   297
@@ -569,8 +569,8 @@ static const yytype_int16 yyrline[] =
      302,   303,   306,   307,   308,   309,   310,   311,   314,   314,
      318,   319,   322,   322,   353,   353,   395,   398,   402,   401,
      414,   414,   428,   431,   432,   435,   444,   447,   450,   455,
-     458,   461,   464,   467,   470,   473,   476,   482,   488,   491,
-     494,   497,   500,   500,   545,   555,   558,   560,   567,   560,
+     458,   461,   464,   467,   470,   475,   481,   487,   490,   493,
+     496,   499,   499,   544,   554,   555,   558,   560,   567,   560,
      593,   600,   602,   605,   605
 };
 #endif
@@ -632,24 +632,24 @@ static const yytype_int16 yytoknum[] =
      STATE-NUM.  */
 static const yytype_int8 yypact[] =
 {
-    -114,    15,    14,  -114,    16,    32,    28,  -114,     7,    55,
-      50,    51,  -114,    62,    56,    58,  -114,  -114,  -114,  -114,
-      60,    52,  -114,    61,    63,  -114,    64,  -114,    66,  -114,
-      82,    87,  -114,  -114,  -114,     3,    69,  -114,     6,  -114,
-      85,    86,  -114,    68,    69,  -114,     1,  -114,    96,    97,
-    -114,    91,    98,  -114,  -114,  -114,  -114,    95,  -114,    80,
-    -114,    83,  -114,  -114,  -114,    99,  -114,   100,    94,     1,
-    -114,  -114,    59,    -4,     4,  -114,   101,     1,  -114,     6,
-      -3,     1,    -3,  -114,   102,  -114,   103,  -114,   104,    86,
-      51,  -114,  -114,   105,  -114,   108,    23,  -114,     1,     1,
-       1,     1,     1,     1,    93,     1,     1,     1,     1,  -114,
-      29,  -114,    38,    -4,  -114,  -114,    53,  -114,  -114,   104,
-      99,   111,  -114,   110,   107,   113,  -114,     1,  -114,  -114,
-    -114,  -114,    -4,    -4,    -4,    -4,    -4,    -4,    -3,     4,
-       4,  -114,  -114,  -114,   101,  -114,     1,  -114,   114,  -114,
-    -114,    86,   104,    51,   116,    -4,    43,     1,  -114,  -114,
-      -4,    -3,    86,  -114,  -114,  -114,  -114,  -114,  -114,    -4,
-    -114,  -114,   117,     1,  -114,    -4
+    -114,    11,    18,  -114,     0,    15,    37,  -114,    10,    23,
+      45,    48,  -114,    58,    59,    55,  -114,  -114,  -114,  -114,
+      60,    51,  -114,    62,    53,  -114,    63,  -114,    65,  -114,
+      70,    64,  -114,  -114,  -114,     4,    69,  -114,    41,  -114,
+      72,    73,  -114,    79,    69,  -114,     1,  -114,    84,    85,
+    -114,    88,    93,  -114,  -114,  -114,  -114,    94,  -114,    77,
+    -114,    80,  -114,  -114,  -114,    92,  -114,    98,    95,     1,
+    -114,  -114,  -114,    61,   -18,  -114,    97,     1,  -114,    41,
+      16,     1,    16,  -114,   100,  -114,   101,  -114,    99,    73,
+      48,  -114,  -114,   102,  -114,   107,   108,    12,  -114,    96,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
+    -114,    17,  -114,    19,    -9,  -114,  -114,    89,  -114,  -114,
+      99,    92,   110,  -114,   109,   113,   114,  -114,     1,  -114,
+    -114,  -114,  -114,  -114,    16,    -9,    -9,    -9,    -9,    -9,
+      -9,   -18,   -18,  -114,  -114,  -114,    97,  -114,     1,  -114,
+     112,  -114,  -114,    73,    99,    48,   115,    -9,    33,     1,
+    -114,  -114,    -9,    16,    73,  -114,  -114,  -114,  -114,  -114,
+    -114,    -9,  -114,  -114,   116,     1,  -114,    -9
 };
 
   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -664,28 +664,28 @@ static const yytype_int8 yydefact[] =
        0,     0,    33,     0,    36,    58,     0,    96,     0,     0,
       53,     0,     0,    51,    52,    56,    57,     0,    55,     0,
       54,   102,    19,    18,    16,    41,    30,     0,    64,     0,
-      92,    94,   103,    85,    88,    91,     0,     0,    46,    48,
+      91,    93,   103,     0,    87,    90,     0,     0,    46,    48,
       97,     0,    97,   100,     0,    39,    34,    37,     0,     0,
-       8,    59,    60,     0,    61,    67,     0,    64,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,    75,
-       0,    74,     0,    78,    47,    50,     0,   101,    17,     0,
-      41,     0,    45,     0,    44,     0,    27,     0,    70,    65,
-      95,    93,    79,    80,    82,    84,    81,    83,    97,    86,
-      87,    90,    89,    72,     0,    76,     0,    98,     0,    38,
-      35,     0,     0,     8,     0,    63,     0,     0,   104,    73,
-      77,    97,     0,    42,    43,    31,    28,    66,    68,    71,
-      99,    40,     0,     0,    32,    69
+       8,    59,    60,     0,    61,    67,     0,     0,    64,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+      75,     0,    74,     0,    78,    47,    50,     0,   101,    17,
+       0,    41,     0,    45,     0,    44,     0,    27,     0,    70,
+      65,    94,    95,    92,    97,    79,    80,    82,    84,    81,
+      83,    85,    86,    89,    88,    72,     0,    76,     0,    98,
+       0,    38,    35,     0,     0,     8,     0,    63,     0,     0,
+     104,    73,    77,    97,     0,    42,    43,    31,    28,    66,
+      68,    71,    99,    40,     0,     0,    32,    69
 };
 
   /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int8 yypgoto[] =
 {
     -114,  -114,  -114,   -86,  -114,  -114,  -114,  -114,  -114,  -114,
-    -114,   106,  -114,  -114,   -87,  -114,  -114,  -114,  -114,  -114,
-    -114,  -114,  -114,  -114,  -114,    77,  -114,  -114,  -114,     5,
-    -114,  -114,  -113,  -114,   109,    47,  -114,   -79,  -114,  -114,
-    -114,  -114,  -114,    30,  -114,  -114,  -114,  -114,  -114,  -114,
-    -114,   -16,  -114,  -114,   -61,   -77,   -54,   -47,  -114,  -114,
+    -114,   103,  -114,  -114,   -87,  -114,  -114,  -114,  -114,  -114,
+    -114,  -114,  -114,  -114,  -114,    81,  -114,  -114,  -114,     3,
+    -114,  -114,  -113,  -114,   104,    47,  -114,   -79,  -114,  -114,
+    -114,  -114,  -114,    29,  -114,  -114,  -114,  -114,  -114,  -114,
+    -114,   -16,  -114,  -114,   -63,   -69,   -54,   -48,  -114,  -114,
     -114,  -114,  -114,  -114,  -114,  -114,  -114
 };
 
@@ -694,11 +694,11 @@ static const yytype_int16 yydefgoto[] =
 {
       -1,     1,     2,    14,    21,    31,    15,    18,    19,    20,
       26,    27,    28,    84,    64,    35,     8,    24,    32,    44,
-     154,    25,    36,    89,   172,    43,    65,   121,    86,    87,
-     119,    88,   123,   124,    50,    51,    52,    53,    54,    68,
-      91,    92,    93,    94,    95,   129,   156,   173,   157,    55,
-     110,   111,    56,   112,    72,    73,    74,    75,    97,    57,
-      58,    59,   161,    60,    83,    61,   104
+     156,    25,    36,    89,   174,    43,    65,   122,    86,    87,
+     120,    88,   124,   125,    50,    51,    52,    53,    54,    68,
+      91,    92,    93,    94,    95,   130,   158,   175,   159,    55,
+     111,   112,    56,   113,    72,    73,    74,    75,    98,    57,
+      58,    59,   163,    60,    83,    61,    99
 };
 
   /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
@@ -706,40 +706,38 @@ static const yytype_int16 yydefgoto[] =
      number is the opposite.  If YYTABLE_NINF, syntax error.  */
 static const yytype_int16 yytable[] =
 {
-     113,   115,   125,   117,   126,    69,   148,    38,    96,    40,
-      45,    41,     9,    10,    70,     3,    38,     4,    46,    45,
-     116,   132,   133,   134,   135,   136,   137,    46,   130,     5,
-     -97,   107,   105,   106,   143,   144,     6,    48,    49,   164,
-      71,     7,   108,   145,   146,    47,    48,    49,   167,   168,
-     155,   139,   140,    98,    99,   100,   101,   102,   103,   158,
-     141,   142,    11,    12,   163,    17,    13,   165,    16,   160,
-     -10,    23,    22,    42,    29,   171,    66,   -15,   147,    34,
-     169,    30,   170,    98,    99,   100,   101,   102,   103,    98,
-      99,   100,   101,   102,   103,    37,   175,    38,    62,    63,
-      76,    77,    78,    80,    81,    79,    82,    90,   -62,   118,
-     120,    85,   128,   152,   109,   138,   150,   122,   151,   127,
-     153,    67,   162,   166,   174,   149,   114,   131,   159,     0,
-       0,     0,    33,     0,     0,     0,     0,     0,     0,     0,
-      39
+      97,   116,   126,   118,   127,    69,    96,   150,   114,   108,
+      40,     3,    41,     5,    70,     9,    10,   132,   117,     6,
+     109,     4,   145,   146,   147,   148,    38,   106,   107,    45,
+      11,   135,   136,   137,   138,   139,   140,    46,   169,   170,
+      71,   166,   100,   101,   102,   103,   104,   105,   106,   107,
+       7,    38,   141,   142,    45,   160,    48,    49,    12,   157,
+     143,   144,    46,    13,    16,   -97,   165,   -10,    17,   167,
+      23,    30,    22,    42,    38,    29,   -15,   173,    34,   162,
+      47,    48,    49,    37,   172,    62,    63,    66,    76,    77,
+     171,   100,   101,   102,   103,   104,   105,   106,   107,    78,
+      79,    81,    80,    82,    85,    90,   177,   119,   121,   -62,
+     110,   129,   123,   131,   149,   152,   128,   153,   134,   154,
+     164,   155,   168,   176,   151,    67,   115,   133,     0,    33,
+     161,     0,     0,     0,     0,    39
 };
 
 static const yytype_int16 yycheck[] =
 {
-      77,    80,    89,    82,    90,     4,   119,    10,    69,     6,
-      13,     8,     5,     6,    13,     0,    10,     3,    21,    13,
-      81,    98,    99,   100,   101,   102,   103,    21,     5,    13,
-      24,    27,    36,    37,     5,     6,     4,    40,    41,   152,
-      39,    13,    38,     5,     6,    39,    40,    41,     5,     6,
-     127,   105,   106,    30,    31,    32,    33,    34,    35,   138,
-     107,   108,     7,    13,   151,     9,    15,   153,     6,   146,
-      12,    19,    12,     4,    13,   162,     8,    13,    25,    13,
-     157,    18,   161,    30,    31,    32,    33,    34,    35,    30,
-      31,    32,    33,    34,    35,    13,   173,    10,    13,    13,
-       4,     4,    11,     8,    24,     7,    23,     7,    14,     7,
-       7,    12,     4,     6,    13,    22,     5,    13,     8,    14,
-       7,    44,     8,     7,     7,   120,    79,    97,   144,    -1,
-      -1,    -1,    26,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      31
+      69,    80,    89,    82,    90,     4,    69,   120,    77,    27,
+       6,     0,     8,    13,    13,     5,     6,     5,    81,     4,
+      38,     3,     5,     6,     5,     6,    10,    36,    37,    13,
+       7,   100,   101,   102,   103,   104,   105,    21,     5,     6,
+      39,   154,    30,    31,    32,    33,    34,    35,    36,    37,
+      13,    10,   106,   107,    13,   134,    40,    41,    13,   128,
+     108,   109,    21,    15,     6,    24,   153,    12,     9,   155,
+      19,    18,    12,     4,    10,    13,    13,   164,    13,   148,
+      39,    40,    41,    13,   163,    13,    13,     8,     4,     4,
+     159,    30,    31,    32,    33,    34,    35,    36,    37,    11,
+       7,    24,     8,    23,    12,     7,   175,     7,     7,    14,
+      13,     4,    13,     5,    25,     5,    14,     8,    22,     6,
+       8,     7,     7,     7,   121,    44,    79,    98,    -1,    26,
+     146,    -1,    -1,    -1,    -1,    31
 };
 
   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -755,15 +753,15 @@ static const yytype_int8 yystos[] =
      106,   108,    13,    13,    57,    69,     8,    68,    82,     4,
       13,    39,    97,    98,    99,   100,     4,     4,    11,     7,
        8,    24,    23,   107,    56,    12,    71,    72,    74,    66,
-       7,    83,    84,    85,    86,    87,    97,   101,    30,    31,
-      32,    33,    34,    35,   109,    36,    37,    27,    38,    13,
-      93,    94,    96,    98,    78,    80,    97,    80,     7,    73,
-       7,    70,    13,    75,    76,    57,    46,    14,     4,    88,
-       5,    86,    98,    98,    98,    98,    98,    98,    22,    99,
-      99,   100,   100,     5,     6,     5,     6,    25,    75,    72,
-       5,     8,     6,     7,    63,    98,    89,    91,    80,    94,
-      98,   105,     8,    57,    75,    46,     7,     5,     6,    98,
-      80,    57,    67,    90,     7,    98
+       7,    83,    84,    85,    86,    87,    97,    98,   101,   109,
+      30,    31,    32,    33,    34,    35,    36,    37,    27,    38,
+      13,    93,    94,    96,    98,    78,    80,    97,    80,     7,
+      73,     7,    70,    13,    75,    76,    57,    46,    14,     4,
+      88,     5,     5,    86,    22,    98,    98,    98,    98,    98,
+      98,    99,    99,   100,   100,     5,     6,     5,     6,    25,
+      75,    72,     5,     8,     6,     7,    63,    98,    89,    91,
+      80,    94,    98,   105,     8,    57,    75,    46,     7,     5,
+       6,    98,    80,    57,    67,    90,     7,    98
 };
 
   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
@@ -777,8 +775,8 @@ static const yytype_int8 yyr1[] =
       79,    79,    80,    80,    80,    80,    80,    80,    82,    81,
       83,    83,    85,    84,    87,    86,    88,    88,    90,    89,
       91,    89,    92,    93,    93,    94,    95,    96,    96,    97,
-      97,    97,    97,    97,    97,    97,    98,    98,    98,    99,
-      99,    99,   101,   100,   100,   100,   102,   104,   105,   103,
+      97,    97,    97,    97,    97,    98,    98,    98,    99,    99,
+      99,   101,   100,   100,   100,   100,   102,   104,   105,   103,
      106,   107,   107,   109,   108
 };
 
@@ -793,8 +791,8 @@ static const yytype_int8 yyr2[] =
        3,     1,     1,     1,     1,     1,     1,     1,     0,     3,
        1,     1,     0,     3,     0,     2,     3,     0,     0,     4,
        0,     2,     4,     3,     1,     1,     4,     3,     1,     3,
-       3,     3,     3,     3,     3,     1,     3,     3,     1,     3,
-       3,     1,     0,     3,     1,     3,     1,     0,     0,     6,
+       3,     3,     3,     3,     3,     3,     3,     1,     3,     3,
+       1,     0,     3,     1,     3,     3,     1,     0,     0,     6,
        2,     2,     0,     0,     5
 };
 
@@ -1495,7 +1493,7 @@ yyreduce:
              {
              geraCodigo (NULL, "INPP");
              }
-#line 1499 "compilador.tab.c"
+#line 1497 "compilador.tab.c"
     break;
 
   case 3:
@@ -1503,7 +1501,7 @@ yyreduce:
              {
                geraCodigo (NULL, "PARA");
              }
-#line 1507 "compilador.tab.c"
+#line 1505 "compilador.tab.c"
     break;
 
   case 4:
@@ -1518,7 +1516,7 @@ yyreduce:
             strcat(buffer,r_main);
             geraCodigo(NULL,buffer);
          }
-#line 1522 "compilador.tab.c"
+#line 1520 "compilador.tab.c"
     break;
 
   case 5:
@@ -1528,7 +1526,7 @@ yyreduce:
             desempilha(r_main,rot);
             geraCodigo(r_main,"NADA");
          }
-#line 1532 "compilador.tab.c"
+#line 1530 "compilador.tab.c"
     break;
 
   case 6:
@@ -1543,19 +1541,19 @@ yyreduce:
                nivel_lexico -= 1;
             mostra_ts(ts);
          }
-#line 1547 "compilador.tab.c"
+#line 1545 "compilador.tab.c"
     break;
 
   case 10:
 #line 101 "compilador.y"
               { }
-#line 1553 "compilador.tab.c"
+#line 1551 "compilador.tab.c"
     break;
 
   case 15:
 #line 110 "compilador.y"
               { num_vars = 0; }
-#line 1559 "compilador.tab.c"
+#line 1557 "compilador.tab.c"
     break;
 
   case 16:
@@ -1565,7 +1563,7 @@ yyreduce:
                sprintf(buffer, "AMEM %d", num_vars);
                geraCodigo(NULL, buffer);
               }
-#line 1569 "compilador.tab.c"
+#line 1567 "compilador.tab.c"
     break;
 
   case 18:
@@ -1580,7 +1578,7 @@ yyreduce:
                 }
                 mostra_ts(ts); // Mostra a tabela após a inserção
                }
-#line 1584 "compilador.tab.c"
+#line 1582 "compilador.tab.c"
     break;
 
   case 19:
@@ -1593,7 +1591,7 @@ yyreduce:
                insere_ts(token,VS,nivel_lexico,info,ts);
                desloc += 1;
               }
-#line 1597 "compilador.tab.c"
+#line 1595 "compilador.tab.c"
     break;
 
   case 20:
@@ -1607,7 +1605,7 @@ yyreduce:
                desloc += 1;
                /* insere vars na tabela de s�mbolos */
             }
-#line 1611 "compilador.tab.c"
+#line 1609 "compilador.tab.c"
     break;
 
   case 26:
@@ -1634,7 +1632,7 @@ yyreduce:
                geraCodigo(r_proc,buffer);
                mostra_ts(ts);
             }
-#line 1638 "compilador.tab.c"
+#line 1636 "compilador.tab.c"
     break;
 
   case 27:
@@ -1648,7 +1646,7 @@ yyreduce:
                desloc = retira_vs_pf(ts);
                mostra_ts(ts);
             }
-#line 1652 "compilador.tab.c"
+#line 1650 "compilador.tab.c"
     break;
 
   case 29:
@@ -1676,7 +1674,7 @@ yyreduce:
             geraCodigo(r_func,buffer);
             mostra_ts(ts);
             }
-#line 1680 "compilador.tab.c"
+#line 1678 "compilador.tab.c"
     break;
 
   case 30:
@@ -1684,7 +1682,7 @@ yyreduce:
                         {
                num_vars = 1;
             }
-#line 1688 "compilador.tab.c"
+#line 1686 "compilador.tab.c"
     break;
 
   case 31:
@@ -1698,13 +1696,13 @@ yyreduce:
                desloc = retira_vs_pf(ts);
                mostra_ts(ts); 
             }
-#line 1702 "compilador.tab.c"
+#line 1700 "compilador.tab.c"
     break;
 
   case 33:
 #line 246 "compilador.y"
             {num_param = 0;}
-#line 1708 "compilador.tab.c"
+#line 1706 "compilador.tab.c"
     break;
 
   case 34:
@@ -1716,7 +1714,7 @@ yyreduce:
                empilha(proc_ident,proc);
                mostra_ts(ts);
             }
-#line 1720 "compilador.tab.c"
+#line 1718 "compilador.tab.c"
     break;
 
   case 39:
@@ -1725,7 +1723,7 @@ yyreduce:
                num_vars = 0; 
                val_ou_ref = REF;
             }
-#line 1729 "compilador.tab.c"
+#line 1727 "compilador.tab.c"
     break;
 
   case 40:
@@ -1734,7 +1732,7 @@ yyreduce:
                num_param += num_vars;
                val_ou_ref = VLR;
             }
-#line 1738 "compilador.tab.c"
+#line 1736 "compilador.tab.c"
     break;
 
   case 41:
@@ -1743,13 +1741,13 @@ yyreduce:
                num_vars = 0;
                val_ou_ref = VLR;
             }
-#line 1747 "compilador.tab.c"
+#line 1745 "compilador.tab.c"
     break;
 
   case 42:
 #line 277 "compilador.y"
             {num_param += num_vars;}
-#line 1753 "compilador.tab.c"
+#line 1751 "compilador.tab.c"
     break;
 
   case 45:
@@ -1762,13 +1760,13 @@ yyreduce:
                info.pf.passagem = val_ou_ref;
                insere_ts(token,PF,nivel_lexico,info,ts);
             }
-#line 1766 "compilador.tab.c"
+#line 1764 "compilador.tab.c"
     break;
 
   case 58:
 #line 314 "compilador.y"
                                   {l_elem = busca(token, ts);}
-#line 1772 "compilador.tab.c"
+#line 1770 "compilador.tab.c"
     break;
 
   case 62:
@@ -1792,7 +1790,7 @@ yyreduce:
 
     }
 }
-#line 1796 "compilador.tab.c"
+#line 1794 "compilador.tab.c"
     break;
 
   case 63:
@@ -1807,7 +1805,7 @@ yyreduce:
     }
     geraCodigo(NULL, buffer);
 }
-#line 1811 "compilador.tab.c"
+#line 1809 "compilador.tab.c"
     break;
 
   case 64:
@@ -1824,7 +1822,7 @@ yyreduce:
                if (l_elem->categ == PR || l_elem->categ == FUN)
                   num_param = 0; // Reinicia a contagem de parâmetros reais   
             }
-#line 1828 "compilador.tab.c"
+#line 1826 "compilador.tab.c"
     break;
 
   case 65:
@@ -1854,7 +1852,7 @@ yyreduce:
                   geraCodigo(NULL, buffer);
                }
             }
-#line 1858 "compilador.tab.c"
+#line 1856 "compilador.tab.c"
     break;
 
   case 68:
@@ -1866,7 +1864,7 @@ yyreduce:
                   val_ou_ref = l_elem->info.pr.param[num_param][1];
                   empilha(buffer,proc);
                }
-#line 1870 "compilador.tab.c"
+#line 1868 "compilador.tab.c"
     break;
 
   case 69:
@@ -1875,7 +1873,7 @@ yyreduce:
                   num_param++; // Incrementa para cada parâmetro real
                   val_ou_ref = VLR;
                }
-#line 1879 "compilador.tab.c"
+#line 1877 "compilador.tab.c"
     break;
 
   case 70:
@@ -1887,7 +1885,7 @@ yyreduce:
                   val_ou_ref = l_elem->info.pr.param[num_param][1];
                   empilha(buffer,proc);
                }
-#line 1891 "compilador.tab.c"
+#line 1889 "compilador.tab.c"
     break;
 
   case 71:
@@ -1896,7 +1894,7 @@ yyreduce:
                   num_param++; // Conta o primeiro parâmetro real
                   val_ou_ref = VLR;
                }
-#line 1900 "compilador.tab.c"
+#line 1898 "compilador.tab.c"
     break;
 
   case 75:
@@ -1908,7 +1906,7 @@ yyreduce:
                sprintf(buffer,"ARMZ %d, %d",l_elem->nivel,l_elem->info.vs.desloc);
                geraCodigo(NULL,buffer);
             }
-#line 1912 "compilador.tab.c"
+#line 1910 "compilador.tab.c"
     break;
 
   case 77:
@@ -1916,7 +1914,7 @@ yyreduce:
                                                          {
                geraCodigo(NULL,"IMPR");
             }
-#line 1920 "compilador.tab.c"
+#line 1918 "compilador.tab.c"
     break;
 
   case 78:
@@ -1924,107 +1922,107 @@ yyreduce:
                                 {
                geraCodigo(NULL,"IMPR");
             }
-#line 1928 "compilador.tab.c"
+#line 1926 "compilador.tab.c"
     break;
 
   case 79:
 #line 455 "compilador.y"
-                                             {
+                                                     {
             geraCodigo(NULL, "CMIG"); // Adiciona operação de cmig
          }
-#line 1936 "compilador.tab.c"
+#line 1934 "compilador.tab.c"
     break;
 
   case 80:
 #line 458 "compilador.y"
-                                                {
+                                                        {
             geraCodigo(NULL, "CMDG"); // Adiciona operação de cmdg
          }
-#line 1944 "compilador.tab.c"
+#line 1942 "compilador.tab.c"
     break;
 
   case 81:
 #line 461 "compilador.y"
-                                             {
+                                                     {
             geraCodigo(NULL, "CMME"); // Adiciona operação de cmme
          }
-#line 1952 "compilador.tab.c"
+#line 1950 "compilador.tab.c"
     break;
 
   case 82:
 #line 464 "compilador.y"
-                                                   {
+                                                           {
             geraCodigo(NULL, "CMEG"); // Adiciona operação de cmeg
          }
-#line 1960 "compilador.tab.c"
+#line 1958 "compilador.tab.c"
     break;
 
   case 83:
 #line 467 "compilador.y"
-                                             {
+                                                     {
             geraCodigo(NULL, "CMMA"); // Adiciona operação de cmma
          }
-#line 1968 "compilador.tab.c"
+#line 1966 "compilador.tab.c"
     break;
 
   case 84:
 #line 470 "compilador.y"
-                                                   {
+                                                           {
             geraCodigo(NULL, "CMAG"); // Adiciona operação de cmag
          }
-#line 1976 "compilador.tab.c"
+#line 1974 "compilador.tab.c"
     break;
 
-  case 86:
-#line 476 "compilador.y"
+  case 85:
+#line 475 "compilador.y"
                                                 {
                if (val_ou_ref == REF)
                   yyerror("ERRO: tentativa de EXPRESSAO em passagem por REFERENCIA\n");
                else
                   geraCodigo(NULL, "SOMA"); // Adiciona operação de soma
             }
-#line 1987 "compilador.tab.c"
+#line 1985 "compilador.tab.c"
     break;
 
-  case 87:
-#line 482 "compilador.y"
+  case 86:
+#line 481 "compilador.y"
                                             {
                if (val_ou_ref == REF)
                   yyerror("ERRO: tentativa de EXPRESSAO em passagem por REFERENCIA\n");
                else
                   geraCodigo(NULL, "SUBT"); // Adiciona operação de subt
             }
-#line 1998 "compilador.tab.c"
+#line 1996 "compilador.tab.c"
     break;
 
-  case 89:
-#line 491 "compilador.y"
+  case 88:
+#line 490 "compilador.y"
                              {
                geraCodigo(NULL, "MULT"); // Adiciona operação de mult
             }
-#line 2006 "compilador.tab.c"
+#line 2004 "compilador.tab.c"
     break;
 
-  case 90:
-#line 494 "compilador.y"
+  case 89:
+#line 493 "compilador.y"
                               {
                geraCodigo(NULL, "DIVI"); // Adiciona operação de divi
             }
-#line 2014 "compilador.tab.c"
+#line 2012 "compilador.tab.c"
     break;
 
-  case 92:
-#line 500 "compilador.y"
+  case 91:
+#line 499 "compilador.y"
              {
     // Carrega variável
     l_elem = busca(token, ts);
     empilha(token, proc);
    }
-#line 2024 "compilador.tab.c"
+#line 2022 "compilador.tab.c"
     break;
 
-  case 93:
-#line 506 "compilador.y"
+  case 92:
+#line 505 "compilador.y"
    {
       char buffer[50];
       desempilha(buffer, proc);
@@ -2064,11 +2062,11 @@ yyreduce:
          }
       }
    }
-#line 2068 "compilador.tab.c"
+#line 2066 "compilador.tab.c"
     break;
 
-  case 94:
-#line 545 "compilador.y"
+  case 93:
+#line 544 "compilador.y"
          {
     // Empilha constante
     char buffer[50];
@@ -2079,7 +2077,7 @@ yyreduce:
     }
     geraCodigo(NULL, buffer);
 }
-#line 2083 "compilador.tab.c"
+#line 2081 "compilador.tab.c"
     break;
 
   case 97:
@@ -2091,7 +2089,7 @@ yyreduce:
                rot_id += 1;
                geraCodigo(r_ini,"NADA");
             }
-#line 2095 "compilador.tab.c"
+#line 2093 "compilador.tab.c"
     break;
 
   case 98:
@@ -2106,7 +2104,7 @@ yyreduce:
                strcat(buffer,r_fim);
                geraCodigo(NULL,buffer);
             }
-#line 2110 "compilador.tab.c"
+#line 2108 "compilador.tab.c"
     break;
 
   case 99:
@@ -2125,7 +2123,7 @@ yyreduce:
 
                geraCodigo(r_fim,"NADA");
             }
-#line 2129 "compilador.tab.c"
+#line 2127 "compilador.tab.c"
     break;
 
   case 100:
@@ -2135,7 +2133,7 @@ yyreduce:
                desempilha(r_fim,rot);
                geraCodigo(r_fim,"NADA");
             }
-#line 2139 "compilador.tab.c"
+#line 2137 "compilador.tab.c"
     break;
 
   case 103:
@@ -2155,7 +2153,7 @@ yyreduce:
                empilha(r_fim, rot);
                rot_id += 1;
             }
-#line 2159 "compilador.tab.c"
+#line 2157 "compilador.tab.c"
     break;
 
   case 104:
@@ -2174,11 +2172,11 @@ yyreduce:
 
                geraCodigo(r_else,"NADA");
             }
-#line 2178 "compilador.tab.c"
+#line 2176 "compilador.tab.c"
     break;
 
 
-#line 2182 "compilador.tab.c"
+#line 2180 "compilador.tab.c"
 
       default: break;
     }
diff --git a/ORIGNAL/compilador.y b/ORIGNAL/compilador.y
index 9d4a42d..b89f7d3 100644
--- a/ORIGNAL/compilador.y
+++ b/ORIGNAL/compilador.y
@@ -452,25 +452,24 @@ lista_escritas: lista_escritas VIRGULA expressao_simples {
             }
 ;
 
-expressao: expressao IGUAL expressao_simples {
+expressao: expressao_simples IGUAL expressao_simples {
             geraCodigo(NULL, "CMIG"); // Adiciona operação de cmig
          }
-         | expressao DIFERENTE expressao_simples{
+         | expressao_simples DIFERENTE expressao_simples{
             geraCodigo(NULL, "CMDG"); // Adiciona operação de cmdg
          }
-         | expressao MENOR expressao_simples {
+         | expressao_simples MENOR expressao_simples {
             geraCodigo(NULL, "CMME"); // Adiciona operação de cmme
          }
-         | expressao MENOR_IGUAL expressao_simples {
+         | expressao_simples MENOR_IGUAL expressao_simples {
             geraCodigo(NULL, "CMEG"); // Adiciona operação de cmeg
          }
-         | expressao MAIOR expressao_simples {
+         | expressao_simples MAIOR expressao_simples {
             geraCodigo(NULL, "CMMA"); // Adiciona operação de cmma
          }
-         | expressao MAIOR_IGUAL expressao_simples {
+         | expressao_simples MAIOR_IGUAL expressao_simples {
             geraCodigo(NULL, "CMAG"); // Adiciona operação de cmag
          }
-         | expressao_simples
 ;
 
 expressao_simples: expressao_simples MAIS termo {
@@ -553,6 +552,7 @@ fator: IDENT {
     geraCodigo(NULL, buffer);
 }
 | ABRE_PARENTESES expressao FECHA_PARENTESES
+| ABRE_PARENTESES expressao_simples FECHA_PARENTESES
 ;
 
 numero: NUMERO;
diff --git a/compilador.y b/compilador.y
index 68c27f7..85abc0f 100644
--- a/compilador.y
+++ b/compilador.y
@@ -452,25 +452,24 @@ lista_escritas: lista_escritas VIRGULA expressao_simples {
             }
 ;
 
-expressao: expressao IGUAL expressao_simples {
+expressao: expressao_simples IGUAL expressao_simples {
             geraCodigo(NULL, "CMIG"); // Adiciona operação de cmig
          }
-         | expressao DIFERENTE expressao_simples{
+         | expressao_simples DIFERENTE expressao_simples{
             geraCodigo(NULL, "CMDG"); // Adiciona operação de cmdg
          }
-         | expressao MENOR expressao_simples {
+         | expressao_simples MENOR expressao_simples {
             geraCodigo(NULL, "CMME"); // Adiciona operação de cmme
          }
-         | expressao MENOR_IGUAL expressao_simples {
+         | expressao_simples MENOR_IGUAL expressao_simples {
             geraCodigo(NULL, "CMEG"); // Adiciona operação de cmeg
          }
-         | expressao MAIOR expressao_simples {
+         | expressao_simples MAIOR expressao_simples {
             geraCodigo(NULL, "CMMA"); // Adiciona operação de cmma
          }
-         | expressao MAIOR_IGUAL expressao_simples {
+         | expressao_simples MAIOR_IGUAL expressao_simples {
             geraCodigo(NULL, "CMAG"); // Adiciona operação de cmag
          }
-         | expressao_simples
 ;
 
 expressao_simples: expressao_simples MAIS termo {
-- 
GitLab