Usar bits para ligar saídas

Bom dia.
Venho pedir ajuda aos colegas do fórum.
Estou desenvolvendo um algoritmo em C para um dispositivo, para que cada vez que eu mande um valor em decimal através da porta serial, ele acione determinada saída:
EX:
Saída 1: 1
Saída 2: 2
Saída 3: 4
Saída 4: 8
Saída 5: 16
Saída 6: 32
Saída 7: 64
Saída 8: 128
Saída 9: 256
Saída 10: 512
Saída 11: 1024
Saída 12: 2048
Como posso usar apenas uma word (definições do protocolo de comunicação) para especificar quantas saídas serão ligadas, pensei em fazer assim, com os bits.
Pra ligar uma saída é simples, só mandar o valor e deu.
Mas como faço, em algoritmo para l dispositivo que recebe a mensagem entender que 7 seria 111, ou seja, saída 1, 2 e 3 ligadas?
Deve haver uma maneira de fazer isso sem usar if (até então só isso que passou pela minha cabeça) comparando cada valor para ver qual saídas devem ser ligadas.
Espero pela dicas/ajudas de vocês.
Venho pedir ajuda aos colegas do fórum.
Estou desenvolvendo um algoritmo em C para um dispositivo, para que cada vez que eu mande um valor em decimal através da porta serial, ele acione determinada saída:
EX:
Saída 1: 1
Saída 2: 2
Saída 3: 4
Saída 4: 8
Saída 5: 16
Saída 6: 32
Saída 7: 64
Saída 8: 128
Saída 9: 256
Saída 10: 512
Saída 11: 1024
Saída 12: 2048
Como posso usar apenas uma word (definições do protocolo de comunicação) para especificar quantas saídas serão ligadas, pensei em fazer assim, com os bits.
Pra ligar uma saída é simples, só mandar o valor e deu.
Mas como faço, em algoritmo para l dispositivo que recebe a mensagem entender que 7 seria 111, ou seja, saída 1, 2 e 3 ligadas?
Deve haver uma maneira de fazer isso sem usar if (até então só isso que passou pela minha cabeça) comparando cada valor para ver qual saídas devem ser ligadas.
Espero pela dicas/ajudas de vocês.