parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

битовое вычитание

agat 05.12.2006 16:38

как сделать? Читал читал доки - не понимаю, школьный курс не помню. Пробовал методом научного тыка - логику результатов не понял.

Проблема вот в чем: есть битовая маска. Требуется из нее вычесть другую маску. Но дело в том, что заведомо неизвестно, существует ли в первой маске вторая. Если она есть, то все путем - вычитается. А если нет - то она наоборот - складывается.
^eval(14 !| 2)
# результат 12
^eval(14 !| 16)
# результат 30
Как добиться чтобы при втором варианте ответ был 14?