\documentclass[bachelor, och, labwork]{SCWorks} % параметр - тип обучения - одно из значений: % spec - специальность % bachelor - бакалавриат (по умолчанию) % master - магистратура % параметр - форма обучения - одно из значений: % och - очное (по умолчанию) % zaoch - заочное % параметр - тип работы - одно из значений: % referat - реферат % coursework - курсовая работа (по умолчанию) % diploma - дипломная работа % pract - отчет по практике % параметр - включение шрифта % times - включение шрифта Times New Roman (если установлен) % по умолчанию выключен \usepackage{subfigure} \usepackage{tikz,pgfplots} \pgfplotsset{compat=1.5} \usepackage{float} %\usepackage{titlesec} \setcounter{secnumdepth}{4} %\titleformat{\paragraph} %{\normalfont\normalsize}{\theparagraph}{1em}{} %\titlespacing*{\paragraph} %{35.5pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex} \titleformat{\paragraph}[block] {\hspace{1.25cm}\normalfont} {\theparagraph}{1ex}{} \titlespacing{\paragraph} {0cm}{2ex plus 1ex minus .2ex}{.4ex plus.2ex} % --------------------------------------------------------------------------% \usepackage[T2A]{fontenc} \usepackage[utf8]{inputenc} \usepackage{graphicx} \graphicspath{ {./images/} } \usepackage{tempora} \usepackage[sort,compress]{cite} \usepackage{amsmath} \usepackage{amssymb} \usepackage{amsthm} \usepackage{fancyvrb} \usepackage{listings} \usepackage{listingsutf8} \usepackage{longtable} \usepackage{tabularx} \usepackage{multirow} \usepackage{array} \usepackage[english,russian]{babel} % \usepackage[colorlinks=true]{hyperref} \usepackage{url} \usepackage{enumitem} \newcommand{\eqdef}{\stackrel {\rm def}{=}} \newcommand{\dsint}{\displaystyle\int} \renewcommand\theFancyVerbLine{\small\arabic{FancyVerbLine}} \newtheorem{lem}{Лемма} \begin{document} % Кафедра (в родительном падеже) \chair{} % Тема работы \title{} % Курс \course{2} % Группа \group{231} % Факультет (в родительном падеже) (по умолчанию "факультета КНиИТ") \department{факультета КНиИТ} % Специальность/направление код - наименование %\napravlenie{09.03.04 "--- Программная инженерия} %\napravlenie{010500 "--- Математическое обеспечение и администрирование информационных систем} %\napravlenie{230100 "--- Информатика и вычислительная техника} %\napravlenie{231000 "--- Программная инженерия} \napravlenie{10.05.01 "--- Компьютерная безопасность} % Для студентки. Для работы студента следующая команда не нужна. % \studenttitle{Студентки} % Фамилия, имя, отчество в родительном падеже \author{Гущина Андрея Юрьевича} % Заведующий кафедрой % \chtitle{} % степень, звание % \chname{} %Научный руководитель (для реферата преподаватель проверяющий работу) \satitle{ассистент} %должность, степень, звание \saname{А.~А.~Трунов} % Руководитель практики от организации (только для практики, % для остальных типов работ не используется) % \patitle{к.ф.-м.н.} % \paname{С.~В.~Миронов} % Семестр (только для практики, для остальных % типов работ не используется) %\term{8} % Наименование практики (только для практики, для остальных % типов работ не используется) %\practtype{преддипломная} % Продолжительность практики (количество недель) (только для практики, % для остальных типов работ не используется) %\duration{4} % Даты начала и окончания практики (только для практики, для остальных % типов работ не используется) %\practStart{30.04.2019} %\practFinish{27.05.2019} % Год выполнения отчета \date{2020} \maketitle % Включение нумерации рисунков, формул и таблиц по разделам % (по умолчанию - нумерация сквозная) % (допускается оба вида нумерации) % \secNumbering % \tableofcontents % \section{Лабораторная работа \#1} \section{Задание} \textit{Назовите регистры общего назначения (РОН).} \textit{Определите, какие значения в них записаны?} Регистрами общего назначения являются: AX = 0, BX = 0, CX = 0, DX = 0, SP = 00FD, BP = 0, SI = 0, DI = 0 \begin{figure}[H] \centering \includegraphics[width=\textwidth]{registers.png} \caption{Содержимое регистров} \end{figure} \section{Задание} \textit{Введите в РОН шестнадцатеричные числа 56h, 1F3h, D8h, AB1h. Просмотрите содержимое всех регистров. Внесите результат в отчет. Введите во все РОН нулевые значения. Проверьте содержимое регистров} Ввёл по очереди заданные значения в регистры общего назначения с помощью команды r. Получил следующий результат. \begin{figure}[H] \centering \includegraphics[width=\textwidth]{registers_2.png} \caption{Содержимое регистров} \end{figure} После этого заполнил регистры нулями. \begin{figure}[H] \centering \includegraphics[width=\textwidth]{registers_3.png} \caption{Содержимое регистров} \label{fig:reg3} \end{figure} \section{Задание} \textit{Из каких частей состоит адрес ячейки памяти в реальном режиме работы процессора? Укажите размер сегмента в адресуемой памяти процессора в реальном режиме. Какой наименьший сдвиг возможен между начальными байтами последовательных сегментов? Определите текущие адреса сегмента данных и сегмента кода.} Адрес ячейки памяти состоит из двух чисел: адреса начала сегмента и размера смещения относительно начала сегмента. Размер сегмента в адресуемой памяти процессора в реальном режиме составляет 65536 байт. Наименьший сдвиг между начальными байтами последовательных сегментов равен 16 байт. Базовые адреса сегмента данных и кода соответственно хранятся в регистрах DS и CS. Например, на рис. \ref{fig:reg3} они равны 073Fh. \section{Задание} \textit{Определите, с какого адреса должен начинаться сегмент данных, если сегмент кода имеет размер 64 кбайт. Установите нужное значение адреса сегмента данных. Введите в область сегмента данных последовательность чисел 10h,25h,1F,AC. В какой сегмент вводит значения отладчик, исполняя команду Е со смещением в качестве аргумента? Используйте формат команды E<сегмент>.<смещение> для ввода кода инструкции ADD в сегмент кода, начиная со смещения 0100} \section{Задание} \begin{enumerate} \item Введите в регистр BX значение 1. \item Введите в сегмент кода инструкцию сложения со смещением 100. Установите IP на адрес введенной инструкции. Выполните сложение. Повторите инструкцию сложения еще трижды, каждый раз устанавливая соответствующий адрес в IP. \item Введите в регистр BX значение 2. \item Введите инструкцию умножения со смещением 102. Выполните эту инструкцию. \item Выполните инструкцию вычитания 3 раза подряд. Смещение вычитания 104. \item Выполните инструкцию деления (смещение 106). \item Вернитесь к инструкции вычитания и выполните её. \item Какое значение получено в регистре AX? Объясните его. \item Что изменилось в регистре флагов и почему? \end{enumerate} \section{Задание} \textit{Выведите листинг сегмента кода со смещения 100. Скопируйте его в отчет. Разделите число 7С4B12h на число 1С0. Чему равно частное и остаток? Чему равно произведение чисел 7C4Bh и 1A5?} \section{Задание} \textit{Введите код прерывания 21 со смещением 104, укажите номер прерывания 02h код символа 44h. Выполните инструкцию командой g от 104 до 106. Попробуйте объяснить полученный результат.} \end{document}