//
void setup() {
// put your setup code here, to run once:
Serial1.begin(115200);
}
extern "C" {
unsigned int func1(unsigned int a, unsigned int b);
unsigned int func2(unsigned int a, unsigned int b);
signed int func3(signed int a, signed int b);
signed int func4(signed int a, signed int b);
}
int main() {
int a, b;
printf("enter a: ");
scanf("%i", &a);
printf("%i\n", a);
printf("enter b: ");
scanf("%i", &b);
printf("%i\n", b);
printf("1. (%i >> 4) & %i = %i\n\n", a, b, func1(a, b));
printf("2. (%i << 8) | (~%i) = %i\n\n", a, b, func2(a, b));
printf("3. (%i >> 2) & (~%i) = %i\n\n", a, b, func3(a, b));
printf("4. (%i >> 5) ^ (~%i) = %i\n\n", a, b, func4(a, b));
return 0;
}