COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
COMPORT – Compilador Portugol - Nilo Menezes
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4. A MÁQUINA VIRTUAL<br />
ComPort <strong>–</strong> <strong>Compilador</strong> <strong>Portugol</strong><br />
A máquina virtual escolhida é baseada na de WIRTH (1996), que por<br />
sua vez se baseia na máquina DLX de Hannessy e Patterson (1995) 2 , aproximandose<br />
da arquitetura da máquina MIPS.<br />
O conjunto completo de instruções da máquina DLX encontra se no<br />
apêndice C. O subconjunto particular implementado é descrito a seguir.<br />
4.1. REGISTRADORES<br />
Registradores são memórias especiais à disposição do processador<br />
para diversos fins. Em linguagem de máquina, valores são guardados na memória e<br />
as operações com estes são realizadas nos registradores. Diversas instruções,<br />
especialmente em máquinas RISC, utilizam registradores como seus operandos.<br />
Diferente de máquinas CISC (conjunto de instruções complexo) que possuem<br />
dúzias de formas diferentes de endereçamento (gerando uma instruções para cada<br />
um deles), as máquinas RISC trocam o número de instruções pelo número de<br />
registradores. Uma máquina CISC tem normalmente de 4 a 6 registradores e<br />
enquanto máquinas RISC operam com 32. Este número também é justificado pelo<br />
pequeno número de formas de endereçamento disponível para máquinas RISC, o<br />
que obriga que valores sejam movidos da memória para um registrador antes de<br />
serem utilizados em uma instrução.<br />
A máquina virtual possui 32 registradores de 32 bits cada. Estes<br />
registradores são nomeados de R0 a R31, sendo alguns de uso específico:<br />
R0 sempre contém o valor 0.<br />
R31 é utilizado para armazenar o endereço de retorno em instruções<br />
de salto.<br />
2 HANNESEY J.L., PATTERSON D.A. Computer Architecture <strong>–</strong> A Quantitative<br />
Approach. Morgan Kaufmann:1995<br />
44