Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Топ:
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Интересное:
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Дисциплины:
2017-11-17 | 335 |
5.00
из
|
Заказать работу |
|
|
Часть 1. Этапы формирования ассемблерной программы
Цель цикла работ - ознакомиться: сэлементамипрограммированияна языкеассемблера ПК, со структурой исполняемых.ЕХЕ машинных программ, спроцессами ассемблирования и создания исполняемой машиннойпрограммы,с отладкой программ в среде отладчикаDEBUG, получить навыки работына профессиональной ПК. Изучить взаимодействие компонентов ПК при исполнении машинной программы и процедур прерывания. Познакомиться с процедурами машинного перевода ASCII-кодов в двоичные коды и обратно.
Необходимые ресурсы:
· Оборудование: IBM PC совместимая ПК.
· Программное обеспечение: MS DOS, транслятор-компилятор MASM; EDIT NC или иной текстовый редактор, формирующий файлы с расширением.TXT; загрузчик программ LINK; отладчик программ DEBUG.
Порядок выполнения работ
1. Ознакомиться с теоретическими вопросами выполнения заданий лабораторной работы: сэлементамипрограммированияна языкеассемблера ПК, с системой прерываний ПК и использованием прерываний в ассемблере, со структурой исполняемых.ЕХЕ машинных программ, спроцессами ассемблирования и создания исполнимой машиннойпрограммы
2. Выполнить задания.
3. Ознакомить преподавателя с результатами работы. Ее завершение по разрешению преподавателя. Получение задания на следующую работу.
Перечень заданий
1. Ознакомиться с элементами программирования дляПК на языкеассемблера (включая: структуру иназначениерегистровойпамятиМП, способы адресации ячеек основной памяти, основныепрерыванияBIOSи DOS, используемые при работе с клавиатурой, дисплеемидисковойпамятью).
2. Ознакомиться с процессами ассемблирования, редактирования связей и создания исполняемых машинных программ с расширением.ЕХЕ.
|
Этапы формирования программы
1. Составление программы и ее ввод под каким-нибудь именем на диск (дискету).
Привводепрограммы используется какой-либо текстовой редактор,например редактор NC
2. Трансляция (ассемблирование) программы.
При использовании транслятора MASM вводится:
MASM c:prog.asm или просто MASM.
Появится запрос:
Surce filename [.asm]:
; указать путь к файлу и имя файла
; (если оно не было указано ранее).
Object filename [prog.obj]:
; если имя объектной программы
; (объектного модуля) другое, то
; следует его указать, иначе нажать
; клавишу ENTER (RETURN).
Source listing [nul.lst]:
; если нужен листинг программы в
; машинных кодах, ввести имя
; дисковода, где его формировать,
; иначе - ENTER.
Cross-reference [nul.crf]:; если нужен листинг перекрестных
; ссылок программы, ввести имя
; дисковода, иначе - ENTER.
Альтернативный вариант вызова ассемблера:
MASM [c:]prog, c:, c:, c:
Примечание:
ЛИСТИНГ - распечатка, файл для распечатки. Листинг программы содержит программу исходную и в машинных кодах, атакжеобнаруженныепри трансляции ошибки в программе; листинг перекрестныхссылокпоказываетименапеременных и номера строк программы, где эти переменные используются.
3. Компоновка объектного модуля (загрузка и редактирование связей).
Вводится:
LINK c:prog.obj;(или просто LINK)
Появится запрос:
Object modules [.obj]
; указать имя файла.obj, если оно не; было указано ранее.
Run file [prog.exe]
; если имя исполняемой программы другое,
; то следует его ввести, иначе - ENTER.
List file [nul.map]; следуетввести CON.
Libraries [.lib]
; обычно - ENTER (если при редактировании
; дополнительных библиотек связей не
; требуется).
Альтернативный вариант вызова загрузчика:
LINK [c:]prog.obj, c:, con
Примечание.
.map-файл содержит таблицу имен и размер сегментов, атакже ошибки, обнаруженные при загрузке; ввод CON означает требование вывода их на экран дисплея.
4. Отладка программы (если есть необходимость). Можно использовать отладчик Debug. Вызов отладчика Debug:
DEBUG c:prog.exe.
|
5. Выполнение программы.
При наличии приглашения к работе MS DOS ввести имя программы:
c:prog[.exe]
Структура исходной программы на языке ассемблера для получения исполняемой программы.exe.
Операционнаясистема MS DOS предъявляет некоторые обязательные требованияк структуре.ASM-программы, предназначенной для последующего создания.EXE-программы:
· программа может использовать 4 сегмента памяти, начальные адресакоторыхдолжны быть загружены в регистры микропроцессора: CS, SS, DS и ES, а сами сегменты в явном виде определены в программе в видеоператорныхскобок:имя_сегментаsegment... имя_сегмента ends(весии MS DOS 4.0 и выше допускают болеепростоеуказание сегментов в программе: имя_сегмента);
· впрограммедолжнобытьуказание: какие сегментные регистры закрепляютсязаиспользуемымисегментами памяти; при исполнении программысегментныерегистрыCS, SS, ES в соответствии с этими указаниями загружаются автоматически;
· сегмент данных DS в.EXE-программе не может быть загружен авто матически, поскольку он используется программой-загрузчиком (Link) для формирования начального адреса служебной области памяти - префикса программного сегмента (PSP), непосредственно предшествующего любойисполняемойпрограмме.
Регистр сегментаданныхDSдолженбыть инициирован принудительно – для этого следует в самом начале исполняемой.EXE-программы записать в стеквектор-адресвозвратакслужебной области PSP: содержимое регистраDSинулевоесмещение, а затем в регистр DS загрузить адрес сегмента данных исполняемой программы.
Примечание. PSP - группа служебных словвоперативнойпамяти,формируемаядля каждой загружаемой программыпользователяи занимающая обычно 256 байт (100Н байт). При загрузке программы пользователя в ОЗУ автоматически формируетсяPSP,и ее начальный адрес записывается в регистр DS.
Обеспечитьпосле завершения выполнения программы возврат к префиксупрограммного сегмента, оформив обращение к исполняемой программе в виде обращения к процедуре (главной процедуре, обязательно с атрибутом far) и поместив в конце программы команду возврата ret (выход из программы можно выполнитьтакже используя прерывание 20H DOS или функцию 4C прерывания 21H DOS, но управление при этом передается не вPSP, а непосредственно в резидентную часть программы COMMAND.COM).
|
|
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!