ВУЗ:
Составители:
-16-
lsl Rd
Логический сдвиг разрядов регистра влево, старший разряд пе-
реносится lsl во флаг переноса С, в младший заносится 0.
rol Rd
Циклический сдвиг-вращение влево. В отличие от команды lsl, в
младший разряд заносится прежнее значение С.
asr Rd
Арифметический сдвиг вправо семи старших разрядов – цело-
численное деление на 2.
В программе на Ассемблере вместе с командами содержатся
директивы, используемые на этапе трансляции программы в ма-
шинный код, но сами не транслируются. Выше уже упоминались
директивы: .def , присваивающая имена регистрам, и .equ , присваи-
вающая имена и значение константам. При трансляции команд вме-
сто имён подставляются адреса или значения. Практически любая
программа
содержит директиву .include , по которой во время
трансляции подключается дополнительный файл –“исходник”. На-
пример, директива .include “8515def.inc” подключает расположен-
ный в той же директории, что и программа, файл, в котором как
константы определены имена регистров ввода/вывода и их отдель-
ных бит, а также имена адресов векторов прерывания. Эти имена
фактически стандартны
для рассматриваемых микроконтроллеров и
используются как в технических описаниях, так и в примерах про-
грамм. Ниже даётся описание ещё нескольких директив.
.cseg,
.dseg,
.eseg
отмечают в исходном тексте начало сегментов с программным кодом,
данными для программной памяти (Flash) и данными для электриче-
ски перепрограммируемой памяти (EEPROM).
.byte
резервирует указанное параметром директивы число байт во встроен-
ной оперативной памяти данных (SRAM).
.db,
.dw
определяют одну или последовательность одно- или двухбайтовых
констант в памяти программ, данных или EEPROM в зависимости от
места-сегмента нахождения директивы.
.set
присваивает имя и значение метке, имя может использоваться в выражениях
Ассемблера, значение может быть изменено другой такой же директивой.
.org
присваивает значение, заданное параметром, программному счетчику
PC или счетчику положения в SRAM.
В Ассемблере в качестве одного из операндов команды мо-
жет использоваться выражение. Выражение может содержать
операнды, операторы и функции. В роли операндов могут быть
метки, переменные и константы, введённые с помощью директив,
а также непосредственные значения. Тип операций – арифмети-
ческие, логические и отношения. Функции выполняют простей-
-16- lsl Rd Логический сдвиг разрядов регистра влево, старший разряд пе- реносится lsl во флаг переноса С, в младший заносится 0. rol Rd Циклический сдвиг-вращение влево. В отличие от команды lsl, в младший разряд заносится прежнее значение С. asr Rd Арифметический сдвиг вправо семи старших разрядов – цело- численное деление на 2. В программе на Ассемблере вместе с командами содержатся директивы, используемые на этапе трансляции программы в ма- шинный код, но сами не транслируются. Выше уже упоминались директивы: .def , присваивающая имена регистрам, и .equ , присваи- вающая имена и значение константам. При трансляции команд вме- сто имён подставляются адреса или значения. Практически любая программа содержит директиву .include , по которой во время трансляции подключается дополнительный файл –“исходник”. На- пример, директива .include “8515def.inc” подключает расположен- ный в той же директории, что и программа, файл, в котором как константы определены имена регистров ввода/вывода и их отдель- ных бит, а также имена адресов векторов прерывания. Эти имена фактически стандартны для рассматриваемых микроконтроллеров и используются как в технических описаниях, так и в примерах про- грамм. Ниже даётся описание ещё нескольких директив. .cseg, отмечают в исходном тексте начало сегментов с программным кодом, .dseg, данными для программной памяти (Flash) и данными для электриче- .eseg ски перепрограммируемой памяти (EEPROM). .byte резервирует указанное параметром директивы число байт во встроен- ной оперативной памяти данных (SRAM). .db, определяют одну или последовательность одно- или двухбайтовых .dw констант в памяти программ, данных или EEPROM в зависимости от места-сегмента нахождения директивы. .set присваивает имя и значение метке, имя может использоваться в выражениях Ассемблера, значение может быть изменено другой такой же директивой. .org присваивает значение, заданное параметром, программному счетчику PC или счетчику положения в SRAM. В Ассемблере в качестве одного из операндов команды мо- жет использоваться выражение. Выражение может содержать операнды, операторы и функции. В роли операндов могут быть метки, переменные и константы, введённые с помощью директив, а также непосредственные значения. Тип операций – арифмети- ческие, логические и отношения. Функции выполняют простей-
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »