Заголовок секции: SRAM:
В этой секции предусмотрены следующие поля:
Name – объявляемое имя переменной (ячейки памяти);
Address – (необязательный параметр) константа, определяющая конкретное значение адреса. По умолчанию – следующий за предыдущим либо $60 в начале компиляции;
Format – (необязательный параметр) формат переменной. По умолчанию принимается однобайтный формат. Многобайтные форматы используются в макро-операторах.
Count – (необязательный параметр) – число резервируемых ячеек. По умолчанию принимается равное 1.
В операторах с непосредственной адресацией SRAM «[#]->R» и «R->[#]», имя переменной может быть использовано вместо «[#]».
Имя переменной с префиксом «@» является константой, содержащей ее физический адрес SRAM.
Приведенные ниже примеры будут откомпилированы с одинаковым результатом:
[$100] -> r0 , Phase -> r0 , [@Phase] -> r0
Если переменная объявлена как массив (Count>1, например, «LDC_Page»), то ее имя будет указывать на первый байт массива. Для непосредственно адресации произвольного элемента массива, используйте смещение адреса. Например, если необходимо копировать r0 в пятый элемент массива, то следует записать:
r0->[@LCD_Page+5]
Приведенный ниже пример очищает все элементы массива LCD_Page:
|