#include int x = 0; int intSize = 8 * sizeof(int); // # bits in an int int msb = 0; // most significant bit of x int count = 0; // replace implementation by asm block(s) void displayBin() { count = 0; for(; count < intSize; count++) { // calc msb of x if (0 <= x) { msb = 0; } else { msb = 1; } // print msb: printf("%d", msb); // left shift x x = x << 1; } } int main(void) { char response = 'y'; while(1) { printf("enter an int -> "); scanf("%d", &x); displayBin(); printf("\nagain?(y/n) "); getchar(); // flush \n response = getchar(); if (response == 'n') break; } printf("bye\n"); }