All pastes #74493 Raw Edit

Untitled

public c v1 · immutable
#74493 ·published 2006-06-29 02:34 UTC
rendered paste body
// get the n'th bit of a number// the bit number starts from 0#define BIT_N(number, bit_num)  (((number)>>(bit_num))&0x1)#define OVERFLOW(A,B,S) ((A)&(B)&(~(C))|(~(A))&(~(B))&(C))//#define INT_OVERFLOW(a,b,s) OVERFLOW(a>>31,b>>31,c>>31)int main(){        char a = -4;        char b = -125;        char s = a + b;        int bp = sizeof(a)*8-1; // number of the last bit        int overflow = OVERFLOW(BIT_N(a,bp), BIT_N(b,bp), BIT_N(s,bp));        printf("for numbers a:%d and b:%d the sum is %d and overflow:%d\n", a, b, s, overflow);}~~~