Amiga. Вычислительная техника
Меню сайта
Главная
Amiga
Amiga Corporation
Модельный ряд
История развития
Аппаратная платформа
Операционные системы
Эмуляция
AMIGA # 1
Программирование на Ассемблере
Организация процессоров
Методы защиты информации
Компьютерные новеллы
Боятся ли компьютеры адского пламени?
Виртуальная реальность
Корпоративные сети
Телекоммуникационные сети
Архитектура ЭВМ
ЕС ЭВМ
Рождение ЭВМ
Компьютер
Гарвардская архитектура
Современные высокопроизводительные компьютеры
Дорога в будущее
Vista
Инфоpматика
ЭВМ
Операционные системы
Linux
Windows
Освой компьютер
Макинтош
Набор текста
Поколения
Компьютерная грамотность
Устройство компьютера
Железо
Графика
Звук
Ремонт
Сети
Программирование
Информационные технологии
Криптография
Микроэлектроника
Истории
 
 

Программирование на Ассемблере


Сама библиотека
\"exec.library\" находится в системном ПЗУ (ROM) и открывать ее не надо.
Если открываемая библиотека уже находится в памяти, то она повторно не
загружается, обеспечивая таким образом дополнительную экономию памяти и
времени. Это означает, что несколько программ могут одновременно использовать
одну и ту же библиотеку.
Пакет AssemPro имеет все необходимые файлы для работы с библиотеками,
которые содержат, в частности, некоторые полезные макроопределения и
символьные константы. Однако, в примерах программ мы не будем использовать
эти определения для облегчения переносимости на другие ассемблеры (SEKA,
итд.). Правда, в некоторых примерах Вы встретите специфические для AssemPro
макросы INIT_AMIGA и EXIT_AMIGA (для обеспечения запуска программ из
desktop\'а), и если Вы используете другой ассемблер, изучите для начала
соответствующую документацию по компоновке программ.
Если Ваша система \"ругается\" на макросы AssemPro (ILABEL, INIT_AMIGA,
EXIT_AMIGA), то уберите их из программы - обычно это помогает.
6.2. Вызов библиотечных функций.
Для начала опишем механизм вызовов функций библиотек, а затем приведем
небольшой пример. Итак, любая библиотека содержит специальную таблицу,
которая состоит из команд JMP. Каждая из этих команд осуществляет переход
на какую-либо подпрограмму библиотеки. Таким образом, для того, чтобы
вызвать n-ную функцию, Вам достаточно вызвать подпрограмму по адресу
TABLE + n*SIZE, где TABLE - начало таблицы переходов, а SIZE - размер
элементов этой таблицы. Для этого обычно используют команду JSR с нужным
смещением. Заметим, что при работе с библиотеками используется адрес конца
таблицы переходов, поэтому все смещения имеют отрицательный знак.
Для примера, попробуем открыть библиотеку \"dos.library\". Для этого мы
должны использовать функцию библиотеки \"exec.library\", базовый адрес
которой записан в фиксированной ячейке $000004. Базовый адрес - это адрес
таблицы переходов, о которой мы только что говорили.

 

 

© 2010 Amigo. All Rights Reserved
Создание сайтов ЕкатеринбургШаблоны сайтовПоиск товаров - справочник цен, каталог магазинов, прайс-листыБесплатные шаблоны дизайна компьютерных сайтов
Hosted by uCoz