Москва

+7 (495) 638-08-44

Санкт-Петербург

+7 (812) 649-27-11

Ремонт компьютеров и ноутбуков Боровицкая

Borovitskaya

Наши цены:

Выезд мастера0* руб.
Диагностика0* руб.
Удаление вирусов350 руб.
Установка Windows350 руб.
Настрока беспроводного интернета410 руб.
Установка антивируса390 руб.
Установка программ300 руб.
Сохранение данных400 руб.

Универсальная машина Тьюринга

Прежде чем продолжить наш рассказ, следует отметить еще одно важное свойство машин Тьюринга. Оно состоит в том, что <существует универсальная машина Тьюринга>.

Сначала на входную ленту записывается последовательность символов, которая представляет собой таблицу поведения обычной машины Тьюринга А. После этого производится запись последовательности х обычных входных символов. Хотя таблица велика, она все-таки конечна, и если ее вводить посимвольно или поразрядно, она будет иметь вид обычных входных данных.

Всю последовательность символов на входной ленте обозначим через у, а машину Тьюринга, которая проводит вычисления над считанными данными у, обозначим через В. Если машина В спроектирован правильно, вычисления, которые проводятся при задании в А значений х, будут полностью копироваться. Машина В, обладающая таким свойством, называется универсальной машиной Тьюринга.

Во входных данных у для машины В содержатся? как таблица поведения машины А, так и входные данные х, поступающие в машину А. Поэтому в машине В на какой-то дополнительной ленте можно последовательно создавать изменения состояний, происходящие во время поступления данных х в машину А. Таким образом, В превращается в универсальную машину. Если задать таблицы поведения других машин операции, которые могут выполнять эти машины, будут в точности воспроизводиться машиной В.

Таблицу поведения машины Тьюринга можно представить с помощью специального вычислительного алгоритма. Любая взятая в отдельности машина Тьюринга есть специализированная машина, которую можно охарактеризовать-с помощью таблицы поведения — изменения состояний конечного автомата в соответствии с конкретным вычислительным алгоритмом. Одна машина Тьюринга может служить специализированным множительным устройством, другая — преобразователем двоичного кода в десятичный и т. д. Алгоритм, необходимый для реализации умножения, либо алгоритм, выполняющий преобразование числа в другую систему счисления, можно выразить с помощью уже известной нам таблицы поведения конечного автомата. Когда таблица поведения специализированной машины становится частью входных данных, машина Тьюринга, которая может справиться с каждой из таких специализированных операций, превращается в универсальную машину. Это и есть теоретическая модель компьютера. Представляя алгоритм в виде программы и добавляя соответствующие исходные данные, получаем компьютер, способный выполнить любые запланированные ранее действия.

Кстати, реальные компьютеры построены таким образом, что на одном компьютере можно воспроизвести поведение другого, и это иногда делают. Когда проектируется новый компьютер, перед окончанием проектных работ поведение будущего компьютера моделируется на каком-то старом компьютере. Такое исследование характеристик одного компьютера путем моделирования их на программном обеспечении другого называется эмуляцией. Или на аппаратных средствах нового компьютера запускают программное обеспечение старого компьютера, используя метод, аналогичный известным методам машинного моделирования физических процессов. Конечно, поскольку эффективность такого подхода низка, он иногда подкрепляется соответствующим оборудованием для частичного моделирования.

Машина с ограниченным числом состояния

Машина Тьюринга имеет одну ленту входных символов, одну ленту выходных символов и множество рабочих лент. Машина, построенная по такому принципу, называется машиной с ограниченным числом состояний. Считается, что ленты представляют собой цепочки символов бесконечной длины.

Если слово <бесконечный> применять в математике необдуманно, это может привести к различным парадоксам. Поэтому необходимо точно определить, что мы под этим термином понимаем. Бесконечным, с точки зрения машины Тьюринга, можно назвать число больше любого наперед заданного числа натурального ряда (в математике такое число называется алеф-нуль).

Представим себе, что на какой-то ленте выстроены в ряд ячейки (маленькие площадочки) с нанесенными на них символами. Каждой из таких ячеек можно поставить в соответствие номер 1, 2, 3 и т. д. В зависимости от того, какая ячейка видна в данный момент, на ленте показывается соответствующий значок, и по мере продвижения ленты эти значки смещается на следующие друг за другом позиции.

Входную ленту в машине Тьюринга можно рассматривать как модель компьютерного устройства ввода, выходную ленту — как модель устройства вывода, а рабочие ленты — как эквивалент внешнего запоминающего устройства. Оказывается, поведение периферийных устройств и внешних накопителей, которые на практике являются довольно сложными, тоже можно уложить в теоретическую схему, представив его в виде записи и считывания последовательностей символов на ленте. Число типов используемых символов является конечным и наперед заданным. Число рабочих лент тоже определено заранее.

Та часть, которая моделирует блок выполнения операций и устройство управления компьютера, представляет собой машину с конечным числом состояний. Все составные части (об этом речь шла выше) обладают одним свойством, которое везде четко оговорено, — свойством конечности. В машине с конечным числом состояний заранее определяется число состояний, присущее данной машине, а затем на основе состояния машины в данный момент времени в зависимости от типа символов, считываемых в этот момент с ленты ввода и рабочих лент, определяется состояние машины в следующий момент времени. Одновременно с этим по комбинациям символов, записанных на выходной и рабочих лентах, принимается решение о том, какие из меток, определяющих положение соответствующей ленты, передвинуть на один шаг.

Поскольку число комбинаций символов, считываемых с лент, а также число состояний в предыдущий момент конечны, то, хотя произведение их выражается довольно большим числом, оно тоже не бесконечно. Кроме того, число сочетаний записей на лентах и сдвигов меток, определяющих адрес на лентах, и число состояний в следующий момент времени тоже конечны.

Поведение машины с ограниченным числом состояний можно описать с помощью большой карты или таблицы, построенной таким образом, что по вертикали этой таблицы откладывается полный набор комбинаций символов, считываемых в предыдущий момент, и возможных состояний, а по горизонтали откладывается набор комбинаций записанных символов, перемещения меток и состояний.

Когда в некоторый момент времени имеет место какое-то состояние, по таблице сразу же можно определить, что произойдет в следующий момент времени. То, что таблица может получиться очень большой, с теоретической точки зрения не существенно. Главное, что с помощью таблицы конечных размеров мы можем полностью описать поведение машины.

Понятие <машина с ограниченным числом состояний> обозначается по-японски шестью иероглифами, что для непосвященного человека выглядит устрашающе. В русском языке то же самое выражается намного проще — словами <конечный автомат> или просто <автомат>, а во множественном числе — <автоматы>. Раньше автоматами назывались механические куклы — изящные французские куколки с фарфоровыми головками, которые благодаря встроенным в них заводным пружинам могли совершать разные смешные движения. Хотя, с теоретической точки зрения, название <машина с ограниченным числом состояний> ничуть не хуже слова <автомат>, оно казалось сухим и лишенным очарования и поэтому почти исчезло из обихода, а термин <автомат> сохранился до настоящего времени.

Оформление заявки
X
Перезвоните мне
X