From fa82af588401a6a6420f627376804f32eb1a58d4 Mon Sep 17 00:00:00 2001 From: Andrew Date: Sat, 5 Dec 2020 03:32:12 +0400 Subject: =?UTF-8?q?=D0=94=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BB=20=D0=B2?= =?UTF-8?q?=D1=82=D0=BE=D1=80=D1=83=D1=8E=20=D0=BB=D0=B0=D0=B1=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- asvt/sem3/lab2/lab2.tex | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) (limited to 'asvt/sem3') diff --git a/asvt/sem3/lab2/lab2.tex b/asvt/sem3/lab2/lab2.tex index 6a390d3..cab3c35 100644 --- a/asvt/sem3/lab2/lab2.tex +++ b/asvt/sem3/lab2/lab2.tex @@ -157,6 +157,8 @@ \end{itemize} \textit{Поместите в отчет результаты вычислений.} +При выполнении сложения результат помещается в регистр AX. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{1_1.png} @@ -169,6 +171,8 @@ \caption{2135 + AF12 = D047} \end{figure} +При выполнении вычитания результат помещается в регистр AX. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{1_3.png} @@ -181,6 +185,8 @@ \caption{4561 - 345A = 1107} \end{figure} +При выполнении умножения результат помещается в регистр AX. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{1_5.png} @@ -193,6 +199,9 @@ \caption{FF * FF = FE01} \end{figure} +При выполнении деления частное помещается в регистр AX, а остаток +в регистр DX. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{1_7.png} @@ -209,12 +218,19 @@ \section{Задание} \textit{Используя прерывание 21, выведите на экран символы F, 3, d, 9, >,(.} +Для подготовки к выполнения задания введём в сегмент кода инструкцию INT 21, +а в регистр AX поместим значение 200h. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{prep_int21.png} - \caption{Подготовка регистров и сегментов к выполнению задания} + \caption{Подготовка регистров и сегмента кода к выполнению задания} \end{figure} +ASCII-кодами символов являются: +<> -- 46, <<3>> -- 33, <> -- 64, +<<9>> -- 39, <<$>$>> -- 3e, <<(>> -- 28. + \begin{figure}[H] \centering \includegraphics[width=0.6\textwidth]{print_F.png} @@ -260,7 +276,7 @@ \begin{figure}[H] \centering - \includegraphics[width=0.6\textwidth]{2_program.png} + \includegraphics[width=0.5\textwidth]{2_program.png} \caption{Ввод программы} \end{figure} @@ -309,7 +325,7 @@ \begin{figure}[H] \centering \includegraphics[width=0.8\textwidth]{5_program.png} - \caption{Написание и запуск программы} + \caption{Текст и запуск программы} \end{figure} \begin{figure}[H] @@ -322,6 +338,10 @@ \textit{Запишите на диск в файл <> программу вывода на экран символа @. При выполнении из командной строки DOS программа должна выводить на экран символ @.} +Можно заметить, что программа занимает 8 байт памяти, поэтому в регистр +CX вносим значение 8. Создать и записать файл можно с помощью команд +N <название файла> и W. + \begin{figure}[H] \centering \includegraphics[width=0.8\textwidth]{6_program.png} @@ -343,6 +363,10 @@ \textit{Запишите программу в файл <>. Проверьте ее работу, запустив из командной строки.} +В сегмент кода внесём текст программы, где в регистры вносятся адрес строки +символов в памяти, а также необходимые прерывания для выведения строки. +Корректность введённо строки можно проверить с помощью команды D. + \begin{figure}[H] \centering \includegraphics[width=0.8\textwidth]{7_string.png} -- cgit v1.2.3