From 50a449f361003babc03739235c0991111a88606a Mon Sep 17 00:00:00 2001 From: Arity-T Date: Mon, 13 Jan 2025 13:13:00 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A4=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D0=B8=20?= =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D1=85=D0=BE=D0=B4=D0=BE=D0=B2=20=D0=B8?= =?UTF-8?q?=20=D0=B2=D1=8B=D1=85=D0=BE=D0=B4=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- coursework/report.tex | 185 +++++++++++++++++++++--------------------- 1 file changed, 93 insertions(+), 92 deletions(-) diff --git a/coursework/report.tex b/coursework/report.tex index 4ba0507..2bb1e70 100644 --- a/coursework/report.tex +++ b/coursework/report.tex @@ -187,8 +187,100 @@ \includegraphics[width=1\linewidth]{img/automat.png} \caption{Граф переходов управляющего конечного автомата.} \label{fig:automat} - \end{figure} + \end{figure} + \subsubsection{Состояния} + Всего было выделено 7 состояний ($S = \{s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7\}$) со следующими значениями: + + \begin{enumerate} + \item \textit{$s_0$: time} -- состояние обычной работы часов, на индикаторах отображаются текущее время (часы и минуты) и день недели; + \item \textit{$s_1$: minutes} -- состояние корректировки минут, отображаются только минуты, остальные индикаторы отключены; + \item \textit{$s_2$: hours} -- состояние корректировки часов, отображаются только часы, остальные индикаторы отключены; + \item \textit{$s_3$: weekday} -- состояние корректировки дня недели, отображается только день недели, все остальные индикаторы отключены; + \item \textit{$s_4$: sec-stop} -- состояние остановленного секундомера, индикатор дня недели отключен, вместо текущего времени выводится последнее время остановки секундомера (вместо часов выводятся минуты, а вместо минут -- секунды); + \item \textit{$s_5$: sec-run} -- состояние запущенного секундомера, индикатор дня недели отключён, вместо текущего времени выводится время работы секундомера (вместо часов выводятся минуты, а вместо минут -- секунды); + \item \textit{$s_6$: display-off} -- состояние, при котором все индикаторы отключены для экономии электроэнергии, но при этому часы продолжают отсчёт времени. + \end{enumerate} + + Двоичные коды состояний представлены в таблице~\ref{tbl:states}. + + \begin{table}[h!] + \centering + \caption{Коды состояний.} + \label{tbl:states} + \footnotesize + \begin{tabular}{|c|c|} + \hline + \textbf{Состояние} & \textbf{Код} \\ + \hline + \textit{$s_0$: time} & 000 \\ + \hline + \textit{$s_1$: minutes} & 001 \\ + \hline + \textit{$s_2$: hours} & 010 \\ + \hline + \textit{$s_3$: weekday} & 011 \\ + \hline + \textit{$s_4$: sec-stop} & 100 \\ + \hline + \textit{$s_5$: sec-run} & 101 \\ + \hline + \textit{$s_6$: display-off} & 110 \\ + \hline + \end{tabular} + \end{table} + + + \subsubsection{Входы} + На часах предполагается наличие трёх кнопок: $a$, $b$ и $c$. Каждой кнопке соответствует отдельный входной сигнал, таким образом $\Sigma = \{a, b, c\}$. Коды входных сигналов представлены в таблице~\ref{tbl:inputs}. + + \begin{table}[h!] + \centering + \caption{Коды входных сигналов.} + \label{tbl:inputs} + \footnotesize + \begin{tabular}{|c|c|} + \hline + \textbf{Входной сигнал/кнопка} & \textbf{Код} \\ + \hline + $a$ & 00 \\ + \hline + $b$ & 01 \\ + \hline + $c$ & 10 \\ + \hline + \end{tabular} + \end{table} + + + \subsubsection{Выходы} + Было выделено следующее множество выходных сигналов: $Y = \{z_0, z_1, z_2, z_3, z_4\}$. Их назначения и коды представлены в таблице~\ref{tbl:outputs}. + + \begin{table}[h!] + \centering + \caption{Коды импульсных выходных сигналов.} + \label{tbl:outputs} + \footnotesize + \begin{tabular}{|c|c|c|} + \hline + \textbf{Выходной сигнал} & \textbf{Значение} & \textbf{Код} \\ + \hline + $z_0$ & Отсутствие реакции & 000 \\ + \hline + $z_1$ & Увеличение минут на 1 & 001 \\ + \hline + $z_2$ & Увеличение часов на 1 & 010 \\ + \hline + $z_3$ & Следующий день недели & 011 \\ + \hline + $z_4$ & Сброс секундомера & 100 \\ + \hline + \end{tabular} + \end{table} + + \subsubsection{Функции переходов и выходов} + Функции переходов ($\delta$) и выходов ($\lambda$) задаются таблицей \ref{tbl:steps}. Итоговая таблица истинности с учётом указанных кодов состояний, входов и выходов автомата представлена в таблице \ref{tbl:truth-f}. + \begin{table}[h!] \centering \caption{Таблица переходов управляющего автомата.} @@ -315,100 +407,9 @@ \hline \end{tabularx} \end{table} - - - \subsubsection{Состояния} - Всего было выделено 7 состояний ($S = \{s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7\}$) со следующими значениями: - - \begin{enumerate} - \item \textit{$s_0$: time} -- состояние обычной работы часов, на индикаторах отображаются текущее время (часы и минуты) и день недели; - \item \textit{$s_1$: minutes} -- состояние корректировки минут, отображаются только минуты, остальные индикаторы отключены; - \item \textit{$s_2$: hours} -- состояние корректировки часов, отображаются только часы, остальные индикаторы отключены; - \item \textit{$s_3$: weekday} -- состояние корректировки дня недели, отображается только день недели, все остальные индикаторы отключены; - \item \textit{$s_4$: sec-stop} -- состояние остановленного секундомера, индикатор дня недели отключен, вместо текущего времени выводится последнее время остановки секундомера (вместо часов выводятся минуты, а вместо минут -- секунды); - \item \textit{$s_5$: sec-run} -- состояние запущенного секундомера, индикатор дня недели отключён, вместо текущего времени выводится время работы секундомера (вместо часов выводятся минуты, а вместо минут -- секунды); - \item \textit{$s_6$: display-off} -- состояние, при котором все индикаторы отключены для экономии электроэнергии, но при этому часы продолжают отсчёт времени. - \end{enumerate} - - Двоичные коды состояний представлены в таблице~\ref{tbl:states}. - - \begin{table}[h!] - \centering - \caption{Коды состояний.} - \label{tbl:states} - \footnotesize - \begin{tabular}{|c|c|} - \hline - \textbf{Состояние} & \textbf{Код} \\ - \hline - \textit{$s_0$: time} & 000 \\ - \hline - \textit{$s_1$: minutes} & 001 \\ - \hline - \textit{$s_2$: hours} & 010 \\ - \hline - \textit{$s_3$: weekday} & 011 \\ - \hline - \textit{$s_4$: sec-stop} & 100 \\ - \hline - \textit{$s_5$: sec-run} & 101 \\ - \hline - \textit{$s_6$: display-off} & 110 \\ - \hline - \end{tabular} - \end{table} - - - \subsubsection{Входы} - На часах предполагается наличие трёх кнопок: $a$, $b$ и $c$. Каждой кнопке соответствует отдельный входной сигнал, таким образом $\Sigma = \{a, b, c\}$. Коды входных сигналов представлены в таблице~\ref{tbl:inputs}. - - \begin{table}[h!] - \centering - \caption{Коды входных сигналов.} - \label{tbl:inputs} - \footnotesize - \begin{tabular}{|c|c|} - \hline - \textbf{Входной сигнал/кнопка} & \textbf{Код} \\ - \hline - $a$ & 00 \\ - \hline - $b$ & 01 \\ - \hline - $c$ & 10 \\ - \hline - \end{tabular} - \end{table} - \subsubsection{Выходы} - Было выделено следующее множество выходных сигналов: $Y = \{z_0, z_1, z_2, z_3, z_4\}$. Их назначения и коды представлены в таблице~\ref{tbl:outputs}. - \begin{table}[h!] - \centering - \caption{Коды импульсных выходных сигналов.} - \label{tbl:outputs} - \footnotesize - \begin{tabular}{|c|c|c|} - \hline - \textbf{Выходной сигнал} & \textbf{Значение} & \textbf{Код} \\ - \hline - $z_0$ & Отсутствие реакции & 000 \\ - \hline - $z_1$ & Увеличение минут на 1 & 001 \\ - \hline - $z_2$ & Увеличение часов на 1 & 010 \\ - \hline - $z_3$ & Следующий день недели & 011 \\ - \hline - $z_4$ & Сброс секундомера & 100 \\ - \hline - \end{tabular} - \end{table} - - \subsubsection{Функции переходов и выходов} - - \subsubsection{Управляющие воздействия} \begin{table}[h!]