Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Методическое пособие для выполнения лабораторных работ и КР

Методическое пособие для выполнения лабораторных работ и КР, страница 7

PDF-файл Методическое пособие для выполнения лабораторных работ и КР, страница 7 Системное программирование (17500): Книга - 4 семестрМетодическое пособие для выполнения лабораторных работ и КР: Системное программирование - PDF, страница 7 (17500) - СтудИзба2018-01-09СтудИзба

Описание файла

PDF-файл из архива "Методическое пособие для выполнения лабораторных работ и КР", который расположен в категории "". Всё это находится в предмете "системное программирование" из 4 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "системное программирование" в общих файлах.

Просмотр PDF-файла онлайн

Текст 7 страницы из PDF

Редактирования связей задаются параметры-режимы, список которых может бытьполучен запуском компоновщика в режиме справки (tlink.exe /?). Кроме того можно использовать документацию и справочники для получения описания режимов редактирования. Выделим ниже некоторые самые важные:/t - формирование COM исполнимого модуля/v – включение в исполнимый модуль информации, необходимой для работы отладчика/m - построение специального файла – карты внешних связей/l – включение в исполнимый модуль номеров команд для отладчика/L – задание пути для автоматически подключаемых библиотек (.lib).После редактирования связей, если ошибок не обнаружено, формируется исполнимый модель и файл с расширением .map.

Этот файл, для нашего простого случая имеетследующий вид:StartStopLength Name00000H 00011H 00012H MYCODEAddress0000:0000Address0000:0000ClassCODEPublics by NameLETPublics by ValueLETLine numbers for first.obj(FIRST.ASM) segment MYCODE7 0000:00018 0000:000210 0000:000311 0000:0005252010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”12 0000:000A14 0000:000C15 0000:000EProgram entry point at 0000:0001Warning: No stack16 0000:0010Для иллюстрации листинга редактора связей в текст программы я добавил оператор следующего вида:PUBLIC LETЭтот оператор объявляет переменную LET как доступную другим модулям. В первой части файла описываются используемые сегменты (MYCODE), далее описываютсяпеременные, которые объявлены как внешние (LET), в следующем разделе листинга редактирования дается соответствие номера команды листинга и смещения в оперативнойпамяти (Например: 7 0000:0001).При работе с оболочкой QC25 настройки режимов редактирования производятся вотдельном окне (для его вызова нужно в главном меню выбрать пункт “Options” затемподпункт “Make” и в окне позицию “Linker Flags”.):Основные режимы (Flags), задаются аналогично: режим отладки (Debug Flags) ,генерация СОМ файла (Generate .COM File).

Другие режимы задаются в строках: Global,Debug и Release.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”26Для редактирования нескольких модулей в среде QC25 необходимо создать проект,который здесь называется “Program List”. Создание проекта выполняется в пункте главного меню “Маке” и в подпункте “Set Program List”.В специальном окне можно добавить несколько исходных модулей в проект, чтобудет предопределять их совместное редактирование.

На рисунке показано окно, в котором выполняется добавление новых модулей в проект.После добавления необходимо сохранить проект с определенным именем, в примере имя проекта – FIRST.MAK. В этот проект добавлен пока один модуль FIRSTD.ASM.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”27После создания проекта запуск на совместное редактирование выполняется в позиции главного меню “Make” подпункте “Build Program”.Если редактирование связей прошло успешно, то окна с диагностическими сообщениями не появляется. При наличии ошибок открывается специальное окно, в котороеразмещаются все сообщения об ошибках. На одном из рисунков, расположенных вышеокно диагностических сообщений показано.

Для этого в исходный модуль сознательновнесена ошибка для демонстрации работы редактора связей.3.4. Запуск на отладку программы АссемблераВ различных системах программирования для отладки предусмотрены разные программы. В TASM – это Turbo Debugger (TD). В MASM - это Сode View (CV). В QC25 отладчик встроен в интегрированную оболочку. Справедливости ради скажу, что QCвстроена версия CV.Процесс отладки заключается в поиске ошибок и причин их возникновения.

Дляполнофункциональной работы отладчика в исполнимый модуль должна быть включенаотладочная информация. Для TASM компиляция и редактирование связей должны бытьвыполнены с установкой следующих режимы:− TASM.EXE – режим “/zi” – включение отладочной информации в объектный модуль.− TLINK.EXE – режим “/v” - включение отладочной информации в исполнимыймодуль.Если это выполнено, то запуск на отладку может быть выполнен следующим образом:C:\BORLANDC\TASM>TD.EXE first.exe↵2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”28Отладчики работают в режиме диалога, поэтому на экране появиться специальноеокно отладчика, показанное ниже.В левой части окна отладчика расположен исходный текст отлаживаемой программы (окно - Module), а в правой части ее машинное представление (окно - CPU).

Кроме того в этом окне показаны: регистры микропроцессора (AX-IP), основные флаги (с - d), область сегмента данных (ES) и область сегмента стека (SS). В нижней части экрана показано окно просмотра данных (окно - Watches), в котором могут быть представлены любыепеременные программы.В целом отладчик позволяет выполнять следующие операции:− Выполнять программу по шагам (трассировка по отдельным командам). Существуют несколько возможностей трассировки: F8, F7, F4, F9.− Просматривать регистры, переменные, области памяти по ходу выполнения программы.− Останавливать программу в заданном месте (точки останова – BreakPoint) или позаданному условию.− Выполнять изменение данных в процессе такой трассировки.− Увидеть результаты работы программы (Alt+F5).2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”29Аналогичные действия можно выполнить в среде QC25, однако запускать для этогоотдельного отладчика не нужно, он интегрирован в оболочку. Для запуска отладки достаточно установить параметры компиляции и редактирования с возможностью отладки, создать программу и нажать клавишу F8.

