summaryrefslogtreecommitdiff
path: root/src/c/elementaryFunctions/bitset/u8bitsets.c
blob: 5f44dcd82633d065a9508a57b8bf49ad9d8e915b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* Scilab2C FOSSEE IITB */

#include "bitset.h"
#include<stdio.h>

uint8 u8bitsets(uint8 value,int position,int bit_value)
{
     if(bit_value==1)       
     {
       unsigned char  mask1 = 1 << (position-1) ;  // we could cast to unsigned char, just to be safe
       return (mask1 | value);
     }
     else
     {
       unsigned char mask2 =  ~(1 << (position-1));  // we could cast to unsigned char, just to be safe
       return (mask2 & value);

     } 

}