fork download
  1. #include <stdio.h>
  2. int main(){
  3.  
  4. char x = 0x45;
  5. char y = 0;
  6. char z = 0x00;
  7. char p = 0;
  8. int i=7,j=7;
  9. //01000101
  10.  
  11. //swap bit 0 and bit 7, bit 1 and bit6 swap, bit 2 and bit 5 swap, bit 3 and bit 4. Print the oyutput
  12.  
  13.  
  14. y = y | ((x>>i)&(1>>j));
  15. z = z | ((x<<i)&(1<<j));
  16. printf("0x%x, 0x%x\n", ((x>>i)&(1>>j)),((x<<i)&(1<<j)));
  17. printf("0x%x, 0x%x\n", y,z);
  18. i = i-2;
  19. j=j-1;
  20.  
  21. y = y | ((x>>i)&(0x0001>>j));
  22. z = z + ((x<<i)&(0x0001<<j));
  23. printf("0x%x, 0x%x\n", ((x>>i)&(1>>j)),((x<<i)&(1<<j)));
  24. printf("0x%x, 0x%x\n", y,z);
  25. i = i-2;
  26.  
  27. x = y|z;
  28. printf("0x%x", x);
  29. }
Success #stdin #stdout 0.01s 5284KB
stdin
45
stdout
0x0, 0x80
0x0, 0xffffff80
0x0, 0x0
0x0, 0xffffff80
0xffffff80