Директивы ассемблера
Ассемблер процессора Nios IIсоответствует широко распространенному ассемблеру GNU, который находится в свободном доступе в сети Internet. Поэтому в программах для процессора Nios II могут использоваться директивы ассемблера GNU. Все директивы начинаются с точки. Ниже приведены часто используемые директивы.
.ascii “string”…
Эта директива побайтно записывает строку string в память. Могут быть определены несколько строк в одной директиве, при этом строки разделяются запятыми.
.asciz “string”…
Данная директива аналогична предыдущей, но в отличие от нее, добавляет нулевой байт в конец каждой строки.
.byte expressions
Данная директива размещает выражения размером один байт в памяти. Примеры выражений следующие: 8, 5 и K – 6.
.hword expression
Определяет выражения, разделенные запятой, и отображает их в 16 битные слова в памяти.
.word expression
Определяет выражения, разделенные запятой, и отображает их в 32 битные слова в памяти.
.data
Директива определяет сегмент данных программы.
.text
Директива определяет сегмент кода программы. После компиляции сегменты кода и данных будут размещены в тех областях ОП, которые определены в настройках аппаратной части проекта в Altera Monitor Program.
.end
Эта директива отмечает конец программы. Все строки, размещенные после нее, игнорируются ассемблером.
.equ symbol, expression
Данная директива устанавливает значение symbol, равным выражению expression.
.global symbol
Директива делает видимым символ, за пределами объектного ассемблерного файла.
.include “filename”
Директива подключает внешние файлы с исходным кодом.
.org new-lc
Данная директива изменяет текущее значение счетчика команд на значение new-lc. При этом new-lc представляет собой смещение от начала программы.Директива может либо увеличить счетчик, либо оставить его без изменений.
.skip size
Пропуск определенного количества байт, определяемых в size. Пропускаемые байты заполняются нулями.
Дата добавления: 2015-05-30; просмотров: 735;