Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет указания по ЛР ТА и ФЯ.DOC
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.91 Mб
Скачать

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

«Самарский государственный технический университет»

Кафедра “Вычислительная техника”

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам

По курсу «Теория автоматов и формальных языков»

Составитель: И.В. ВОРОНЦОВ

Самара 2012

Составитель: И.В. ВОРОНЦОВ

УДК 621.382

Методические указания к лабораторным работам

по курсу «Теория автоматов и формальных языков»/ Самар. гос. техн. ун-т; Сост. И.В. ВОРОНЦОВ. Самара, 2013, 60 с.

Указания рекомендуются студентам специальности 230100, «Информатика и вычислительная техника» по профилю подготовки бакалавров «Вычислительные машины, комплексы, системы и сети»

Печатается по решению редакционно-издательского совета СамГТУ.

Лабораторная работа № 1

Исследование начальных языков описания цифровых автоматов.

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

1. Краткая теория

1. Начальные языки описания цифровых автоматов

1.1. Начальные языки описания цифровых автоматов.

1.1.1. Язык регулярных выражений алгебры событий. Язык регулярных выражений алгебры событий использует следующие понятия:

  1. Входной алфавит: Z={z1, z2, ... zn}

  2. Выходной алфавит: W={w1, w2, … wm}

  3. Множество событий: S={s1, s2, … sk}

Регулярные выражений, описывающие работу автомата записываются из букв входного алфавита с применением следующих операций:

Zi  Zj – объединение (дизъюнкция),

Zi  Zj или Zi Zj – конъюнкция,

{Zi} – итерация.

Всякое регулярное выражение определяет некоторое событие siS. Если это событие наступило, то выдаётся соответствующая буква w W.

Например.

Записать регулярное выражение для автомата, работающего с входным алфавитом Z={z1, z2, z3, z4, z5} и имеющего выходной алфавит W={ w1, w2}. Поведение автомата следующее:

  1. Е сли последовательность входных букв (входное слово) начинается с z1, а заканчивается цепочкой z2 z3, то автомат должен выдать выходную букву w1 (событие s1).

  2. Если слово начинается с буквы z2, а заканчивается z4 или z5, то автомат должен выдать букву w2 (событие s2).

s1/w1=z1{z1  z2  z3  z4  z5}z2 z3,

s2/w2=z2{z1  z2  z3  z4  z5}(z4 z5).

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

1.1.2. Граф-схемы алгоритмов (гса) функционирования автоматов.

ГСА – это ориентированный связанный граф, содержащий одну начальную Yн, одну конечную Yк, множества условных X={x1 x2 ..xn} и операторных Y={y1 y2 ..ym} вершин.

ГСА должна удовлетворять следующим условиям:

  1. Каждый выход из любой вершины должен быть соединён только с одним входом в какую-либо вершину.

  2. Любая вершина лежит хотя бы на одном пути из Yн в Yк.

  3. Один из выходов условной вершины может соединяться с её входом, что недопустимо для операторных вершин.

В операторных вершинах могут помещаться выходные буквы автомата, в условных – входные (иначе – логические условия). В условных вершинах проверяется наличие на входе автомата соответствующей буквы. В зависимости от того, та ли буква на входе или нет (выходы «1» или «0» условной вершины) будет соответствующий переход по ГСА. Если при этом встречается операторная вершина, то автомат выдаёт соответствующую выходную букву.

На рис.1 приведен пример ГСА. В нашем примере символы xi и yi – это просто условное обозначение соответствующих условных и операторных вершин (но не входные и выходные буквы автомата!). Обычно начальную и конечную вершины ГСА обозначают несколько отлично от остальных операторных вершин (смотри рис.1: вершины Yн и Yк,).