ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Макрозасоби мови асемблераМета роботи: ознайомитися з використанням макрокоманд у мові асемблера. 1. Теоретичні відомості Використання макрозасобів в програмах на мові асемблера створює більш зрозумілі програми а також дозволяє отримати більш продуктивний код. Кожній команді асемблера відповідає певний код на машинній мові. Макрокоманди асемблера дозволяють доповнити систему команд більш складними операторами, що складаються з кількох елементарних команд асемблера. Макрокоманди визначаються програмістом, після чого вони якби стають складовою частиною системи команд. Створена бібліотека макровизначень дозволяє використовувати макрокоманди для різних асемблерних програм. Макрозасоби складаються з трьох понять: макровизначення,макровиклик та макророзширення. Макровизначення повинно знаходитись до визначення сегмента. Воно починається з директиви MACRO і закінчується директивою ENDM. У першому рядку визначається ім’я макрокоманди та список формальних параметрів. Використання формальних параметрів у макровизначенні дозволяє кодувати параметри, що забезпечують більшу гнучкість макрозасобів. Формальний параметр може мати будь яке коректне асемблерне ім’я (наприклад, навіть ім’я регістра), яке в процесі асемблювання буде замінено на параметр макрокоманди. Макрокоманди викликаються за ім’ям у тексті програми – це макровиклик. Він повинен містити список фактичних параметрів. Макророзширення – це результат текстової підстановки фактичних параметроів до макровизначення. Відповідно до макророзширення асемблер генерує відповідний машинний код. Використання макрозасобів дозволяє: - спростити й скоротити текст програми; - зробити програму більш зрозумілою; - зменшити кількість можливих помилок кодування.
Не нашли, что искали? Воспользуйтесь поиском:
|