<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://simhard.com/ex/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://simhard.com/ex/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alexandr+Dubinin</id>
		<title>SimHardWiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://simhard.com/ex/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alexandr+Dubinin"/>
		<link rel="alternate" type="text/html" href="http://simhard.com/ex/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Alexandr_Dubinin"/>
		<updated>2026-04-24T12:36:37Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.21.3</generator>

	<entry>
		<id>http://simhard.com/ex/index.php/%D0%92%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82_3</id>
		<title>Вариант 3</title>
		<link rel="alternate" type="text/html" href="http://simhard.com/ex/index.php/%D0%92%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82_3"/>
				<updated>2013-12-23T10:45:43Z</updated>
		
		<summary type="html">&lt;p&gt;Alexandr Dubinin: Новая страница: «=Синтез логических схем структурных автоматов Мили на элементах классического базиса= ==…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Синтез логических схем структурных автоматов Мили на элементах классического базиса=&lt;br /&gt;
== Введение==&lt;br /&gt;
Не все окружающие нас преобразователи информации выполняют функциональное отражение информации. Результат преобразования вход=&amp;gt;выход зачастую  зависит не только от того, какая информация в данный момент появилась на входе, но и от того, что происходило раньше, от предыстории преобразования. Множество примеров тому дают биологические системы. Например, один и тот же вход – извинение соседа после того, как он наступил вам на ногу в переполненном трамвае – вызовет у вас одну реакцию в первый раз и совсем другую – в пятый раз. По-видимому, ваша реакция будет различной, она будет зависеть от предыдущих событий, произошедших в трамвае, от входной истории.&lt;br /&gt;
Таким образом, существуют более сложные, не функциональные преобразователи информации; их реакция зависит не только от входа в данный момент, но и от того, что было на входе раньше, от входной истории. Такие преобразователи называются автоматами.&lt;br /&gt;
Исследования в области теории автоматов начались в середине 50-х годов прошлого века. Несмотря на свою простоту, модель конечного автомата оказалась чрезвычайно удобной в огромном числе приложений не только в информатике, но и  в других областях инженерной деятельности. Большой интерес к этой теории объясняется именно широкими возможностями ее применения.&lt;br /&gt;
Из выступлений на семинаре «Software 2000: a View of the Future» 10 апреля 1994 года:&lt;br /&gt;
Brian Randell: «Я помню Дуга Росса из компании SofTech, много лет назад говорившего, что 80 или даже 90% информатики (Computer Science) будут в будущем основываться на теории конечных автоматов»[1].&lt;br /&gt;
Herve Gallaire: «Я знаю людей из «Боинга», занимающихся системами стабилизации самолетов с использованием чистой теории автоматов. Даже трудно себе представить, что им удалось сделать с помощью этой теории»[1].&lt;br /&gt;
Brian Randell: «Большая часть теории автоматов была успешно использована в системных программах и текстовых фильтрах в OS UNIX. Это позволяет множеству людей работать на высоком уровне и разрабатывать очень эффективные программы»[1].&lt;br /&gt;
Целью курсовой работы является разработка алгоритма перехода от абстрактного автомата Мили к структурному, написание программы совместной реализации функций выходов и переходов структурного автомата Мили, которая в будущем может быть использована в учебном процессе.&lt;br /&gt;
==БУЛЕВА ФУНКЦИЯ==&lt;br /&gt;
* '''Определение 1.1.''' Логическая (булева) переменная - такая величина x, которая может принимать только два значения: x = {0,1} (ложное или истинное высказывание).&lt;br /&gt;
* '''Определение 1.2.''' Логическая функция (функция алгебры логики – ФАЛ) – функция многих аргументов f(xn-1, xn-2,, ..., x0), принимающая значения равные нулю или единице на наборах логических переменных  xn-1, xn-2,, ..., x0 [3].&lt;br /&gt;
[[File:в4_1.jpg|thumb|400px|Общий вид таблицы истинности]]&lt;br /&gt;
Любую логическую функцию можно задать таблицей истинности, в левой части которой вписаны все возможные наборы значений ее аргументов x_1,x_2,…,x_n , а правая часть - столбец значений функции, соответствующих этим наборам.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Некоторые функции имеют специальные названия и значения. На их основе булеву функцию можно представить в виде формулы. Значения всех логических функций от одной переменной представлены в таблице 1.1.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;big style=&amp;quot;color:red;&amp;quot;&amp;gt;'''''Таблица 1.1. Значения логических функций''''' &amp;lt;/big&amp;gt;&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! x&lt;br /&gt;
! fo(x)&lt;br /&gt;
! f1(x)&lt;br /&gt;
! f2(x)&lt;br /&gt;
! f3(x)&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Функция f0(x) называется константой нуля, а функция f1(x) - константой единицы.&lt;br /&gt;
Функция f2(x), повторяющая значения логической переменной, - тождественная функция (f2(x) = x), а функция f3(x), принимающая значения, обратные значениям переменной x, - логическое отрицание или инверсия (НЕ) (f3(x) = /x ).&amp;lt;br /&amp;gt;&lt;br /&gt;
В таблице 1.2 перечислены некоторые булевы функции от двух аргументов  :&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big style=&amp;quot;color:green;&amp;quot;&amp;gt;'''Таблица 1.2. Булевы функции''' &amp;lt;/big&amp;gt;&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! x1x2&lt;br /&gt;
! g0&lt;br /&gt;
! g1&lt;br /&gt;
! g2&lt;br /&gt;
! g3&lt;br /&gt;
! g4&lt;br /&gt;
! g5&lt;br /&gt;
! g6&lt;br /&gt;
! g7&lt;br /&gt;
! g8&lt;br /&gt;
|-&lt;br /&gt;
| 0    0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 0    1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 1    0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 1    1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Закон функционирования  автоматов Мили  описывается следующими  выражениями  для функции  переходов  и функции выходов:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;a(t + 1) = δ(a(t),z(t))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;w(t) = λ(a(t),z(t))&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В  данных  уравнениях a(t) –  состояние  автомата  в момент времени t, z(t) и w(t) – входной и выходной сигналы в  момент t,  δ(a(t),z(t)) –  функция  переходов  автомата, λ(a(t),z(t)) – функция выходов автомата [4].&lt;br /&gt;
Отличительной особенностью автоматов Мили является то, что их выходные сигналы зависят как от состояния автомата, так и от значения входного сигнала. &lt;br /&gt;
Для  полного  задания  автомата  Мили  дополнительно к законам функционирования, необходимо указать их начальное  состояние  и  определить  входной  и  выходной  алфавиты.&lt;br /&gt;
При  графическом  способе  автомат  задается  в виде ориентированного  графа,  вершины которого  соответствуют  состояниям, а дуги – переходам между ними. Дуга, направленная из вершины am, задает  переход  в автомате из состояния am в состояние as.  В начале этой дуги записывается входной сигнал zf∈ Z,  вызывающий данный  переход as=δ(am,zf).   Для графа автомата Мили выходной сигнал wg ∈ W, формируемый на  переходе,  записывается  в  конце  дуги.  Если  переход  в  автомате   из   состояния am  в  состояние as  производится  под  действием  нескольких входных сигналов,  то дуге графа, направленной из am в as,  приписываются  все  эти входные и соответствующие выходные сигналы. Граф автомата Мили представлен  на  рисунке 2.2 [4].&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:в4_2.jpg|thumb|300px|left|Рисунок 2.2. Автомат Мили]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
    Function minm(ByRef lm, ByRef skleika, ByRef n)&lt;br /&gt;
        Dim fl&lt;br /&gt;
        For i1 = 1 To lm - 1&lt;br /&gt;
            For i2 = i1 + 1 To lm&lt;br /&gt;
                fl = 0&lt;br /&gt;
                For j = 1 To n&lt;br /&gt;
                    If skleika(i1, j) = skleika(i2, j) Then&lt;br /&gt;
                        fl = fl + 1&lt;br /&gt;
                    End If&lt;br /&gt;
                Next&lt;br /&gt;
                If fl = n Then&lt;br /&gt;
                    For i3 = i2 + 1 To lm&lt;br /&gt;
                        For j = 1 To n&lt;br /&gt;
                            skleika(i3 - 1, j) = skleika(i3, j)&lt;br /&gt;
                        Next&lt;br /&gt;
                    Next&lt;br /&gt;
                    lm = lm - 1&lt;br /&gt;
                End If&lt;br /&gt;
            Next&lt;br /&gt;
        Next&lt;br /&gt;
    End Function&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;graph&amp;gt;&lt;br /&gt;
digraph&lt;br /&gt;
&amp;quot;Граф задания на дипломную работу&amp;quot; {&lt;br /&gt;
&amp;quot;Ознакомление с литературой&amp;quot; [shape=box]&lt;br /&gt;
&amp;quot;Минимизация функций выходов и переходов&amp;quot; [shape=box]&lt;br /&gt;
&amp;quot;Разработка алгоритма&amp;quot; [shape=box]&lt;br /&gt;
&amp;quot;Написание программы&amp;quot; [shape=box]&lt;br /&gt;
&amp;quot;Оформление дипломной работы&amp;quot;[shape=diamond]&lt;br /&gt;
&amp;quot;Ознакомление с литературой&amp;quot;  -&amp;gt; &amp;quot;Минимизация функций выходов и переходов&amp;quot; -&amp;gt; &amp;quot;Разработка алгоритма&amp;quot; -&amp;gt; &amp;quot;Написание программы&amp;quot;-&amp;gt; &amp;quot;Оформление дипломной работы&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/graph&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Заключение ==&lt;br /&gt;
При выполнении курсовой работы был рассмотрен алгоритм перехода от абстрактного автомата Мили к структурному, написана программа совместной реализации функций переходов и выходов структурного автомата  Мили.&lt;br /&gt;
В дальнейшем возможно увеличение исходной таблицы абстрактного автомата Мили, возможность работы с частичными автоматами, и окончательная реализация схем. Также имеется возможность нахождение оптимального алгоритма кодировки алфавитов исходного автомата и нахождение зависимости числа строк итоговой таблицы от числа входных параметров.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''СПИСОК ЛИТЕРАТУРЫ'''&amp;lt;br /&amp;gt;&lt;br /&gt;
# http://www.ptca.narod.ru&amp;lt;br /&amp;gt;&lt;br /&gt;
# http://www.ru.wikipedia.org&amp;lt;br /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexandr Dubinin</name></author>	</entry>

	</feed>