code

6
Code From Wikipedia, the free encyclopedia "Decoded" redirects here. For the television show, see Brad Meltzer's Decoded . For the Jay-Z memoir, see Decoded (book) . For other uses, see Code (disambiguation) . "Encoding" redirects here. For other uses, see Encoding (disambiguation) . This article needs additional citations for verification . Please help improve this article by adding citations to reliable sources . Unsourced material may be challenged and removed. (March 2010) Morse code, a famous type of code In communications and information processing , code is system of rules to convert information —such as a letter , word , sound, image, or gesture —into another, sometimes shortened or secret , form or representation for communication through a channel or storage in a medium . An early example is the invention language , which enabled a person, through speech , to communicate what he or she saw, heard, felt, or thought to others. But speech limits the range of communication to the distance a voice can carry, and

Upload: empire100

Post on 18-Jan-2016

8 views

Category:

Documents


0 download

DESCRIPTION

Code

TRANSCRIPT

Page 1: Code

CodeFrom Wikipedia, the free encyclopedia"Decoded" redirects here. For the television show, see Brad Meltzer's Decoded. For the Jay-Z memoir, see Decoded (book).For other uses, see Code (disambiguation)."Encoding" redirects here. For other uses, see Encoding (disambiguation).

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (March 2010)

Morse code, a famous type of code

In communications and information processing, code is system of rules to convert information—such as a letter, word, sound, image, or gesture—into another, sometimes shortened or secret, form or representation for communication through a channel or storage in a medium. An early example is the invention language, which enabled a person, through speech, to communicate what he or she saw, heard, felt, or thought to others. But speech limits the range of communication to the distance a voice can carry, and limits the audience to those present when the speech is uttered. The invention of writing, which converted spoken language into visual symbols, extended the range of communication across space and time.

The process of encoding converts information from a source into symbols for communication or storage. Decoding is the reverse process, converting code symbols back into a form that the recipient understands.

Page 2: Code

One reason for coding is to enable communication in places where ordinary plain language, spoken or written, is difficult or impossible. For example, semaphore, where the configuration of flags held by a signaller or the arms of a semaphore tower encodes parts of the message, typically individual letters and numbers. Another person standing a great distance away can interpret the flags and reproduce the words sent.

Contents

1 Theory o 1.1 Variable-length codes o 1.2 Error-correcting codes

2 Examples o 2.1 Codes in communication used for brevity

3 Bletchley Park o 3.1 Character encodings o 3.2 Genetic code o 3.3 Gödel code o 3.4 Other o 3.5 Cryptography

4 Other examples 5 Codes and acronyms 6 See also 7 References

Theory

Main article: Coding theory

In information theory and computer science, a code is usually considered as an algorithm which uniquely represents symbols from some source alphabet, by encoded strings, which may be in some other target alphabet. An extension of the code for representing sequences of symbols over the source alphabet is obtained by concatenating the encoded strings.

Before giving a mathematically precise definition, we give a brief example. The mapping

is a code, whose source alphabet is the set and whose target alphabet is the set . Using the extension of the code, the encoded string 0011001011 can be grouped into codewords as 0 011 0 01 011, and these in turn can be decoded to the sequence of source symbols acabc.

Using terms from formal language theory, the precise mathematical definition of this concept is as follows: Let S and T be two finite sets, called the source and target alphabets, respectively. A code is a total function mapping each symbol from S to a sequence of symbols

Page 3: Code

over T, and the extension of to a homomorphism of into , which naturally maps each sequence of source symbols to a sequence of target symbols, is referred to as its extension.

Variable-length codes

Main article: Variable-length code

In this section we consider codes, which encode each source (clear text) character by a code word from some dictionary, and concatenation of such code words give us an encoded string. Variable-length codes are especially useful when clear text characters have different probabilities; see also entropy encoding.

