Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛБ1.doc
Скачиваний:
0
Добавлен:
12.07.2019
Размер:
166.4 Кб
Скачать

Чувашский государственный университет имени И.Н. Ульянова

Лабораторная работа №1

Тема: «Среда программирования на языке Ассемблер»

Выполнил

Ст. гр. ЭТ-41-10

Покровский А.Р

Проверил:

Доц. Мартыничев А. К.

Чебоксары 2011

Цель – ознакомление со средой программирования, структурой ассемблер-программы, этапами получения исполняемого модуля.

Рабочее задание:

1.Найти и освоить команды и программы для создания и редактирования ис-ходного модуля, его трансляции, компоновки, отладки. Обратить внимание на размер в байтах используемых программ.

2.Создать в рабочей папке KARKAS командный файл для последовательного выполнения трансляции и компоновки Вашей Ассемблер-программы.

3.Написать простейшую программу на языке ассемблер, которая выполняет суммирование двух слагаемых и выводит результат на монитор.

4.Освоить работу в среде программирования KARKAS. Выполнить программу Prima.asm сначала как самостоятельный файл, а затем в каркасной программе kar.asm в первой задаче.

5.Освоить макрокоманды установки курсора (Locate) , вывода на монитор сим-волов (Tout), текстовой строки (Print, PrintXY) и вывести свою фамилию, имя, отчество в заданную позицию экрана.

6.Выберите в меню строку «Тест клавиатуры» и внимательно изучите коды и сканкоды клавиатуры, обратив внимание на коды функциональных клавишей, латинских символов, цифровых клавишей, клавишей - стрелок.

Рассмотрим структуру простейшей программы: файл primer_1.asm с текстом программы:

Интегрированная среда программирования tasm

Программа - необходимая для решения задачи последовательность команд, записанная на языке программирования. Сама задача формулируется первоначально в виде алгоритма, который описывается в виде словесного описания либо в виде блок-схемы с использованием условных обозначений: ввода исходных данных, линейных участков программы, условных и безусловных переходов, вывода сообщений или данных на монитор, вывод команд управления на внешние устройства ЭВМ для управления электрооборудованием. Процесс программирования для ЭВМ можно разделить на следующие этапы.

Первый этап : Создание исходного модуля программы на языке Ассемблер ЭВМ IBM PC.

1. Исходный файл программы с именем Name и расширением asm (напри-мер, prima.asm) создается с помощью какого-либо текстового редактора.

2. Команды программы (инструкции) выполняют определенные операции (действия) с переменными (операндами), пишутся и размещаются в сегменте команд. Этот сегмент начинается директивой начала сегмента команд Code segment и завершаемся директивой конца сегмента: code ends. Адрес сегмента кода размещается в регистре процессора с именем CS (Code Segment)

3.Еще один сегмент памяти должен быть выделен в программе, это сегмент для организации стека, области памяти для временного хранения операндов программы. Это сравнительно небольшой по объему памяти сегмент, адрес которого размещается в регистре процессора с именем SS (Stack Segment)

4.В исходном модуле в начале программы прописываются указания (ди-рективы) для транслятора.

5.Независимо от конкретного содержания программного кода следует предусмотреть команды для сохранения окружения операционной системы и команды для завершения программы и правильного выхода в операционную систему ЭВМ.

Второй этап: Программа на языке ассемблера – это текстовая программа, удобная для программиста, но непонятная для процессора. Процессор - важнейший компонент ЭВМ, сложное электронное устройство, в котором все команды и данные «живут» в форме напряжений высокого (близкого к +5В) и низкого (близкого к нулю) уровня. Именно так видит компоненты ЭВМ электронщик, исследуя аппаратуру с помощью осциллографа. Программист «видит» все свои переменные, расположенные в памяти ЭВМ и регистрах процессора, в виде осмысленного кода - множества «единиц» (1) и «нулей» (0). Для того, чтобы процессор мог выполнить программу, ее необходимо преобразовать из текстового формата в двоичные коды. Преобразование исходного текстового файла в объктный выполняется программой трансляции Tasm.exe.

Третий этап: Для того чтобы программный объектный модуль был выполнен его следует обработать программой – компоновщиком, tlink.exe. Эта программа позволяет компоновать исполняемую программу из нескольких исходных объектных модулей и выполняет привязку программы к памяти ЭВМ. Результатом работы компоновщика является исполняемый модуль с расширением .exe, например, name.exe.

Каждый из этапов выполняется в командной строке вызовом в нее исполнительной программы и входной программы, например:

С:\ tasm.exe prima.asmдля этапа трансляции.

С:\ tlink .exe prima.obj - для этапа компоновки.

В процессе отладки программы после каждого изменения необходимо выполнять трансляцию и компоновку. Для удобства последовательного выполнения этих процессов полезно создать командный файл с расширением *.bat для пакетной обработки командных строк.

Указанные последовательные этапы от подготовки ассемблер-программы до получения исполняемого модуля представлены на рис.2.

Рис.2. Этапы процесса программирования.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]