Команды определения битаРассмотрим конструкцию XXXXX F,B где
XXXXX – слово команды + пробел;
F – имя или адрес какого-либо регистра, с которым будет работать команда;
B – номер бита в регистре, т.е. число от нуля до семи.
Мы знаем, что бит может принимать одно из двух значений, т.е. быть либо равен единице, либо равен нулю. Для упрощения говорят так: "установить бит", "устанавливается бит", "установлен бит", где под установкой понимают перевод бита в состояние "единица"; противоположная терминология – "опустить бит", "обнулить бит", "установить бит в ноль", "сбросить бит", т.е. перевести бит в состояние "ноль".
Команда УСТАНОВКИ БИТА в общем виде выглядит как BSF F,B
Команда ОБНУЛЕНИЯ БИТА в общем виде выглядит как BCF F,B
Команда BSF устанавливает бит в единицу.
Команда BCF опускает бит в ноль.
Прежде чем продолжить рассмотрение практического примера записи строчек программы, вспомните о регистрах специального назначения; если не вспомнили, найдите в предыдущем разделе и перечитайте.
Если прочитали, то начнем управление первой ножкой МК и установим на ней высокий уровень сигнала. Нам надо установить единицу в нулевом бите в регистре PORTB.
BSF PORTB,NOGA1 ; запись с сопоставленными именами
BSF H0006,H0000 ; запись в числах
BSF H0006,0 ; еще вариант записи в другом формате
BSF PORTB,0 ; еще вариант записи в другом формате
А теперь несколько вариантов по установлению сигнала низкого уровня на восьмой ножке МК. Нам надо установить ноль в седьмом бите в регистре PORTB.
BCF PORTB,NOGA8 ; запись с сопоставленными именами
BCF H0006,H0007 ; запись в числах
BCF H0006,7 ; еще вариант записи в другом формате
BCF PORTB,7 ; еще вариант записи в другом формате
Надеюсь, что вы почувствовали разницу в написании.
|