# Bit

A term whose name is the contraction of "binary digit", is the maximal amount of information of a system that has two possible states (which maximum is reached when the two states are equally probable). Note that we must know a priori that the system has two distinct states, but we must also have no a priori idea about which state the system is in: The second condition is what makes the two states equally probable (for us). When someone tells us which state the system is, we have acquired one bit of information. Typical example of systems which have two states are: digits of a number coded in base two (one or zero), a truth value in classical boolean logic (true or false), current in some digital electronic circuit (pass or not), a door (well-closed or at least partially open), a switch (on or off).

The bit is used in computer science as the basic unit to measure the size of memory and of memory-bound objects in computers. Speed of information transfer is measured in bits per second, also known as baud, or with some of its multiples.

The multiples of the bit (b) commonly used in practice are powers of 2, instead as power of 10 as in the decimal metric system. These are the nibble, which is 2^2 = 4 bits, the byte (B), which is 2^3 = 8 bits, the word (W), which is 2^4 = 16 bits, the double word, which is 2^5 = 32 bits, and the quadruple word, which is 64 bits. In facts the word "word" is also used to denote the size of the registers of the CPU. This generates some confusions, as this size greatly depends on the computer architecture used, though it is most often a multiple of a byte, and was generally found to be 32 bit (4 bytes) in computers of the 1990's, though more recent architectures make it 64-bit (8 bytes).

Other confusion is generated by the fact that prefixes are defined, which denote powers of 2, and which have the same name of prefixes commonly used with other units of measure, and which instead denote powers of 10: K (kilo-) represents 2^10 = 1024 (in facts, it is close to 1000, from hence tha name "kilo-"). M (mega-) represents 2^20 = 1,048,576 (in fact it is some more than 1 billion). G (giga-) represents 2^30, some more than 1 billion. T (tera-) represents 2^40, some more than one trillion. E (peta-) represents 2^50, some more than 1000 trillions. One kilobit is 1024 bit or 128 bytes; one kilobyte (1 KB) is 1024 bytes, or 8192 bits. , so that 1Mb is 1048576 bits, or 128KB; 1MB = 1024 KB = 1048576 bytes = 8 megabit. 1 GB = 1024 MB. 1 TB = 1024 GB = 1,048,576 MB. To add confusion to confusion, in telco it is common practice to use powers of ten when expressing transmission speeds: one kilobit per second means exactly 1000 bits per second. To clarify the situation a bit, semi-standard clarifying prefixes KiB, MiB, GiB, TiB, PiB, EiB have been defined for powers of two, whereas kB, MB, GB, TB, PB, EB are unambiguously powers of ten. However, the new prefixes are not in widespread use.

Summary:
2^10 = kilo
2^20 = Mega
2^30 = Giga
2^40 = Tera
2^50 = Peta
2^60 = Exa
a 32 bit address can reference one of 4Gb locations = 2^32 = (2^2)(2^30) = 4(2^30) = 4Gb...
What's the size of the address space of a 64 bit address? :)