Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основное правило записи программ применительно к МПК 580




В соответствии с синтаксическими правилами языка ассемблера каждая команда в программах имеет четырехзвенную конструкцию:

ОПЕРАЦИЯ. В поле операции команды записывается мнемони­ческий код или директивы ассемблера. Код - это сокращение полного английского наименования выполняемого действия (ADD - сложить, SUB - вычесть, JMP - перейти, RLC - циклически сдвинуть влево, DB - определить байт).

ОПЕРАНД. В этом поле указывается операнд (операнды), кото­рый должен участвовать в данной операции. В зависимости от способа адресации, используемого в команде, поле операнда может содер­жать: непосредственный операнд (AN1 4FH), адрес операнда (LDA 01 AEN), адреса двух операндов (MOV W, С), адрес операнда и операнд (MV1D, 10011101В). Если в поле операнда определяются два объекта, то они разделяются запятой.

МЕТКА. Метка используется в качестве символического адреса передачи управления, например JNZ LABELI, она должна отмечать команду, которой в случае реализации заданного условия программа должна передать управление. В процессе трансляции исходной про­граммы ассемблирующая программа всем этим символическим адре­сам переходов поставит в соответствие их действительные значения. Метка всегда не число, а имя, и оно не является обязательной при­надлежностью каждой строки программы. После метки по правилам языка ассемблера ставится двоеточие.

КОММЕНТАРИЙ. Поле комментария может быть использовано для текстового и символьного пояснения логической организации при­кладной программы. Это поле полностью игнорируется ассемблирую­щей программой, поэтому оно должно начинаться со знака препина­ния «;» (точка с запятой).

Директивы ассемблера. Ассемблирующая программа трансли­рует исходную программу, записанную на языке ассемблера в объек­товые коды, с которыми может оперировать МП. Хотя ассемблирую­щая программа берет на себя многие из рутинных работ программи­ста (например, присвоение действительных адресов, преобразование чисел, присвоение действительных значений символьным переменным и т. п.)

Программист все же должен указать ей некоторые параметры: начальный адрес прикладной программы, конец ассемблируемой программы, форматы данных и т.п. Вся эта информация вставляется программистом в исходный текст своей прикладной программы в виде директив ассемблера, которые только управляют процессом трансля­ции и не преобразуются в коды объектной программы.Диpeктивa ORG 0200Н задает ассемблеру адрес ячейки памяти (0200Н), в которой должна быть расположена первая команда при­кладной программы.

 

Директивой EQU можно любому символическому имени, используемому в программе, поставить в соответствие определенный операнд. Например, записи PET (в поле метки, но без – двоето­чия), EQU (в поле операции) и 13 (в поле операнда) приводят к тому, что в процессе ассемблирования всюду, где встретится символическая переменная PET, она будет заменена на число 13. Директивы DB и DS используются программистом для определения байт и резервиро­вания ячеек памяти для переменных, соответственно. Директивой END программист дает ассемблеру указание об окончании трансляции.

 

 




Поделиться с друзьями:


Дата добавления: 2015-04-29; Просмотров: 381; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.