Описание: возвращает 1, если первое число меньше второго, иначе— 0.
Приоритет: 10.
Пример: ori r18,bitmask*(c1
Меньше или равно
Обозначение: <=
Описание: возвращает 1, если первое число меньше второго или равно ему, иначе — 0.
Приоритет: 10.
Пример: ori r18,bitmask*(c<=c2)+1
Больше
Обозначение: >
Описание: возвращает 1, если первое число больше второго, иначе— 0.
Приоритет: 10.
Пример: ori r18,bitmask*(c1>c2)+1
Больше или равно
Обозначение: >=
Описание: возвращает 1, если первое число больше второго или равно ему, иначе — 0.
Приоритет: 10.
Пример: ori r18,bitmask*(c1>=c2)+1
Равно
Обозначение: ==
Описание: возвращает 1, если первое число равно второму, иначе — 0.
Приоритет: 9
Пример: andi г19, bitmask*(c1==c2)+1
Не равно
Обозначение: !=
Описание: возвращает 1, если первое число не равно второму, иначе — 0.
Приоритет: 9.
Пример:.SET flag=(c1!=с2)
Побитовое И
Обозначение: &
Описание: возвращает результат побитной операции «И» между операндами.
Приоритет: 8.
Пример: ldi r18,High(c1&c2)
Побитовое исключающее ИЛИ
Обозначение: ^
Описание: возвращает результат побитной операции «исключающее ИЛИ» между операндами.
Приоритет: 7.
Пример: ldi r18,Low(c1^c2)
Побитовое ИЛИ
Обозначение: |
Описание: возвращает результат побитной операции «ИЛИ» между операндами.
Приоритет: 6.
Пример: ldi ri8,Low(c2|c2)
Логическое И
Обозначение: &&
Описание: возвращает 1, если оба выражения не равны нулю, иначе — 0.
Приоритет: 5.
Пример: ldi r8,Low(ci&&c2)
Логическое ИЛИ
Обозначение: ||
Описание: возвращает 0, если оба выражения равны нулю, иначе — 0.
Приоритет: 4.
Пример: ldi r18,Low(ci||с2)
Здесь опишем специфические особенности применения транслятора ассемблера WAVRASM.
Теоретически нет ограничений на количество одновременно oткрытых файлов исходных текстов. Размер каждого файла не должен превышать примерно 28 Кб. Для работы с файлами большего размера следует использовать версию ассемблера, работающую из командной строки MS-DOS — avrasm. Также можно разбить всю программу на несколько файлов и объединить их с помощью директивы INCLUDE.
Для каждого открытого файла создается окно с его текстом.
Для создания нового файла следует выполнить команду меню File>>New (быстрая комбинация клавиш: Alt-F N). Для открытия существующего файла следует выполнить команду меню File>>Open (быстрая комбинация клавиш: Alt-F О).
Встроенный текстовый редактор
Для перемещения по тексту программы можно пользоваться следующими командами:
вправо — стрелка вправо;
влево — стрелка влево;
вверх — стрелка вверх;
вниз — стрелка вниз;
в начало строки — Ноmе;
в конец строки — End;
в начало файла — Ctrl+Home;
в конец файла — Ctrl+End.
Для редактирования текста следует пользоваться клавишами:
— вставить пробел — пробел;
— завершить строку — Enter;
— удалить символ слева от курсора — Backspace;
— удалить символ справа от курсора — Del.
Для разбиения строки на две следует установить курсор на место разбиения и нажать Enter.
Для объединения двух строк следует установить курсор в начало второй строки и нажать клавишу Backspace.
Выделение текста, операции копирования, перемещения и удаления осуществляются так же, как в любой программе для Windows.
Некоторые установки транслятора ассемблера могут быть изменены. Для этого следует выполнить команду меню Options. Появится окно, подобное изображенному на рис. 4.4.
Рис. 4.4.
В этом окне можно установить расширение файла, содержащего листинг программы и файла с оттранслированным кодом. Менять их не рекомендуется.
Также здесь можно указать, какого типа должен генерироваться выходной файл. Имеется три типа файлов: Generic, Motorola S-record и Intel HEX.
Обратите внимание, что объектный файл (который используется отладчиком) всегда имеет расширение obj. Также, если в программе инициализируются значения в памяти EEPROM, генерируется файл с расширением еер, используемый программатором для прошивки в микроконтроллер в процессе программирования. Этот файл генерируется в формате Generic.
Опция Wrap relative jumps — разрешить относительную адресацию переходов. Эта опция полезна для использования с микроконтроллерами, имеющими 4 К слов памяти программ.
Опция Save before assemble — сохранять исходный текст программы каждый раз перед ее ассемблированием.