Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Организация ЭВМ.doc
Скачиваний:
132
Добавлен:
01.05.2014
Размер:
505.34 Кб
Скачать

5. Команды передачи управления.

JMPоперанд;

8086, безусловный переход.

JMP передает управление в другую точку программы. Операндом может быть непосред­ственный адрес для перехода, а также регистр или переменная, содержащая адрес.

В зависимости от типа перехода различают:

  • переход типа short(короткий переход) - если адрес перехода нахо­дится в пределах от -127 до +128 байт от команды JMP;

  • переход типа near(ближний переход) - если адрес перехода находит­ся в том же сегменте памяти, что и команда JMP;

  • переход типа far(дальний переход) - если адрес перехода находится в другом сегменте.

Краткое введение в язык ассемблера.

MASM, TASM.

Ассемблер предназначен для написания программ, эффективных по времени и потреблению ресурсов. Обычно используется для написания относительно коротких программ или фрагментов программ на языках высокого уровня.

Особенностями ассемблера по сравнению с математическим языком являются:

  • символичные наименования операций и операндов;

  • отсутствие привязки к конкретным адресам памяти;

  • возможность специализации программ с помощью макросредств.

Формат оператора ассемблера.

  1. метка: операция операнд(ы); комментарий

Имеем дело с командой, которая выполняется на этапе выполнения команды.

  1. имя директива операнд(ы); комментарий

Директива ассемблера; выполняется на этапе трансляции в objфайл; команд не порождает.

Метка задает адрес данной команды в исполнимом файле.

Процесс обработки ассемблерной программы можно пояснить так:

Текстовый редактор

Исходный файл

Prog.asm

Транслятор

MASM (TASM)

Файл листинга Объектный файл Таблица символов

Prog.lst Prog.obj Sym.tab

Библиотека стандартных Компоновщик Файлы *.obj

процедур и функций Link (Tlink) других модулей

Lib.obj

Карта памяти Исполняемый файл Файл перекрестных

Prog.map Prog.exe (.com) cсылок Prog.crf

Отладчик Загрузчик

AFD, TD

Настройка и выполнение Настройка и выполнение

программы в отладчике программы в АВТ

Сообщение отладчика Рез. корр. иполн. прогр. Run Time Errors

Директивы ассемблера.

1. Директивы задания данных

Директива определения имен

a) имяEQUвыражение

Например

N EQU 100h

TABLE EQU DS:[BP][SI]

MINS_DAY EQU 60*24

b) имя = выражение

Это имя может переопределяться и использоваться только для числовых выражений.

Директива выделения памяти

идентификатор D* список значений

где D* ода из приведенный ниже псевдокоманд:

DB- определить байт;

DW- определить слово;

DD- определить двойное слово;

DQ- определить учетверенное слово;

DT- определить десять байт;

DF- определить шесть байт.

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

text_string db ‘Hello world’

b_max db 255

b_min db -128

rez_w dw ?

rez_tab dw 20dup(?)

b_tab db 4dup(?),8,5,4dup(1)

fl_num dd 5.03E-2