- Презентации
- Презентация по информатике на тему Автоматическая обработка информации. Машина Поста
Презентация по информатике на тему Автоматическая обработка информации. Машина Поста
Автор публикации: Левченко А.С.
Дата публикации: 28.11.2016
Краткое описание:
1
Автоматическая обработка информации 10 класс
2
В 30-х годах XX века возникает новая наука — теория алгоритмов. К задачам теории алгоритмов относятся формальное доказательство алгоритмической неразрешимости задач, асимптотический анализ сложности алгоритмов, классификация алгоритмов в соответствии с классами сложности, разработка критериев сравнительной оценки качества алгоритмов
0
Благодаря этой рекламе сайт может продолжать свое существование, спасибо за просмотр.
3
Основоположниками теории алгоритмов являются: английский ученый Алан Тьюринг (рис 1) американский ученый Эмиль Пост (рис 2) русский ученый Андрей Марков (рис 3) рис 1 рис 2 рис 3
4
Машина поста Машина Поста - абстрактная вычислительная машина, позволяющая решать алгоритмические задачи. Алгоритм, по которому работает машина Поста, будем называть программой. Под словом «программа» мы всегда будем понимать алгоритм, записанный по строгим правилам языка команд исполнителя — на языке программирования для данного исполнителя.
5
Архитектура машины поста Имеется бесконечная информационная лента, разделенная на позиции — клетки. В каждой клетке может либо стоять метка (некоторый знак), либо отсутствовать (пусто). Вдоль ленты движется каретка — считывающее устройство. На рисунке она обозначена стрелкой. Каретка может передвигаться шагами: один шаг — смещение на одну клетку вправо или влево. Клетку, под которой установлена каретка, будем называть текущей. Каретка является еще и процессором машины. С ее помощью машина может: • распознать, пустая клетка или помеченная знаком, • стереть знак в текущей клетке, • записать знак в пустую текущую клетку. v v v v v
6
Назначение машины Поста — производить преобразования на информационной ленте. Исходное состояние ленты можно рассматривать как исходные данные задачи, конечное состояние ленты — результат решения задачи. Кроме того, в исходные данные входит информация о начальном положении каретки.
7
Система команд машины Поста Команда Действие n ← m Сдвиг каретки на шаг влево и переходк выполнению команды с номеромm n → m Сдвиг каретки на шаг вправо и переходк выполнению команды с номеромm n v m Запись метки втекущую пустую клетку и переход к выполнению команды с номеромm n ↕ m Стирание метки втекущей клетке и переход к выполнению команды с номеромm n ! Остановка выполнения программы n?m,k Переход в зависимости от содержимого текущей клетки: если текущая клетка пустая, то следующей будет выполняться команда с номеромm,если непустая – команда с номеромk
8
Пример программы решения задачи на машине Поста Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
9
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины v v v v
10
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
11
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
12
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
13
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
14
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
15
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
16
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
17
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
18
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
19
Исходное состояние показано на рисунке. Машина должна стереть знак в текущей клетке и присоединить его слева к группе знаков, расположенных справа от каретки. v v v v v Команда Действие 1↕2 Стирание метки,переход к следующей команде 2→3 Сдвиг вправо на один шаг 3?2,4 Если клетка пустая, то переход к команде 2, иначе – к команде 4 4←5 Сдвиг влево на шаг (команда выполнится , когда каретка выйдет на первый знак группы) 5v6 Запись метки в пустую клетку 6! Остановка машины
20
В процессе выполнения приведенной программы многократно повторяется выполнение команд с номерами 2 и 3. Такая ситуация называется циклом.
21
Задачи для практической работы Написать программу, которая ставит три метки подряд. 2) Написать программу, которая ставит три метки через одну клетку. 3) Написать программу, которая вычисляет сумму двух чисел. V V V V V V