[an error occurred while processing this directive]
Господа, как на асме для АВР попроще проинвертировать бит в регистре. Скажем, 3 бит в регистре r0. Ведь готовой команды нет?
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
человечек
11 августа 2005 г. 17:34
Составить ответ
|||
Конференция
|||
Архив
Ответы
CBI Rn,bit SBI Rn,bit
—
Option
(11.08.2005 17:43
80.243.1.228
,
пустое
)
Не катит, эти две команды по любому установят бит. Нужно получить инверсию, независимо от значения бита.
—
человечек
(11.08.2005 17:45
195.98.72.38
,
пустое
)
Ответ (+):
—
argus98
(11.08.2005 17:42
81.22.205.230
, 119 байт)
А первый вариант, разве незаденет остальные биты в регистре. Как вообще народ работает с флагами?
—
человечек
(11.08.2005 17:47
195.98.72.38
,
пустое
)
Не заденет - (X EOR 0) = X. Для флагов обычно использую этот вариант, если нужна инверсия (+):
—
argus98
(11.08.2005 17:57
81.22.205.230
, 163 байт)
Очень хорошо. Спасибо. И все же, с 51 было приятно работать (ностальгия, видимо).
—
человечек
(11.08.2005 18:01
195.98.72.38
,
пустое
)
Согласен.... Очень не хватает у AVR команды EORI, а еще очень хочется NEG c переносом :-(
—
argus98
(11.08.2005 18:04
81.22.205.230
,
пустое
)
Да, бит-процессор там знатный
—
-mse-
(11.08.2005 18:03
81.201.66.34
,
пустое
)
задача 1 в Краткий курс - AVR начинающим с нуля - avr123.nm.ru
—
avr123.nm.ru
(11.08.2005 17:41
212.46.255.97
,
пустое
,
ссылка
)
Не знаком с AVR тесно, у него XOR для регистровых операций нет что ли?
—
rezident
(11.08.2005 17:36
212.33.249.11
,
пустое
)
Есть, (EOR Rd,Rr) Rd=Rd EOR Rr. Не очень удобно. Ведь это может задеть другие биты в регистре? Это все пагубная привычка к 51 :-(
—
человечек
(11.08.2005 17:41
195.98.72.38
,
пустое
)
Отправка ответа
Имя (обязательно):
Пароль:
E-mail:
NoIX ключ
:
Запомнить
Тема (обязательно):
Сообщение:
Ссылка на URL:
Название ссылки:
URL изображения:
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru