Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб_системное программ.doc
Скачиваний:
31
Добавлен:
07.05.2019
Размер:
249.34 Кб
Скачать

Приложение 3 Ассемблер asm и макроассемблер mac. Справочные данные

ASM

Вызов двухпроходного ассемблера и трансляция файла с заданным именем.

Вызов команды:

asm имя файла (1)

asm имя файла.p1p2p3 (2)

В любом случае файл должен иметь тип asm.

p1 - диск,содержащий исходный файл

p2 - диск,на который будет записываться hex файл

(если p2=z,то hex файл не создается)

p3 - диск,на который будет записываться prn файл,

т.е. файл с листингом (если p3=x,то листинг

выводится на консоль;если p3=z,то prn файл

не создается)

Программа состоит из последовательности строк вида:

номер метка операция операнд ;примечания

типы меток: идентификатор или

идентификатор:

Идентификатор состоит из букв и цифр и начинается с буквы, длина

идентификатора не должна превышать 16 знаков. Знак * игнорируется.

типы констант:

b двоичная константа

q восьмеричная константа

d десятичная константа

h шестнадцатеричная константа

Строковые константы представляют собой набор знаков ascii,

заключенный в апострофы.

Зарезервированные имена:имена всех регистров,имена машинных

инструкций и директив ассемблера.

Арифметические и логические операторы:

a+b беззнаковое сложение a и b

a-b беззнаковое вычитание b из a

+b унарный плюс

-b унарный минус

a*b беззнаковое умножение a на b

a/b беззнаковое деление a на b

a mod b остаток от деления a на b

not b логическая инверсия b

a and b логическое ''и''

a or b логическое ''или''

a xor b логическое ''исключающее или''

a shl b сдвиг а влево на в битов, дополнение нулями

a shr b сдвиг а вправо на в битов, ополнение нулями

Приоритет операторов

* / mod shl shr - + not and or xor

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

org установить значение счетчика адреса

end конец программы, может присутствовать стартовый адрес

equ числовое ''приравнять''

set числовое ''установить''

if начало условного ассемблирования

endif конец условного ассемблирования

db задать байт данных

dw задать слово данных

ds отвести область памяти

Список инструкций совпадает со списком инструкций микропроцессора

intel 8080

Сообщения об ошибках:

d ошибка в данных: элемент данных не может быть помещен

в указанную область памяти

e неверное выражение: выражение неверно образовано и не

может быть вычислено в процессе ассемблирования

l неверная метка: метка не может появиться в данном

контексте(может быть двойное определение)

n не реализовано:возможности, которые будут присутство-

вать в следующих версиях asm

o переполнение: очень сложное выражение

p ошибка фазы: метка получает разные значения при двух

последовательных проходах по программе

r регистровая ошибка: значение заданное в качестве ре-

гистра, не соответствует коду инструкции

v ошибка значения: операнд, вычисленный в выражении, не-

верно образован

no source file present файл заданный в команде asm, не существует на диске

no directory space каталог диска заполнен

source file name error неверно задано имя файла asm

source file read error ошибка при чтении исходного файла

output file write error ошибка при записи выходного файла

cannot close file выходной файл не может быть закрыт