Para entrega da etapa 5.

Funcionalidades necessárias:
- 1.1 Suporte a arranjos multidimensionais: gramatica modificada para suportar
multidimensoes. Resta modificar a AST para permitir tais estruturas e incluir um campo
na tabela de simbolos para armazenamento do tamanho do arranjo.
- 1.2 E.D. para ILOC: OK (tac.h)
- 1.3: Gerenciamento de rotulos: OK.
- 1.4: Gerenciamento de Registradores: OK. (geraTemp() cria um novo registrador sempre
que necessário. nao há reuso de registradores, assume-se infinitos.)
- 1.5: Geracao de Codigo:
      OK para
         - Expressoes Aritmeticas
         - Comandos de atribuicao
         - Comandos de fluxo de controle (if-else, do-while, while-do)
      Quase OK para
         - Declaracao de variaveis (endereco é inicializado corretamente. testado com
int e float, resta resolver para strings.)
      Nao OK para
         - Arranjos multidimensionais (nada)