// UVa 594 - One Little, Two Little, Three Little Endians #include <iostream> using namespace std; #define integer signed long long int int main() { integer n; while (cin >> n) { integer b0 = n & 255; integer b1 = (n >> 8) & 255; integer b2 = (n >> 16) & 255; integer b3 = (n >> 24) & 255; integer m = (b0 << 24) + (b1 << 16) + (b2 << 8) + b3; int left = (b0 >> 7) << 30; for (int i = 31; i <= sizeof(integer) * 8 - 1; i++) { left = left << 1; m = m | left; } cout << n << " converts to " << m << endl; } return 0; }
No comments:
Post a Comment