Директивы препроцессора! - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всем здраствуйте!!! Есть такое объявление : #define _BV(n) (1<<n) //макрос манипулирования битом #define _SETBIT(reg, n) (reg |= _BV(n) ) //установка бита в регистре Дальше в программе я вызываю функцию _SETBIT таким образом _SETBIT(DOUT, 8, K2)) (DOUT это дискретный выходной сигнал) (8 это номер бита) (K2 это проста какая та переменная) Как видите в объявление функции _SETBIT у нас 2 параметра reg и n,а кокда вызываю у меня 3 параметра,я понемаю надо добавить в объявление есчо один параметр например value то есть #define _SETBIT(reg, n, value) (reg |= _BV(n) ) толька вот не догоняю че в слейдущих скопках написать (reg |= _BV(n) & reg = value ) или как????

Решение задачи: «Директивы препроцессора!»

textual
Листинг программы
#define CHANGEBIT(reg, n, value) (reg ^= ((-value ^ reg) & _BV(n)))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5
Похожие ответы