Assembler для начинающих


Компилируемые языки высокого уровня - часть 2


    выходом компилятора является объектный файл, готовый к
    редактированию связей.  Выход ассемблера - тоже объектный файл.
    Следовательно, достаточно лишь связать программу на языке высокого
    уровня и программу на языке ассемблера при помощи редактора связей
    DOS.  Нет необходимости соединять программы в процессе выполнения,
    как это делалось для интерпретатора Бейсика.
 
      Построим пример на языке Фортран (Фиг.    10.11).  Для языка
    Паскаль все очень похоже.  Подобный пример приведен в приложении D
    справочника к компилятору Фортрана.  В примере головная программа,
    написанная на Фортране, объединена с программой на языке
    ассемблера, которая считывает текущее время, используя программное
    прерывание базовой системы ввода-вывода.  Подпрограмма на языке
    ассемблера обращается к BIOS для определения текущего времени и
    возвращает соответствующее значение в программу на Фортране.
    Головная программа преобразует кванты таймера, в текущее время,
    выраженное в часах, минутах и секундах.
 
      На Фиг.  10.11 представлена головная программа на Фортране.
    Эта программа вызывает внешнюю процедуру TIMER, имеющую один
    параметр A - четырехбайтовое целое значение.  Возрващаемое
    процедурой TIMER значение представляет собой текущее время,
    выраженное в квантах таймера и отсчитываемое от полуночи.
    Программа на Фортране по полученному из процедуры TIMER значению
    вычисляет время в часах(HOURS), минутах(MINS), секундах(SECS) и
    сотых долях секунды(HSECS).  Отметим, насколько проще реализовать
    умножение и деление на языке Фортран, чем на языке ассемблера.
    Можно убедиться, что выполнение всех подобных операций на Фортране
    существенно упрощает программирование.  Чрезвычайно удобен и способ
    преобразования целых переменных в выдаваемые на печать символы при
    помощи операторов Фортрана WRITE и FORMAT.  На языке ассемблера для
    выполнения тех же самых действий потребовалось бы несколько сот



Начало  Назад  Вперед



Книжный магазин