lista09zadanie2 - Jzyki formalne i teoria oblicze Lista 9...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Języki formalne i teoria obliczeń Lista 9 Zadanie 2. Zaprojektować maszyny Turinga obliczające następujące funkcje (liczbę n reprezentujemy przez słowo O n ): a) [log 2 n ]; b) n!; c) n 2 . Ad a) Wynikiem tego logarytmu jest długość liczby n przedstawionej za pomocą systemu binarnego. Do skonstruowania maszyny potrzebujemy dwie taśmy. Na pierwszej znajduję się nasze słowo, na drugiej wynik. Liczenie zaczynamy od pierwszego symbolu na pierwszej taśmie. Czytamy go, a następnie jeżeli jest on różny od symbolu “BLANK” do liczby na drugiej taśmie dodajemy 1, za pomocą licznika binarnego, który pojawił się na wykładzie. Operację powtarzamy do momentu, gdy na pierwszej taśmie nie napotkamy symbolu “BLANK”. W przeciwnym wypadku na drugiej taśmie przechodzimy do pierwszego symbolu i idąc w prawo zamieniamy wszystkie symbole różne od “BLANK” na “0”. Przechodzimy do momentu, gdy nie napotkamy symbolu “BLANK”. Otrzymany ciąg zer na drugiej taśmie jest rozwiązaniem [log 2 n ]. Ad b) Przy tworzeniu tej maszymy będziemy potrzebować 3 taśm. Na pierwszej znajduję się nasze słowo wejściowe, druga taśma jest naszym wynikiem, a trzecia jest taśmą pomocniczą. IMPLEMENTACJA: Na pierwszej taśmie znajduje się nasza liczba n. Druga ma na pierwszym miejscu “0”, trzecia natomiast składa się z samych symboli “BLANK”. Cykl:
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 01/03/2011 for the course EIT 234 taught by Professor Placek during the Spring '08 term at Al-Quds Open University.

Page1 / 5

lista09zadanie2 - Jzyki formalne i teoria oblicze Lista 9...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online