summaryrefslogtreecommitdiff
path: root/bin.c
diff options
context:
space:
mode:
authorNoe Rubinstein <nrubinstein@avencall.com>2012-03-28 14:50:51 +0200
committerNoe Rubinstein <nrubinstein@avencall.com>2012-03-28 14:50:51 +0200
commit9ac215cf8dabd37cde7cb139b7555db07efa4512 (patch)
tree1288ed37743e6e15f7c3b12371fc96f651d0c93d /bin.c
parenteb55d270e1d4ea785bcb1a0d15949e902bcf2bb8 (diff)
add bin.c
Diffstat (limited to 'bin.c')
-rw-r--r--bin.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/bin.c b/bin.c
new file mode 100644
index 0000000..dca7f5e
--- /dev/null
+++ b/bin.c
@@ -0,0 +1,21 @@
+printu32(unsigned int n) {
+ int i;
+ printf("%u = 0x%08x\n", n, n);
+ printf(" 28 24 20 16 12 8 4 0\n");
+ for(i = 31; i>=0; i--) {
+ printf("%d", !!(n&(1<<i)));
+ if(!(i%4)) printf(" ");
+ if(!(i%8)) printf(" ");
+ }
+ printf("\n");
+}
+printu32_long(unsigned int n) {
+ int i;
+ printf("%u = 0x%08x\n", n, n);
+ printf("|31|30|29|28|27|26|25|24|23|22|21|20|19|18|17|16|15"
+ "|14|13|12|11|10| 9| 8| 7| 6| 5| 4| 3| 2| 1| 0\n");
+ for(i = 31; i>=0; i--) printf("| %d", !!(n&(1<<i)));
+ printf("\n");
+}
+
+main(int argc, char* argv[]) { printu32_long(strtoul(argv[1], 0, 0));}