
Министерство образования Российской Федерации
Казанский государственный технический университет
им. А.Н. Туполева
Кафедра КС
Рассчетно-графическая работа по теории автоматов
Исполнитель:
студент гр. 4201
Фархутдинов А.А.
Оценка:__________________
Подпись:_________________
«___»__________2009 год
Казань 2009
Задание: Автомат принимает монеты достоинством 1 и 10 рублей, выдает товар по цене 3 рубля и 8 рублей
Описание переменных величин:
а) Входные сигналы:
x1 – поступление монеты 1 рубля;
x2 – поступление монеты 10 рублей;
x3 – заказ товара за 3 рубля;
x4 – заказ товара за 8 рублей;
б) Внутренние состояния автомата:
a0 – начальное состояние (автомат не выдает никаких сигналов);
a1 – набрано 1 рубль;
a2 – набрано 10 рублей;
a3 – набрано 2 рубля;
a4 – набрано 3 рубля;
a5 – набрано 4 рубля;
a6 – набрано 5 рублей;
a7 – набрано 6 рублей;
a8 – набрано 7 рублей;
a9 – набрано 8 рублей;
в) Выходные сигналы:
y0 – автомат не выполняет никаких действий (молчание/ждущее состояние);
y1 – выдача товара за 1 рубль;
y2 – выдача товара за 1 рубль + 7 рублей сдача;
у3 – выдача товара за 8 рублей;
y4 – выдача товара за 8 рублей + 2 рубля сдача;
y5 – возврат монет.
2) Составление графов:
а)
a2
a1
a9
x1/y0
x1/y0
x2/y0
x1/y0
x1,x2/y5
x2/y5
x1,x2/y5
a3
a8
a0
x2/y5
x2/y5
x1/y0
x2/y5
x2/y5
x1/y0
x2/y5
x2/y5
a4
a7
x1/y0
x1/y0
x1/y0
a5
a6
б
a1
)a2
a0
a4
a5
a6
a7
a8
a9
a3










x3/y2
x4/y4
x3,x4/y5
x3/y1
x4/y5
x3,x4/y5
x3,x4/y5
x3,x4/y5
x3,x4/y5
x3/y5
x4/y3
x3,x4/y0
3) Кодирование абстрактных переменных:
Определим минимально-необходимое количество триггеров R:
R=]log2M[ , где М –количество состояний.
В нашем случае М=10, поэтому R=]log2 10[≈4.
Таким образом, в автомате требуется 4 триггера, состояния, которых обозначим через Q1, Q2, Q3, Q4.
Кроме того должно быть 4 входа, обозначим их через α1, α2, α3, α4 соответственно, и 5 выходов, представленных в виде z1, z2, z3, z4, z5.
Составим таблицы кодирования внутренних состояний (табл.1), входных (табл.2) и выходных (табл.3) сигналов абстрактного автомата. Пустые места в таблице означают неопределенность.
Таблица №2.
Входные сигналы
Таблица №1. Внутренние состояния. |
||||
|
Q1 |
Q2 |
Q3 |
Q4 |
а0 |
0 |
0 |
0 |
0 |
а1 |
0 |
0 |
0 |
1 |
а2 |
0 |
0 |
1 |
0 |
а3 |
0 |
0 |
1 |
1 |
а4 |
0 |
1 |
0 |
0 |
а5 |
0 |
1 |
0 |
1 |
а6 |
0 |
1 |
1 |
0 |
а7 |
0 |
1 |
1 |
1 |
а8 |
1 |
0 |
0 |
0 |
а9 |
1 |
0 |
0 |
1 |
|
α1 |
α2 |
α3 |
α4 |
A1 |
A2 |
x1 |
1 |
0 |
0 |
0 |
0 |
0 |
x2 |
0 |
1 |
0 |
0 |
0 |
1 |
x3 |
0 |
0 |
1 |
0 |
0 |
1 |
x4 |
0 |
0 |
0 |
1 |
1 |
0 |
Таблица №3. Выходные сигналы. |
|
|||||
|
z1 |
z2 |
z3 |
z4 |
z5 |
|
y0 |
0 |
0 |
0 |
0 |
0 |
|
y1 |
1 |
0 |
0 |
0 |
0 |
|
y2 |
0 |
1 |
0 |
0 |
0 |
|
y3 |
0 |
0 |
1 |
0 |
0 |
|
y4 |
0 |
0 |
0 |
1 |
0 |
|
y5 |
0 |
0 |
0 |
0 |
1 |
Матрицы переходов для триггеров: |
|||||||||
T |
Q(t) |
- |
Q'(t+1) |
|
R |
S |
Q(t) |
- |
Q'(t+1) |
0 |
0 |
- |
0 |
|
* |
0 |
0 |
- |
0 |
1 |
0 |
- |
1 |
|
0 |
1 |
0 |
- |
1 |
1 |
1 |
- |
0 |
|
1 |
0 |
1 |
- |
0 |
0 |
1 |
- |
1 |
|
0 |
* |
1 |
- |
1 |
|
|
|
|
|
|
|
|
|
|
D |
Q(t) |
- |
Q'(t+1) |
|
J |
K |
Q(t) |
- |
Q'(t+1) |
0 |
0 |
- |
0 |
|
0 |
* |
0 |
- |
0 |
1 |
0 |
- |
1 |
|
1 |
* |
0 |
- |
1 |
0 |
1 |
- |
0 |
|
* |
1 |
1 |
- |
0 |
1 |
1 |
- |
1 |
|
* |
0 |
1 |
- |
1 |