Binary code
A binary code represents text, computer processor instructions, or other data using any twosymbol system, but often the binary number system's 0 and 1. The binary code assigns a pattern of binary digits (bits) to each character, instruction, etc. For example, a binary string of eight bits can represent any of 256 possible values and can therefore represent a variety of different items.
In computing and telecommunications, binary codes are used for various methods of encoding data, such as character strings, into bit strings. Those methods may use fixedwidth or variablewidth strings. In a fixedwidth binary code, each letter, digit, or other character is represented by a bit string of the same length; that bit string, interpreted as a binary number, is usually displayed in code tables in octal, decimal or hexadecimal notation. There are many character sets and many character encodings for them.
A bit string, interpreted as a binary number, can be translated into a decimal number. For example, the lower case a, if represented by the bit string 01100001 (as it is in the standard ASCII code), can also be represented as the decimal number 97.
Contents
History of binary code
This section has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
(Learn how and when to remove this template message)

The modern binary number system, the basis for binary code, was invented by Gottfried Leibniz in 1679 and appears in his article Explication de l'Arithmétique Binaire. The full title is translated into English as the "Explanation of the binary arithmetic", which uses only the characters 1 and 0, with some remarks on its usefulness, and on the light it throws on the ancient Chinese figures of Fu Xi."^{[1]} (1703). Leibniz's system uses 0 and 1, like the modern binary numeral system. Leibniz encountered the I Ching through French Jesuit Joachim Bouvet and noted with fascination how its hexagrams correspond to the binary numbers from 0 to 111111, and concluded that this mapping was evidence of major Chinese accomplishments in the sort of philosophical mathematics he admired.^{[2]}^{[3]} Leibniz saw the hexagrams as an affirmation of the universality of his own religious belief.^{[3]}
Binary numerals were central to Leibniz's theology. He believed that binary numbers were symbolic of the Christian idea of creatio ex nihilo or creation out of nothing.^{[4]} Leibniz was trying to find a system that converts logic’s verbal statements into a pure mathematical one. After his ideas were ignored, he came across a classic Chinese text called I Ching or ‘Book of Changes’, which used a type of binary code. The book had confirmed his theory that life could be simplified or reduced down to a series of straightforward propositions. He created a system consisting of rows of zeros and ones. During this time period, Leibniz had not yet found a use for this system.^{[5]}
Binary systems predating Leibniz also existed in the ancient world. The aforementioned I Ching that Leibniz encountered dates from the 9th century BC in China.^{[6]} The binary system of the I Ching, a text for divination, is based on the duality of yin and yang.^{[7]} Slit drums with binary tones are used to encode messages across Africa and Asia.^{[7]} The Indian scholar Pingala (around 5th–2nd centuries BC) developed a binary system for describing prosody in his Chandashutram.^{[8]}^{[9]}
The residents of the island of Mangareva in French Polynesia were using a hybrid binarydecimal system before 1450.^{[10]} In the 11th century, scholar and philosopher Shao Yong developed a method for arranging the hexagrams which corresponds, albeit unintentionally, to the sequence 0 to 63, as represented in binary, with yin as 0, yang as 1 and the least significant bit on top. The ordering is also the lexicographical order on sextuples of elements chosen from a twoelement set.^{[11]}
In 1605 Francis Bacon discussed a system whereby letters of the alphabet could be reduced to sequences of binary digits, which could then be encoded as scarcely visible variations in the font in any random text.^{[12]} Importantly for the general theory of binary encoding, he added that this method could be used with any objects at all: "provided those objects be capable of a twofold difference only; as by Bells, by Trumpets, by Lights and Torches, by the report of Muskets, and any instruments of like nature".^{[12]}
Another mathematician and philosopher by the name of George Boole published a paper in 1847 called 'The Mathematical Analysis of Logic' that describes an algebraic system of logic, now known as Boolean algebra. Boole’s system was based on binary, a yesno, onoff approach that consisted of the three most basic operations: AND, OR, and NOT.^{[13]} This system was not put into use until a graduate student from Massachusetts Institute of Technology by the name of Claude Shannon noticed that the Boolean algebra he learned was similar to an electric circuit. Shannon wrote his thesis in 1937, which implemented his findings. Shannon's thesis became a starting point for the use of the binary code in practical applications such as computers, electric circuits, and more.^{[14]}
Other forms of binary code
This section possibly contains original research. (March 2015) (Learn how and when to remove this template message)

