Перейти к содержанию

Как избавиться от лишних операторов IF-ELSE?


-=FISHER=-

Рекомендуемые сообщения

12 minutes ago, IMXO said:

какой? насколько помнитцо в аврах изменение битов напрямую доступно только для регистров портов ввода/вывода или нет?

Переменные объявленные как bit компилятор помещает в РОН, а к ним если не ошибаюсь есть побитовый доступ.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

11 minutes ago, IMXO said:

именно в РОН , вот и спрашиваю какой командой в АВРах идет сброс/установка бита?

Есть команды SBR и CBR, но они работают только с РОН 16..31. Посмотрел листинг, для переменных используются младшие РОНЫ. Код получается такой

         ;    1277               CA_Ready = 1;
001a1e 9468      	SET
001a1f f827      	BLD  R2,7

  
         ;    1290 		        CA_Ready = 0;
001a37 94e8      	CLT
001a38 f827      	BLD  R2,7
  

Тоесть используются по две команды

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

7 часов назад, -=FISHER=- сказал:

нужен компромисс 

Компромисс между Си и Ассмом. На последнем Ваша задача (без кнопки настройки) укладывается (при халатном подходе к решению) в 192 байта.

Ссылка на комментарий
Поделиться на другие сайты

if-else тут вообще ни причем. большой размер кода - это результат компиляции с языка высокого уровня.

ну, и плюс лишний код из-за отсутствия опыта в программировании.

для такой маленькой флеши (1 кБ) нужно программировать на ассемблере. но и для оптимального кода на ассемблере тоже нужен опыт...

Мудрость приходит вместе с импотенцией...

Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.

Ссылка на комментарий
Поделиться на другие сайты

Полностью согласен. Вышеуказанный размер у меня получился при линейной организации алгоритма, без извращений и оптимизаций (накидал быстренько, для тренировки мозгов). Си для миниатюрных размеров флешь малопригоден.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...