diff options
author | imushir | 2016-01-22 16:01:46 +0530 |
---|---|---|
committer | imushir | 2016-01-22 16:01:46 +0530 |
commit | 82e50ba319fc2c531bde168df4b23fa28b990d56 (patch) | |
tree | 2a73c58cdd766ebf2b9b8c6a0449758103b4dcea /src/c/elementaryFunctions/bitset | |
parent | 9fdbe6b47b95468bce7c0ae162aff138ec0b9b94 (diff) | |
download | scilab2c-82e50ba319fc2c531bde168df4b23fa28b990d56.tar.gz scilab2c-82e50ba319fc2c531bde168df4b23fa28b990d56.tar.bz2 scilab2c-82e50ba319fc2c531bde168df4b23fa28b990d56.zip |
added support of uint8,uint16 for bitwise operators
Diffstat (limited to 'src/c/elementaryFunctions/bitset')
-rw-r--r-- | src/c/elementaryFunctions/bitset/u16bitsets.c | 20 | ||||
-rw-r--r-- | src/c/elementaryFunctions/bitset/u16bitsets.c~ | 20 | ||||
-rw-r--r-- | src/c/elementaryFunctions/bitset/u8bitsets.c | 20 | ||||
-rw-r--r-- | src/c/elementaryFunctions/bitset/u8bitsets.c~ | 20 |
4 files changed, 80 insertions, 0 deletions
diff --git a/src/c/elementaryFunctions/bitset/u16bitsets.c b/src/c/elementaryFunctions/bitset/u16bitsets.c new file mode 100644 index 00000000..953e46c9 --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u16bitsets.c @@ -0,0 +1,20 @@ +/* Scilab2C FOSSEE IITB */ + +#include "bitset.h" +#include<stdio.h> + +uint16 u16bitsets(uint16 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); + + } + +} diff --git a/src/c/elementaryFunctions/bitset/u16bitsets.c~ b/src/c/elementaryFunctions/bitset/u16bitsets.c~ new file mode 100644 index 00000000..953e46c9 --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u16bitsets.c~ @@ -0,0 +1,20 @@ +/* Scilab2C FOSSEE IITB */ + +#include "bitset.h" +#include<stdio.h> + +uint16 u16bitsets(uint16 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); + + } + +} diff --git a/src/c/elementaryFunctions/bitset/u8bitsets.c b/src/c/elementaryFunctions/bitset/u8bitsets.c new file mode 100644 index 00000000..5f44dcd8 --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u8bitsets.c @@ -0,0 +1,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); + + } + +} diff --git a/src/c/elementaryFunctions/bitset/u8bitsets.c~ b/src/c/elementaryFunctions/bitset/u8bitsets.c~ new file mode 100644 index 00000000..5f44dcd8 --- /dev/null +++ b/src/c/elementaryFunctions/bitset/u8bitsets.c~ @@ -0,0 +1,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); + + } + +} |