Лабораторная работа №6 Основы языка Ассемблер МП Intel 8086 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа №6 Основы языка Ассемблер МП Intel 8086

 

Цель работы: изучить основные команды языка ассемблер МП Intel 8086; получить навыки работы с транслятором языка ассемблер TASM.

 

Порядок выполнения работы

1. Изучить пример выполнения задания.

2. Разработать алгоритм решения индивидуального задания (детализация алгоритма должна быть максимально приближена к командам языка ассемблера), и записать его на языке C++.

3. Разработать программу на языке ассемблера, реализующую алгоритм п. 2, сохранить его в файл с расширением *.asm.

4. Разработанную программу транслировать в исполняемый файл (*.ехе)

4.1 Запустить TASM, использую DOSBox. Для этого необходимо мышкой перенести файл «TASM.exe» на файл запуска DOSBox (DOSBox.exe)

TASM (Turbo Assembler) — программный пакет компании Borland, предназначенный для разработки программ на языке ассемблера для архитектуры х86.

В программный пакет TASM входят следующие файлы: TASM.exe – компилятор с ассемблера в машинные кода, TLink.exe – компоновщик, TD.exe – Turbo Debugger – среда для отладки кода, TDHelp.tdh – справочная информация по Turbo Debugger.

DOSBox — эмулятор PC, создающий DOS-окружение, необходимое для запуска старых приложений под MS-DOS.

4.2 Помесить файл разработанный в пункте 3 в каталог в котором находится TASM.

4.3 Провести компиляцию файла, используя команду: «tasm <имя_файла>.asm»(в результате будет сформирован файл <имя_файла>.obj или выведены сообщения об ошибках компиляции с указанием строк в которых они возникли).

4.4 Провести компоновку проекта и генерацию исполнимого файла, используя команду: «tlink <имя_файла>.obj»(в результате будет сформирован файл <имя_файла>.map и <имя_файла>.exe или выведены сообщения об ошибках компоновки). Если возникли ошибки, то перейти к пункту 3, иначе к пункту 5.

5. Открыть программу разработанную программу в отладчике

5.1. Запустить Turbo Debugger, для этого в командной строке DOSBox набрать: «TD.exe»

5.2. Открыть файл полученный в пункте 4 (<имя_файла>.exe)

6. Провести тестирование разработанной программы. Если возникли ошибки, то перейти к пункту 3, если это не помогло, то к пункту 2.

7. Составить отчет

 

Пример выполнения задания

Даны два числа (A, B). Переменной C присвоить большее значение из A и B.

 

Текст программы на языке языке C++

#include "stdafx.h"

int main()

{

int A=-3,B=-1,C;

if (A > B) C = A;

else C = B;

return 0;

}

 

Текст программы на языке ассемблер

.model small

.data

A dw ?

B dw ?

C dw ?

 

 

.code

Start:         

mov ax,@Data

mov ds, ax

 

mov ax, A

mov bx, B

cmp ax, bx

jg great

mov ax, bx

great:

mov C, ax

mov ax, 4C00h

int 21h

 

end Start

 

 

Содержание отчета

1. Текст задачи

2. Запись алгоритма решения задачи на языке C++

3. Схема алгоритма решения задачи

4. Текст программы на языке ассемблер

5. Тесты

6. Вывод

 

Варианты индивидуальных заданий

В качестве индивидуального задания для выполнения работы следует использовать варианты заданий из лабораторной работы 2.

 

Контрольные вопросы

1. Архитектура МП Intel 8086

2. Программно-доступные регистры МП Intel 8086, их назначение

3. Система команд МП Intel 8086: типы операций

4. Представление адресов; ограничение адресного пространства

5. Виды адресации; вычисление исполнительного адреса

6. Структура оператора языка ассемблер МП 8086

7. Директивы компилятора

8. Особенности организации циклов

 



Поделиться:


Последнее изменение этой страницы: 2024-06-17; просмотров: 51; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.196 (0.007 с.)