The bit string is not the only type of binary code. A binary system in general is any system that allows only two choices such as a switch in an electronic system or a simple true or false test.
Braille
Braille is a type of binary code that is widely used by blind people to read and write by touch, named for its creator, Louis Braille. This system consists of grids of six dots each, three per column, in which each dot has two states: raised or not raised. The different combinations of raised and flattened dots are capable of representing all letters, numbers, and punctuation signs.
Bagua
The bagua are diagrams used in feng shui, Taoist cosmology and I Ching studies. The ba gua consists of 8 trigrams; bā meaning 8 and guà meaning divination figure. The same word is used for the 64 guà (hexagrams). Each figure combines three lines (yáo) that are either broken (yin) or unbroken (yang). The relationships between the trigrams are represented in two arrangements, the primordial, "Earlier Heaven" or "Fuxi" bagua, and the manifested, "Later Heaven,"or "King Wen" bagua.^{[15]} (See also, the King Wen sequence of the 64 hexagrams).
Ifá divination
Sixteen Principal Odú  
Ogbe  I  I  I  I  Ogunda  I  I  I  II  
Oyẹku  II  II  II  II  Ọsa  II  I  I  I  
Iwori  II  I  I  II  Ika  II  I  II  II  
Odi  I  II  II  I  Oturupọn  II  II  I  II  
Irosun  I  I  II  II  Otura  I  II  I  I  
Iwọnrin  II  II  I  I  Irẹtẹ  I  I  II  I  
Ọbara  I  II  II  II  Ọsẹ  I  II  I  II  
Ọkanran  II  II  II  I  Ofun  II  I  II  I 
Ifá is the ancient system of divination and literary corpus of the Yoruba people of Nigeria. In Yoruba religion, the rite provides a means of communication with spiritual divinity. The Orisa Ifá or Orunmila ("Grand Priest") permits access to an initiated priest, a Babalawo ("father of the secrets") who generates binary values using sacred palm nuts. In wood powder, these are recorded as single and double lines. There are 16 principal Odú that are said to compose the 256 Odú. From memory alone, a Babalawo must be able to recite four to ten verses for each of the 256 Odú Ifá: generally, orisa lore, traditional medicine, and ritual advice. In 2005, UNESCO listed Ifá in the Masterpieces of the Oral and Intangible Heritage of Humanity.
Coding systems
ASCII code
The American Standard Code for Information Interchange (ASCII), uses a 7bit binary code to represent text and other characters within computers, communications equipment, and other devices. Each letter or symbol is assigned a number from 0 to 127. For example, lowercase "a" is represented by 1100001 as a bit string (which is 97 in decimal).
Binarycoded decimal
Binarycoded decimal, or BCD, is a binary encoded representation of integer values that uses a 4bit nibble to encode decimal digits. Four binary bits can encode up to 16 distinct values; but, in BCDencoded numbers, only the first ten values in each nibble are legal, and encode the decimal digits zero, through nine. The remaining six values are illegal, and may cause either a machine exception or unspecified behavior, depending on the computer implementation of BCD arithmetic.
BCD arithmetic is sometimes preferred to floatingpoint numeric formats in commercial and financial applications where the complex rounding behaviors of floatingpoint numbers is inappropriate.^{[16]}
Early uses of binary codes
 1875: Émile Baudot "Addition of binary strings in his ciphering system," which, eventually, lead to the ASCII of today.
 1884: The Linotype machine where the matrices are sorted to their corresponding channels after use by a binarycoded slide rail.
 1932: C. E. WynnWilliams "Scale of Two" counter^{[17]}
 1937: Alan Turing electromechanical binary multiplier
 1937: George Stibitz "excess three" code in the Complex Computer^{[17]}
 1937: AtanasoffBerry Computer^{[17]}
 1938: Konrad Zuse Z1
