Maquina norma
O modelo de máquinas de registradores, do qual faz parte a Máquina NORMA, apresenta diferenças importantes em relação aos outros modelos apresentados neste trabalho. Esse modelo surgiu mais recentemente em comparação aos demais modelos, visto ter sido desenvolvido para ser uma representação aproximada dos computadores modernos. A estrutura de memória de uma máquina de registradores é composta por um número infinito de registradores que, diferentemente dos demais modelos, podem ser modificados independentemente. Esse modelo segue o padrão da memória de acesso direto dos computadores eletrônicos modernos [2; 15].
Ainda, nas máquinas de registradores a noção de programa e máquina apresentase de forma dissociada. Mais precisamente, a função programa definida para realizar uma computação forma um conjunto de instruções rotuladas, que operam sobre a estrutura de registradores. A estrutura de controle executa instruções nos registradores que podem armazenar um número inteiro arbitrariamente grande. Além dos registradores, o modelo é composto por quatro operações básicas: incremento, decremento, salto condicional e parada. Essas operações podem ser utilizadas de
29
modo a compor as demais operações necessárias para computações mais complexas.
A máquina de registradores abordada neste trabalho é a NORMA, cujo nome significa Number theOretic Register MAchine.
-------------------------------------------------
Definição Formal
A definição de uma Máquina NORMA, conforme já mencionado, diferencia-se das outras máquinas universais aqui apresentadas, uma vez que a noção de programa e máquina são isoladas. Formalmente, uma Máquina NORMA pode ser definida conforme a Definição 2.5, a partir da qual define-se um programa para uma Máquina
NORMA na Definição 2.6.
Definição 1 (Máquina Norma) Uma Máquina Norma é uma tupla MN =
({Rk}∞k=0, {{ek}, {sk}, {zk}, {{adk}, {subk}}∞k=0), onde:
1. {Rk}∞k=0 ∈ N∞ é um conjunto infinitamente contável de registradores indexados por k.