Qu'est-ce que l'utilisation d'automates finis?
Qu'est-ce que l'utilisation de automates finis? Et tous les concepts que nous étudions dans la théorie du calcul. Je n'ai jamais vu de leurs utilisations encore.
OriginalL'auteur nicky | 2009-10-03
Vous devez vous connecter pour publier un commentaire.
Ils sont les fondements théoriques des concepts largement utilisés dans l'informatique et la programmation, et la compréhension vous aidera à mieux comprendre comment les utiliser (et leurs limites). Les trois de base, ceux que vous rencontrez sont, dans l'ordre croissant de puissance:
La compréhension de la théorie et les limites de ces différents mécanismes de calcul vous permettant de mieux comprendre les problèmes et les programmes et à réfléchir plus profondément sur la programmation.
Il y a une demande pour du travail a publié il ya environ un an sur l'un des freelance de codage de sites d'échange en demandant, en substance, pour un programme qui résout le Problème de l'Arrêt. Plusieurs personnes ont répondu à des offres, en disant qu'ils "comprendre les exigences de" et pourrait "démarrer immédiatement". Il était impossible d'écrire un programme qui satisfait aux exigences. Comprendre le calcul de la théorie permet de ne pas être le soumissionnaire qui démontre, dans le public, qu'il n'a vraiment pas à comprendre l'informatique (et n'a pas pris la peine d'enquêter de manière approfondie sur un problème avant de déclarer comprendre et de faire une offre).
Lott pas tout à fait. Ils sont des machines de Turing - automates finis couplée avec la surabondance de bandes.
Mais il convient de noter qu'un grand nombre (plus de nos jours?) la programmation de l'expression régulière bibliothèques accepter les grammaires qui ne sont pas un "langage régulier" et ne sont donc pas acceptées par un FA.
OriginalL'auteur Michael Ekstrand
Automates finis sont très utiles pour les protocoles de communication et pour la correspondance des chaînes avec des expressions régulières.
OriginalL'auteur starblue
Automates sont utilisés dans le matériel et les applications logicielles. Veuillez lire la section mise en œuvre ici http://en.wikipedia.org/wiki/Finite-state_machine#Implementation
Il y a aussi une notion d'Automates à base de programmation. Veuillez vérifier cette http://en.wikipedia.org/wiki/Automata-based_programming
acclamations
OriginalL'auteur Arnkrishn
Automates finis sont par exemple utilisées pour analyser les langages formels. Cela signifie que les automates finis sont très utiles dans la création de compilateur et interpréteur techniques.
Historiquement, la machine à états finis ont montré que beaucoup de problèmes peuvent être résolus par une très simple d'automatiser.
OriginalL'auteur
Essayez de prendre des compilateurs cours. Vous aurez très probablement faire un compilateur ou d'un interprète à l'aide d'un finite state automaton à mettre en œuvre une descente récursive de l'analyseur.
OriginalL'auteur chaos
Tous les GUI, tous les flux de travail peuvent être traités comme des automates finis. Pensez à chaque page de l'état et les transitions se produisant en raison de certains événements. Peut-être que vous ne pouvez pas procéder à une page ou à la prochaine étape du flux de travail jusqu'à une série de conditions sont remplies.
OriginalL'auteur duffymo
Par exemple de gérer les états de certains objets définis cycle de vie.
À titre d'exemple: les commandes en magasin de livre.
Une commande peut avoir les états suivants:
-commandés
-payé
-expédition
-fait
et le programme de l'automate fini sait comment un état peut être modifié par d'autres.
OriginalL'auteur Max
Les automates finis est un type de machine d'état (SM). En général, les SMs sont utilisés pour l'analyse langages formels.
Vous pouvez utiliser comme un langage formel de nombreuses entités, non seulement les caractères.
Et régulière de la langue est un type de langage formel.
Il y a un peu de théorie que de montrer, ce type de la SM est préférable d'analyser un langage régulier:
http://en.wikipedia.org/wiki/Regular_language
OriginalL'auteur Max