Мы получим следующее окно (см. рисунок ниже), вкотором доступны практически те же возможности, что и в TD..В данном окне мы видим основную программу, которая может быть выполнена пошагам. В пункте меню “Run” перечислены возможности такого выполнения (клавиша “F8”). Текущая строка программы, которая должна быть выполнена на очередном шаге,выделена цветом (в нашем случае - зеленым).

В специальном окне (“Registers”) показанывсе регистры программы и флаги (“FL”). Данное окно может быть вызвано так: “View”=>“Windows” => “Registers”. Окно “Debug” предназначено для индикации текущих значений переменных и выражений программ. Это окно может быть вызвано так: “Debug”=>“Watch values …” => “<имя переменной> - Add ”.

В нижней строке окна дана подсказка для возможных операций трассировки программы. Результаты работы программы(вывод на консоль) можно посмотреть в специальном окне “View” =>“Windows” =>“Output” или нажать в любой момент клавишу “F4”.3.5. Запуск на выполнение программы АссемблераЗапуск на выполнение построенной исполнимой программы выполняется таким жеобразом, как и запускается любая программа. Возможны следующие варианты:− Запуск из командной строки;− Запуск под управлением отладчика;− Запуск из файлового менеджера;− Запуск в среде WINDOWS.При запуске из командной строки мы должны точно знать имя формируемого исполнимого модуля и обеспечить путь к программе в среде операционной системы (Команды CD или переменная PATH). При запуске из командной строки нужно ввестиC:\BORLANDC\TASM>first.exe↵AРезультат работы программы мы увидим следующей строке (“A” выделено шрифтом).2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”30При запуске под управлением отладчика необходимо воспользоваться специальными клавишами.

В TD – это клавиша “F9”, а QC25 - “F5”. Результат работы программымы можем посмотреть: в TD – “Window”=> “User screen” (или комбинация Alt+F5), а вQC25 “View” =>“Windows” => “Output” (или нажать клавишу “F4”).При запуске из файлового менеджера запуск производиться простым нажатиемклавиши “Enter” после выделения конкретной программы в панели просмотра файлов.Для программы, при необходимости, будет запущено окно командной строки, а результаты можно наблюдать в этом окне.При запуске в среде WINDOWS (любым известным Вам способом) будет автоматически запущена командная строка, а в ней программа.

Если в программе не предусмотрено ожидание ввода клавиши, то окно после этого также автоматически закроется. Поэтому желательно в программе предусмотреть еще несколько команд вида перед завершением программы:; Ожидание завершения программыMOV AH, 01HINT 021HВ этом случае окно командной строки не будет закрыто автоматически, но посленажатия на любую клавишу программа и окно командной строки закроется.3.6. Применение командных файлов для работы с АссемблеромЕсли Вы уже попробовали отладить простейшую программу в режиме команднойстроки, а даже под управлением файлового менеджера, то вы убедились, что необходимомногократно вводить команды (“пальчиками!!!”), что достаточно трудоемко и приводитчасто к ошибкам ввода. Наиболее удобно работать в интегрированной среде, освоив возможности управления клавишами или мышкой. Не все программисты желают использовать интегрированные оболочки для работы, хотя трудоемкость их, несомненно, не устраивает.

Для преодоления этого факта можно использовать командные файлы (см. лабораторную работу № 2). Можно создать командный файл, который настраивается на параметры (например, на имя исходного модуля), и использовать его для отладки программ.Такой файл может содержать различные настройки, меню для управления и включать всефазы работы с программой, перечисленные выше. Пример самого простого командногофайла, который я назвал “COMPTASM.BAT” приведен ниже:REM Фаза редактирования исходного модуляnotepad.exe %1.asmREM Фаза компиляцииtasm /l /zi /c %1.asmREM Фаза редактирования связейtlink /v /m /l %1.objREM Фаза отладкиPAUSEtd %1.exeДля запуска такого командного файла достаточно указать один параметр, которыйопределяет имя модуля для компиляции и редактирования.

Кроме того, должны быть определены пути (PATH) ко всем выполняемым в командном файле программам. В этом командном файле я вызываю стандартный редактор текста “notepad.exe” и вставил команду“PAUSE” для контроля предыдущих шагов.

Можно здесь “пофантазировать” и создатьфайл: без отладчика, зациклить его выполнение, сделать контроль вводимого параметра ит.д. Файл с зацикливанием и выполнением без отладчика показан ниже::STARTRKM2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”31IF (%1) ==() GOTO FINISHREM Фаза редактирования исходного модуляnotepad.exe %1.asmREM Фаза компиляцииtasm /l /zi /c %1.asmREM Фаза редактирования связейtlink /v /m /l %1.objPAUSEREM Фаза выполнения%1.exePAUSEGOTO START:FINISHECHO НЕТ ПАРАМЕТРАВ данном случае необходимо обратить внимание на кодировку русских букв и впрограмме и в командном файле.

Кодировка (ANSI или ASCII) должна соответствоватьрежиму командной строки, в котором вы работаете, и при необходимости нужно в командном файле запустить русификатор (RKM). К сожалению, приведенный командныйфайл приходится завершать с помощью кнопки завершения окна в WINDOWS (“X“).Практика.1.

Создайте командный файл для ассемблирования с пунктами меню2. Создайте командный файл с возможностью компиляции нескольких файлов.3. Создайте командный файл с выбором режима отладки: с отладчиком и без него.2010 год 2 курс 4-й семестр Большаков С.А.“Системное программирование”324.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее