Задача какая? в чём смысл? Я для флажков использую анонимные
юнионы, очень удобно, если нужно всё сбросить или проверить. Я не силён в языках Си, просто подсмотрел, как это реализовал IAR, и слепил похожее. :)) Удобно, просто, (понятно!) и работает.
Например, нужны 4 флажка, есть свободный регистр R8 (чтобы не лезть в память):

Можно манипулировать всеми флагами сразу, или по отдельности. Вот листинг