A prefix code is a code with the "prefix property": there is no valid code word in the system that is a prefix (start) of any other valid code word in the set. Huffman coding is the most known algorithm for deriving prefix codes. Prefix codes are widely referred to as "Huffman codes", even when the code was not produced by a Huffman algorithm. Other examples of prefix codes are country calling codes, the country and publisher parts of ISBNs, and the Secondary Synchronization Codes used in the UMTS W-CDMA 3G Wireless Standard.

Kraft's inequality characterizes the sets of code word lengths that are possible in a prefix code. Virtually any uniquely decodable one-to-many code, not necessary a prefix one, must satisfy Kraft's inequality.

Error-correcting codes

Main article: Error detection and correctionSee also: Block code

Codes may also be used to represent data in a way more resistant to errors in transmission or storage. Such a "code" is called an error-correcting code, and works by including carefully crafted redundancy with the stored (or transmitted) data. Examples include Hamming codes, Reed–Solomon, Reed–Muller, Walsh–Hadamard, Bose–Chaudhuri–Hochquenghem, Turbo, Golay, Goppa, low-density parity-check codes, and space–time codes. Error detecting codes can be optimised to detect burst errors, or random errors.

Examples

Codes in communication used for brevity

A cable code replaces words (e.g., ship or invoice) with shorter words, allowing the same information to be sent with fewer characters, more quickly, and most important, less expensively.

Codes can be used for brevity. When telegraph messages were the state of the art in rapid long distance communication, elaborate systems of commercial codes that encoded complete phrases

Page 4: Code

into single words (commonly five-letter groups) were developed, so that telegraphers became conversant with such "words" as BYOXO ("Are you trying to weasel out of our deal?"), LIOUY ("Why do you not answer my question?"), BMULD ("You're a skunk!"), or AYYLU ("Not clearly coded, repeat more clearly."). Code words were chosen for various reasons: length, pronounceability, etc. Meanings were chosen to fit perceived needs: commercial negotiations, military terms for military codes, diplomatic terms for diplomatic codes, any and all of the preceding for espionage codes. Codebooks and codebook publishers proliferated, including one run as a front for the American Black Chamber run by Herbert Yardley between the First and Second World Wars. The purpose of most of these codes was to save on cable costs. The use of data coding for data compression predates the computer era; an early example is the telegraph Morse code where more-frequently used characters have shorter representations. Techniques such as Huffman coding are now used by computer-based algorithms to compress large data files into a more compact form for storage or transmission.

Bletchley Park

Bletchley Park is an estate located in the town of Bletchley, in Milton Keynes, Buckinghamshire, England, and is run by the Bletchley Park Trust as a heritage attraction. During the Second World War, Bletchley Park was the site of the United Kingdom's main decryption establishment, the Government Code and Cypher School (GC&CS), where ciphers and codes of several Axis countries were decrypted, most importantly the ciphers generated by the German Enigma and Lorenz machines. The place was known as "B.P." to the people who worked there.[1][2] For the many members of the Women's Royal Naval Service (Wrens) who worked at Bletchley Park, their posting was to HMS Pembroke V.

Character encodings

Main article: Character encoding

Probably the most widely known data communications code so far (aka character representation) in use today is ASCII. In one or another (somewhat compatible) version, it is used by nearly all personal computers, terminals, printers, and other communication equipment. It represents 128 characters with seven-bit binary numbers—that is, as a string of seven 1s and 0s (bits). In ASCII a lowercase "a" is always 1100001, an uppercase "A" always 1000001, and so on. There are many other encodings, which represent each character by a byte (usually referred as code pages), integer code point (Unicode) or a byte sequence (UTF-8).

Genetic code

Main article: Genetic code

Biological organisms contain genetic material that is used to control their function and development. This is DNA which contains units named genes that can produce proteins through a code (genetic code) in which a series of triplets (codons) of four possible nucleotides are translated into one of twenty possible amino acids. A sequence of codons results in a corresponding sequence of amino acids that form a protein.

Page 5: Code

Gödel code

In mathematics, a Gödel code was the basis for the proof of Gödel's incompleteness theorem. Here, the idea was to map mathematical notation to a natural number (using a Gödel numbering).