Obsah:
Definice - Co znamená státní stroj?
Státní stroj je koncept používaný při navrhování počítačových programů nebo digitální logiky. Existují dva typy stavových strojů: konečné a nekonečné stavové stroje. První se skládá z konečného počtu stavů, přechodů a akcí, které lze modelovat pomocí vývojových grafů, kde je možné detekovat cestu logiky, když jsou splněny podmínky. Ten se prakticky nepoužívá.
Stavový stroj je jakékoli zařízení, které ukládá stav něčeho v daném čase. Stav se mění na základě vstupů a poskytuje výsledný výstup pro implementované změny. Konečný stavový stroj má konečnou vnitřní paměť. Vstupní symboly jsou čteny v sekvenci vytvářející výstupní funkci ve formě uživatelského rozhraní.
Stavové stroje jsou znázorněny pomocí stavových diagramů. Výstup stavového stroje je funkcí vstupu a aktuálního stavu. Státní stroje hrají významnou roli v oblastech jako je elektrotechnika, lingvistika, informatika, filozofie, biologie, matematika a logika. Nejlépe se používají při modelování aplikačního chování, softwarového inženýrství, návrhu hardwarových digitálních systémů, síťových protokolů, kompilátorů a studiu výpočtů a jazyků.
Techopedia vysvětluje State Machine
Provoz stavového stroje začíná od počátečního stavu. Po úspěšném přechodu to skončí v přijatelném stavu. Přechod probíhá na základě poskytnutých vstupů. Aktuální stav závisí na minulém stavu systému. Počet vytvořených stavů závisí na dostupných stavech paměti. Přechod je povolen na základě určitých podmínek a označuje změnu stavu. Akce popisuje aktivitu prováděnou v daném okamžiku. Různé typy akcí jsou akce přechodu, akce vstupu, akce vstupu a akce ukončení.
Deterministické automaty mají přesně jeden přechod v každém stavu pro každý možný vstup. V nedeterministických automatech vede stavový vstup k jednomu, mnoha nebo žádným přechodům. Stavový stroj s pouze jedním stavem se nazývá kombinatorický stavový stroj a používá pouze vstupní akce.
Dvě různé skupiny státních strojů jsou akceptory a převodníky. Akceptory produkují binární výstup na základě toho, zda je vstup přijat nebo odmítnut strojem. Při zpracování vstupu, pokud aktuální stav přijímá, je vstup přijat. Jinak je odmítnuta. Jazyky přijímané státními stroji se nazývají normální jazyky. Počáteční stavy jsou znázorněny šipkou směřující na ni odkudkoli, zatímco přijaté stavy jsou znázorněny pomocí dvojitých kruhů. Převodníky zajišťují výstup na základě daného vstupu pomocí akcí. Moore a Mealy stroje jsou příklady převodníků.
Neupravované modelovací jazykové stavové stroje jsou také široce používány, protože mají v sobě jak stroj Moore, tak Mealy. Zahrnují další koncepty, jako jsou ortogonální oblasti a hierarchicky vnořené stavy.
