File: binary_op.c

package info (click to toggle)
c-cpp-reference 2.0.2-6
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k, lenny
  • size: 8,012 kB
  • ctags: 4,612
  • sloc: ansic: 26,960; sh: 11,014; perl: 1,854; cpp: 1,324; asm: 1,239; python: 258; makefile: 115; java: 77; awk: 34; csh: 9
file content (53 lines) | stat: -rw-r--r-- 1,222 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/************************************************************************
 *
 * Purpose: Display a byte in binary format.
 * 
 * Author:  M.J. Leslie.
 *
 * Date:    19-Mar-95
 *
 * Improvements: 
 *	1) Return the result to the calling function.
 *	2) Make it work on integers (4 bytes long).
 *
 ************************************************************************/

void binary_op(char byte);		/* Print a byte in binary.	*/

/************************************************************************/

main()
   {
   char byte=55;	

   binary_op(byte);			/* Print a byte in binary.	*/
   }

/************************************************************************/

void binary_op(char byte)
   {
   int count=8;				/* Number of bits in a byte.	*/

   while(count--)
      {
					/* AND the high order bit (the
					 * left one) If the bit is set,
					 * print a ONE.			*/
      printf("%d", ( byte & 128 ) ? 1 : 0 );

					/* Move all the bits LEFT.	*/
      byte <<= 1;
      } 

   printf("\n");
   }

/************************************************************************
 *
 *	Program results.
 *	----------------
 *
 *	00110111
 *
 ************************************************************************/