![](/user_photo/2706_HbeT2.jpg)
- •До лабораторної роботи № 1
- •6.050102 “Комп’ютерна інженерія”
- •1. Мета роботи
- •2. Теоретичні відомості
- •2.1. Поняття алгоритму
- •2.2. Машина Тьюрінга
- •2.3. Структура машини Тьюрінга
- •2.4. Такт роботи машини Тьюрінга
- •2.5. Програма для машини Тьюрінга
- •2.6. Правила виконання програми
- •2.7. Приклади створення програм для мт
- •2.8. Емулятор машини Тьюрінга
- •2.9. Дослідження ефективності машин Тьюрінга
- •3. Порядок виконання роботи
- •4. Завдання на лабораторну роботу
- •4.1. Вибір варіанту індивідуального завдання
- •4.2. Варіанти завдань
- •5. Вимоги до оформлення звіту
- •1. Мета роботи
- •6. Контрольні завдання
- •Список літератури
- •Мета роботи……………………………………..………………………………………...…3
- •Теоретичні відомості..........….………………………………………………………….…. .3
- •2.1. Поняття алгоритму….………………………………………………………...….…. .3
- •Методичні вказівки
- •" Програмування машин Тьюрінга"
- •6.050102 “Комп’ютерна інженерія”
2.3. Структура машини Тьюрінга
Машина Тьюрінга (МТ) складається із двох частин - стрічки та каретки:
стрічка: |
|
|
||||||||||||||
каретка: |
Стрічка використовується для зберігання інформації, що складається з символів зовнішнього алфавіту А. Вона нескінченна в обидва боки і розбита на комірки, які ніяк не нумеруються і не іменуються. В кожній комірці може бути записаний один символ або нічого не записано. Вміст комірки може мінятись - в неї можна записати інший символ або стерти символ, який там знаходиться.
Домовимось порожній вміст комірки називати символом «порожньо» і позначати як . У зв'язку із цим зображення стрічки, показане на малюнку справа, буде таким самим, як і на малюнку зліва. Для обох цих зображень зовнішній алфавіт визначається як А={a0 , a , b}. Така домовленість зручна тим, що операцію стирання символу в деякій комірці можна розглядати як запис у цю комірку символу , тому замість довгої фрази «записати символ у комірку або стерти символ, що там знаходиться» можна говорити просто «записати символ у комірку».
Каретка - це активна частина МТ. В кожний момент вона розміщується під однією з комірок стрічки і розпізнає її вміст; вміст сусідніх та інших комірок каретка не бачить. Крім того, в кожний момент каретка перебуває в одному із станів, які будемо позначати буквою q з номерами: q0, q1, q2 і т.д., які складають алфавіт внутрішніх станів Q = {q0, q1 , ... , qm},. Перебуваючи в деякому стані, каретка виконує якусь певну операцію (наприклад, переміщується вправо по стрічці, заміняючи всі символи b на a), перебуваючи в іншому стані - іншу операцію.
2.4. Такт роботи машини Тьюрінга
МТ працює тактами, які виконуються один за одним. На кожному такті МТ виконує три наступні дії, причому обов'язково в зазначеному порядку:
1) записує деякий символ
в комірку (зокрема, може бути записаний
той самий символ, що й був у ній, тоді
вміст цієї комірки не міняється);
2) переміщується на одну комірку вліво (позначається як L, від Left), або на одну комірку вправо (позначається як R, від Right), або залишається нерухливим (не позначається ніяк).
3) переходить в деякий стан qi (зокрема, може залишитись в попередньому стані).
Формально дії одного такту будемо записувати у вигляді:
,
або
,
або
.
Наприклад, такт
означає
запис символа
у комірку, переміщення на одну комірку
вліво і перехід у стан
.