Пакет ассемблера VASM 1.02 представляет собой набор программ для разработки приложений на языке ассемблера для семейства микроконтроллеров C16x. В состав пакета входят следующие программы:
- val.exe — вспомогательный модуль, с помощью которого осуществляется компиляция и сборка выходного модуля;
- vasm.exe — ассемблер SIEMENS 80C16x;
- vlib.exe -библиотекарь;
- vlink.exe — линковщик.
Ассемблер
Ассемблер — это транслятор, который в качестве входных файлов получает.asm-файлы. Выходные файлы — объектные файлы, которые используют линковщик для построения выходного, загружаемого в контроллер модуля. Синтаксис ассемблера близок синтаксису Turbo Assembler фирмы Borland в режиме Ideal.
Основные возможности:
- определение групп сегментов кода, данных, BSS;
- определение типов данных STRUCT/UNION; возможно использование одинаковых имен для обозначения членов разных структур/объединений);
- определение именованных типов данных;
- определение локальных и глобальных меток;
- определение процедур с параметрами и локальными переменными;
- определения макросов с параметрами;
- использование директив условной компиляции и генерации ошибок;
- оптимизация генерируемого кода;
- директива компиляции подключаемых файлов.
Ассемблер за один вызов может работать с несколькими исходными файлами.
Генерируемые файлы:
- .obj — объекнтый файл. Может быть в форматах ELF. В объектный файл можно включать отладочную информацию, которая будет использоваться при отладке символьным отладчиком
- .lst — файл листинга;
- .err — файл со строками и сообщениями об обнаруженных ошибках.
Библиотекарь
Библиотекарь предназначен для управления базами данных объектных файлов. Он создает библиотеки и обеспечивает функции для работы с объектными файлами: добавление объектного файла в библиотеку, удаление объектного файла из библиотеки, замещение файла, создания списка содержимого библиотеки.
Библиотекарь может работать с несколькими форматами объектных файлов, создавая библиотеку формата AR.
Линковщик
Линковщик создает двоичный образ исполняемого файла для микроконтроллера.
Выходной файл:
- *.HEX — Intel-Hex файл;
- *.BIN — двоичный файл;
- *.MAP — файл распределения памяти.
Входными файлами являются:
- объектные файлы от ассемблера, в формате ELF;
- библиотеки в формате AR.