Máquina abstrata




Uma máquina abstrata (ou computador abstrato) é um modelo teórico de um sistema computacional de hardware ou software usado para detalhar o funcionamento do sistema,[1] usado na teoria dos autômatos. A abstração de processos computacionais é usada tanto na ciência da computação quanto na engenharia de software, e geralmente assume um tempo discreto, dividido em amostras.


Na teoria da computação, as máquinas abstratas são geralmente usadas em experimentos mentais relacionados à computabilidade ou para analisar a complexidade de algoritmos. Uma máquina abstrata típica consiste em uma entrada, uma saída, e um conjunto de operações que transformar uma em outra. Um exemplo clássico é a máquina de Turing,[1] mas também podem ser citados as gramáticas livres de contexto e os autômatos finitos.


Definições mais complexas criam máquinas abstratas com um conjunto completo de instruções, registradores e modelos de memória. Também podem se referir a um microprocessador que ainda não foi implementado em hardware. Uma máquina abstrata implementada como uma simulação de software, ou interpretada de alguma forma, é chamada de máquina virtual.[1]


Através das máquinas abstratas é possível estipular a quantidade de recursos (como em tempo e espaço de armazenamento) necessária para realizar uma tarefa sem construir o sistema de fato.


Notas




  1. abc Macura



Referências |


Macura, Wiktor K. «Abstract Machine». Wolfram MathWorld (em inglês). Wolfram Research, Inc. Consultado em 15 de agosto de 2009 



Ver também |



  • Abstração (programação)

  • Interpretação abstrata

  • Tempo discreto




Popular posts from this blog

404 Error Contact Form 7 ajax form submitting

How to know if a Active Directory user can login interactively

Refactoring coordinates for Minecraft Pi buildings written in Python