Current uses of binary
Most modern computers use binary encoding for instructions and data. CDs, DVDs, and Bluray Discs represent sound and video digitally in binary form. Telephone calls are carried digitally on longdistance and mobile phone networks using pulsecode modulation, and on voice over IP networks.
Weight of binary codes
The weight of a binary code, as defined in the table of constantweight codes,^{[18]} is the Hamming weight of the binary words coding for the represented words or sequences.
See also
References
 ^ Leibniz G., Explication de l'Arithmétique Binaire, Die Mathematische Schriften, ed. C. Gerhardt, Berlin 1879, vol.7, p.223; Engl. transl.[1]
 ^ Aiton, Eric J. (1985). Leibniz: A Biography. Taylor & Francis. pp. 245–8. ISBN 0852744706.
 ^ ^{a} ^{b} J.E.H. Smith (2008). Leibniz: What Kind of Rationalist?: What Kind of Rationalist?. Springer. p. 415. ISBN 9781402086687.
 ^ YuenTing Lai (1998). Leibniz, Mysticism and Religion. Springer. pp. 149–150. ISBN 9780792352235.
 ^ Gottfried Wilhelm Leibniz (16461716)
 ^ Edward Hacker; Steve Moore; Lorraine Patsco (2002). I Ching: An Annotated Bibliography. Routledge. p. 13. ISBN 9780415939690.
 ^ ^{a} ^{b} Jonathan Shectman (2003). Groundbreaking Scientific Experiments, Inventions, and Discoveries of the 18th Century. Greenwood Publishing. p. 29. ISBN 9780313320156.
 ^ Sanchez, Julio; Canton, Maria P. (2007). Microcontroller programming: the microchip PIC. Boca Raton, Florida: CRC Press. p. 37. ISBN 0849371899.
 ^ W. S. Anglin and J. Lambek, The Heritage of Thales, Springer, 1995, ISBN 038794544X
 ^ Bender, Andrea; Beller, Sieghard (16 December 2013). "Mangarevan invention of binary steps for easier calculation". Proceedings of the National Academy of Sciences. 111: 1322–1327. doi:10.1073/pnas.1309160110. PMC 3910603 . PMID 24344278.
 ^ Ryan, James A. (January 1996). "Leibniz' Binary System and Shao Yong's "Yijing"". Philosophy East and West. University of Hawaii Press. 46 (1): 59–90. doi:10.2307/1399337. JSTOR 1399337.
 ^ ^{a} ^{b} Bacon, Francis (1605). "The Advancement of Learning". London. pp. Chapter 1.
 ^ What's so logical about boolean algebra?
 ^ Claude Shannon(19162001)
 ^ Wilhelm, Richard (1950). The I Ching or Book of Changes. trans. by Cary F. Baynes, forward by C. G. Jung, preface to 3rd ed. by Hellmut Wilhelm (1967). Princeton, NJ: Princeton University Press. pp. 266, 269. ISBN 069109750X.
 ^ Cowlishaw, Mike F. (2015) [1981,2008]. "General Decimal Arithmetic". IBM. Retrieved 20160102.
 ^ ^{a} ^{b} ^{c} Glaser 1971
 ^ Table of Constant Weight Binary Codes
External links
 Sir Francis Bacon's BiLiteral Cypher system, predates binary number system.
 Weisstein, Eric W. "ErrorCorrecting Code". MathWorld.
 Table of general binary codes. An updated version of the tables of bounds for small general binary codes given in M.R. Best; A.E. Brouwer; F.J. MacWilliams; A.M. Odlyzko; N.J.A. Sloane (1978), "Bounds for Binary Codes of Length Less than 25", IEEE Trans. Inf. Theory, 24: 81–93, doi:10.1109/tit.1978.1055827.
 Table of Nonlinear Binary Codes. Maintained by Simon Litsyn, E. M. Rains, and N. J. A. Sloane. Updated until 1999.
 Glaser, Anton (1971). "Chapter VII Applications to Computers". History of Binary and other Nondecimal Numeration. Tomash. ISBN 0938228005. cites some preENIAC milestones.