МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
/
Лабораторна робото №2
На тему: " Програмування машин Поста"
«Алгоритми та методи обчислень»
№ варіанту = 1.27
1.Мета роботи
Вивчити принципи роботи машин Поста, набути практичних навичок програмування машин Поста.
2.Загальні теоретичні відомості
Алгоритм - це точний набір інструкцій, що описують послідовність дій деякого виконавця для досягнення результату, Розв'язок деякого завдання за кінцевий час. Машина Поста - абстрактна (тобто така, що не існує в арсеналі техніки), але дуже проста обчислювальна машина. Машина Поста, не дивлячись на зовнішню простоту, може здійснювати різні обчислення, для чого потрібно задати початковий стан каретки і програму, яка виконає ці обчислення. Машиною ця математична конструкція названа тому, що при її побудові використовуються деякі поняття реальних машин (елемент пам’яті, команда тощо).
3.Індивідуальне Завдання
1.27 A={0,1}.Подвоїти кожний символ слова P (наприклад: 101 → 110011).
4.Опис алгоритму
Спочатку зсуваємо каретку в кінець слова ставимо « 2 », потім назад на початок і зчитуємо символ і за допомогою ряду команд записуємо після « 2 » два відповідних символи. Так само повторюємо алгоритм доти поки при зчитуванні символу каретка зустріне символ « 2 ».
5. Алгоритм у вигляді програми для МП
Алфавіт: _012
Команда
Переход
Комментарий
1
>
2
?
3,1,1,0
Зсув каретки в крайню праву позицію слова
3
2
4
Запис 2
4
<
5
?
6,4,4,4
Зсув каретки в крайню ліву позицію слова
6
>
7
X
0,8,12,16
Зчитування символу
8
>
9
?
10,8,8,8
Зсув каретки в крайню праву позицію слова
10
0
Запис 0
11
0
4
Запис 0
12
>
13
?
14,12,12,12
Зсув каретки в крайню праву позицію слова
14
1
Запис 1
15
1
4
Запис 1
16
X
0
Завершення виконання програми
6.Результат виконання програми
Задана послідовність: 010
Результат: 001100
7.Висновки
На даній лабораторній роботі,я вивчив принципи роботи машини Поста, набув практичних навичок програмування машин Поста.