Skip to main content

Ano ang isang abstract machine?

Ang mga abstract machine, na tinatawag ding automata, ay isang elemento ng teoretikal na science sa computer.Ang isang abstract machine ay kahawig ng isang function sa matematika.Tumatanggap ito ng mga input at gumagawa ng mga output ayon sa tinukoy na mga patakaran.Ang mga abstract machine ay naiiba sa mas literal na mga makina dahil ipinapalagay na gumana nang perpekto at nakapag -iisa mula sa hardware.Ang mga ito ay nahahati sa mga uri batay sa mga katangian tulad ng kung paano nila isinasagawa ang kanilang mga operasyon at kung anong mga uri ng mga input ang kanilang matatanggap.anumang naibigay na punto.Ang isang abstract machine ay tinatawag na deterministic kung palaging may isang paraan lamang upang magpatuloy ito.Ito ay nondeterministic kung maraming mga posibilidad na umiiral para sa makina sa hindi bababa sa isa sa mga posibleng estado nito.Ang isang pushdown automaton ay isa na may kapasidad na manipulahin ang salansan ng mga input, sa halip na tumugon lamang sa kanila nang paisa -isa sa pagkakasunud -sunod kung saan lumilitaw.Ang isa sa mga halimbawang ito ay ang Conways Game of Life, na kung saan ay isang deterministikong abstract machine dahil isang pagsasaayos lamang ang maaaring lumabas sa anumang iba pa.Ang larong ito ay gumagamit ng isang grid kung saan ang bawat kahon, o cell, ay maaaring magkaroon ng estado na nabubuhay o patay.Ang estado ng buong grid ay natutukoy batay sa nakaraang estado.Kung ang isang buhay na cell ay humipo ng eksaktong dalawa o tatlong iba pang mga nabubuhay na cell, patuloy itong nabubuhay.Kung mayroon itong isa, dalawa, o higit sa tatlong kapitbahay (hanggang sa isang posibleng walong), namatay ito.Ang isang patay na cell na may eksaktong tatlong kapitbahay ay mabubuhay;Kung hindi man, mananatiling patay.

Ang isa pang halimbawa, ang Turing machine, ay isa sa mga pinaka -pangunahing at pangunahing abstract machine sa computer science.Ang isang Turing machine ay nagsasagawa ng mga operasyon sa isang tape mdash; isang string ng mga simbolo at mdash; ng walang limitasyong laki.Naglalaman ito ng mga tagubilin kapwa para sa pagbabago ng mga simbolo at para sa pagbabago ng simbolo kung saan ito gumagana.Ang isang simpleng makina ng Turing ay maaaring magkaroon lamang ng simbolo ng pagtuturo na magbabago sa 1, pagkatapos ay ilipat nang tama.Ang makina na ito ay hindi mag -output ng walang anuman kundi isang string ng 1s.Ang simpleng Turing machine na ito ay deterministik, ngunit posible rin na bumuo ng mga nondeterministic turing machine na maaaring magsagawa ng maraming iba't ibang mga operasyon na ibinigay ng parehong pag -input.

Ang mga abstract na makina ay maaaring maghatid ng maraming mga layunin.Maaari silang maging masaya teoretikal na mga laruan, ngunit maaari rin silang maglingkod bilang mga modelo para sa mga tunay na computer system.Ang abstract machine ay nasa gitna ng science sa computer bilang isang disiplina.