BANKISEL – генерация кода выбора банка RAM для косвенной адресации

BANKISEL – генерация кода выбора банка RAM для косвенной адресации

BANKISEL  —  генерация кода выбора банка RAM для косвенной адресации

bankisel <label>

Используется при создании объектного модуля. Эта директива представляет собой указание линкеру для генерации кода выбора соответствующего банка при косвенной адресации адреса назначенного <label>. Только одна метка <label> должна быть указана, над ней не должно выполняться никаких операций и она должна быть предварительно определена.

Линкер сгенерирует код выбора соответствующего банка. Для устройств с14-битным ядром будет сгенерирована инструкция установки/сброса соответствующего бита RP в регистре STATUS. Для устройств с 16-битным ядром будет сгенерировано MOVLB или MOVLR. Если косвенный адрес полностью определен без этих инструкций не будет генерироваться никакого кода. For more information, refer to Chapter 4, “Using MPASM to Create Relocatable Objects.”

Example

movlw   Var1

movwf   FSR

bankisel Var1

movwf   INDF

 

See Also    PAGESEL     BANKSEL

 

BANKSEL  – генерация кода выбора банка RAM

banksel <label>

Используется при создании объектного модуля. Эта директива представляет собой указание линкеру для генерации кода выбора банка для установки банка, в котором находится адрес на который указывает <label>. Только одна метка <label> должна быть указана, над ней не должно выполняться никаких операций и она должна быть предварительно определена.

Линкер сгенерирует код выбора соответствующего банка. Для устройств с12-битным ядром будет сгенерирована инструкция установки/сброса соответствующего бита в регистре FSR.  Для устройств с14-битным ядром будет сгенерирована инструкция установки/сброса соответствующего бита RP в регистре STATUS. Для устройств с 16-битным ядром будет сгенерировано MOVLB или MOVLR. Если устройство содержит только один банк RAM, не будет генерироваться никакого кода. For more information, refer to Chapter 4, “Using MPASM to Create Relocatable Objects.”

Example

banksel  Var1

movwf    Var1

 

See Also     PAGESEL     BANKISEL

 

CBLOCK  —  определить группу констант

cblock  [<expr>] <label> [:<increment>][,<label>[:<increment>]]

endc

 

Определяет список поименованных констант. Каждой метке <label> присваивается значение на единицу больше чем предыдущей. Эта директива служит для назначения смещения относительно начального адреса нескольким меткам. Список меток заканчивается, когда встречается директива ENDC. <expr>  указывает стартовое значение для первой метки в блоке. Если <expr> не указано, первая метка будет иметь значение на единицу больше чем последняя метка в предшествовавшей директиве CBLOCK. Если первая директива CBLOCK не имеет <expr>, присваивается начальное значение нуль. Если значение  <increment> определено, следующей метке <label> присваивается значение на <increment> больше чем предыдущей. Несколько имен, разделенных запятыми,

Комментарии к записи BANKISEL – генерация кода выбора банка RAM для косвенной адресации отключены

Рубрика: Проектирование

Обсуждение закрыто.