In computer science a byte (pronounced "bite", IPA: /ba t/) is a unit of ...
In computer science a byte (pronounced "bite", IPA: /ba t/) is a unit of ...
In computer science a byte (pronounced "bite", IPA: /ba t/) is a unit of ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Byte - Wikipedia, the free encyclopedia<br />
Byte<br />
From Wikipedia, the free encyclopedia<br />
<strong>In</strong><br />
<strong>computer</strong><br />
<strong>science</strong> a<br />
<strong>byte</strong><br />
Quantities <strong>of</strong> <strong>byte</strong>s<br />
SI prefixes (decimal) IEC prefixes (binary)<br />
Binary usage (<strong>of</strong>ten with KB for kB)<br />
Value Name Value Name<br />
1000 1 = 10 3 kilo<strong>byte</strong> (kB) 1024 1 = 2 10 = 1.024·10 3 kibi<strong>byte</strong> (KiB)<br />
1000 2 = 10 6 mega<strong>byte</strong> (MB) 1024 2 = 2 20 ≈ 1.049·10 6 mebi<strong>byte</strong> (MiB)<br />
1000 3 = 10 9 giga<strong>byte</strong> (GB) 1024 3 = 2 30 ≈ 1.074·10 9 gibi<strong>byte</strong> (GiB)<br />
1000 4 = 10 12 tera<strong>byte</strong> (TB) 1024 4 = 2 40 ≈ 1.100·10 12 tebi<strong>byte</strong> (TiB)<br />
1000 5 = 10 15 peta<strong>byte</strong> (PB) 1024 5 = 2 50 ≈ 1.126·10 15 pebi<strong>byte</strong> (PiB)<br />
1000 6 = 10 18 exa<strong>byte</strong> (EB) 1024 6 = 2 60 ≈ 1.153·10 18 exbi<strong>byte</strong> (EiB)<br />
1000 7 = 10 21 zetta<strong>byte</strong> (ZB) 1024 7 = 2 70 ≈ 1.181·10 21 zebi<strong>byte</strong> (ZiB)<br />
1000 8 = 10 24 yotta<strong>byte</strong> (YB) 1024 8 = 2 80 ≈ 1.209·10 24 yobi<strong>byte</strong> (YiB)<br />
(<strong>pronounced</strong> "bite", <strong>IPA</strong>: /<strong>ba</strong>ɪt/) <strong>is</strong> a <strong>unit</strong> <strong>of</strong> measurement <strong>of</strong> information storage, most<br />
<strong>of</strong>ten cons<strong>is</strong>ting <strong>of</strong> eight bits. <strong>In</strong> many <strong>computer</strong> architectures it <strong>is</strong> a <strong>unit</strong> <strong>of</strong> memory<br />
addressing.<br />
Originally, a <strong>byte</strong> was a small group <strong>of</strong> bits <strong>of</strong> a size convenient for data such as a<br />
single character from a Western character set. Its size was generally determined by the<br />
number <strong>of</strong> possible characters in the supported character set and was chosen to be a<br />
submultiple <strong>of</strong> the <strong>computer</strong>'s word size; h<strong>is</strong>torically, <strong>byte</strong>s have ranged from five to<br />
twelve bits. The popularity <strong>of</strong> IBM's System/360 architecture starting in the 1960s and<br />
the explosion <strong>of</strong> micro<strong>computer</strong>s <strong>ba</strong>sed on 8-bit microprocessors in the 1980s has<br />
made eight bits by far the most common size for a <strong>byte</strong>. The term octet <strong>is</strong> widely used<br />
as a more prec<strong>is</strong>e synonym where ambiguity <strong>is</strong> undesirable (for example, in protocol<br />
definitions).<br />
There has been considerable confusion about the meanings <strong>of</strong> SI prefixes used with<br />
the word "<strong>byte</strong>", such as kilo- (k or K) and mega- (M), as shown in the chart<br />
Quantities <strong>of</strong> <strong>byte</strong>s. Since <strong>computer</strong> memory comes in powers <strong>of</strong> 2 rather than 10, the<br />
industry used binary estimates <strong>of</strong> the SI-prefixed quantities. Because <strong>of</strong> the confusion,<br />
a contract specifying a quantity <strong>of</strong> <strong>byte</strong>s must define what the prefixes mean in terms<br />
<strong>of</strong> the contract (i.e., the alternate binary equivalents or the actual decimal values, or a<br />
binary estimate <strong>ba</strong>sed on the actual values).<br />
A <strong>byte</strong> <strong>is</strong> one <strong>of</strong> the <strong>ba</strong>sic integral data types in some programming languages,<br />
especially system programming languages.<br />
http://en.wikipedia.org/wiki/Byte<br />
Page 1 <strong>of</strong> 6<br />
2008/01/17
Byte - Wikipedia, the free encyclopedia<br />
To make the meaning <strong>of</strong> the table absolutely clear: A kibi<strong>byte</strong> <strong>is</strong> made up <strong>of</strong> 1,024<br />
<strong>byte</strong>s. A mebi<strong>byte</strong> <strong>is</strong> made up <strong>of</strong> 1,024 x 1,024 <strong>byte</strong>s. So that the figures in the column<br />
using 1,024 ra<strong>is</strong>ed to powers <strong>of</strong> 1,2,3,4 and so on are in <strong>unit</strong>s <strong>of</strong> <strong>byte</strong>s.<br />
Contents<br />
� 1 Meanings<br />
� 2 H<strong>is</strong>tory<br />
� 3 Alternate words<br />
� 4 Abbreviation/Symbol<br />
� 5 Names for different <strong>unit</strong>s<br />
� 6 See also<br />
� 7 Notes<br />
Meanings<br />
The word "<strong>byte</strong>" has numerous closely related meanings:<br />
1. A contiguous sequence <strong>of</strong> a fixed number <strong>of</strong> bits (binary digits). The use <strong>of</strong> a<br />
<strong>byte</strong> to mean 8 bits has become nearly ubiquitous.<br />
2. A contiguous sequence <strong>of</strong> bits within a binary <strong>computer</strong> that compr<strong>is</strong>es the<br />
smallest addressable sub-field <strong>of</strong> the <strong>computer</strong>'s natural word-size. That <strong>is</strong>, the<br />
smallest <strong>unit</strong> <strong>of</strong> binary data on which meaningful computation, or natural data<br />
boundaries, could be applied. For example, the CDC 6000 series scientific<br />
mainframes divided their 60-bit floating-point words into 10 six-bit <strong>byte</strong>s. These<br />
<strong>byte</strong>s conveniently held Hollerith data from punched cards, typically the uppercase<br />
alphabet and decimal digits. CDC also <strong>of</strong>ten referred to 12-bit quantities as<br />
<strong>byte</strong>s, each holding two 6-bit d<strong>is</strong>play code characters, due to the 12-bit I/O<br />
architecture <strong>of</strong> the machine. The PDP-10 used assembly instructions LDB and<br />
DPB to extract <strong>byte</strong>s — these operations survive today in Common L<strong>is</strong>p. Bytes<br />
<strong>of</strong> six, seven, or nine bits were used on some <strong>computer</strong>s, for example within the<br />
36-bit word <strong>of</strong> the PDP-10. The UNIVAC 1100/2200 series <strong>computer</strong>s (now<br />
Un<strong>is</strong>ys) addressed in both 6-bit (Fieldata) and 9-bit (ASCII) modes within its 36bit<br />
word.<br />
H<strong>is</strong>tory<br />
The term <strong>byte</strong> was coined by Dr. Werner Buchholz in July 1956, during the early<br />
Page 2 <strong>of</strong> 6<br />
design phase for the IBM Stretch <strong>computer</strong>. [1][2][3] Originally it was defined in<br />
instructions by a 4-bit <strong>byte</strong>-size field, allowing from one to sixteen bits (the<br />
production design reduced th<strong>is</strong> to a 3-bit <strong>byte</strong>-size field, allowing from one to eight<br />
bits in a <strong>byte</strong>); typical I/O equipment <strong>of</strong> the period used six-bit <strong>unit</strong>s. A fixed eight-bit<br />
<strong>byte</strong> size was later adopted and promulgated as a standard by the System/360. The<br />
term "<strong>byte</strong>" comes from "bite," as in the smallest amount <strong>of</strong> data a <strong>computer</strong> could<br />
http://en.wikipedia.org/wiki/Byte<br />
2008/01/17
Byte - Wikipedia, the free encyclopedia<br />
"bite" at once. The spelling change not only reduced the chance <strong>of</strong> a "bite" being<br />
m<strong>is</strong>taken for a "bit," but also was cons<strong>is</strong>tent with the penchant <strong>of</strong> early <strong>computer</strong><br />
scient<strong>is</strong>ts to make up words and change spellings. However, <strong>ba</strong>ck in the 1960s, the<br />
luminaries at IBM Education Department in the UK were teaching that a bit was a<br />
Binary digIT and a <strong>byte</strong> was a BinarY TuplE (from n-tuple, i.e. [quin]tuple, [sex]<br />
tuple, [sep]tuple, [oc]tuple ...), turning "<strong>byte</strong>" into a <strong>ba</strong>ckronym. A <strong>byte</strong> was also <strong>of</strong>ten<br />
referred to as "an 8-bit <strong>byte</strong>", reinforcing the notion that it was a tuple <strong>of</strong> n bits, and<br />
that other sizes were possible.<br />
1. A contiguous sequence <strong>of</strong> binary bits in a serial data stream, such as in modem or<br />
satellite communications, or from a d<strong>is</strong>k-drive head, which <strong>is</strong> the smallest<br />
meaningful <strong>unit</strong> <strong>of</strong> data. These <strong>byte</strong>s might include start bits, stop bits, or parity<br />
bits, and thus could vary from 7 to 12 bits to contain a single 7-bit ASCII code.<br />
2. A datatype or synonym for a datatype in certain programming languages. C and<br />
C++, for example, defines <strong>byte</strong> as "addressable <strong>unit</strong> <strong>of</strong> data storage large enough<br />
to hold any member <strong>of</strong> the <strong>ba</strong>sic character set <strong>of</strong> the execution<br />
environment" (clause 3.6 <strong>of</strong> the C standard). Since the C char integral data type<br />
must contain at least 8 bits (clause 5.2.4.2.1), a <strong>byte</strong> in C <strong>is</strong> at least capable <strong>of</strong><br />
holding 256 different values (signed or unsigned char does not matter). Various<br />
implementations <strong>of</strong> C and C++ define a "<strong>byte</strong>" as 8, 9, 16, 32, or 36 bits[1]<br />
(http://www.parashift.com/c++-faq-lite/intrinsic-types.html#faq-26.4)[2]<br />
(http://home.att.net/~jackklein/c/inttypes.html#char). The actual number <strong>of</strong> bits<br />
in a particular implementation <strong>is</strong> documented as CHAR_BIT as implemented in<br />
the limits.h file. Java's primitive <strong>byte</strong> data type <strong>is</strong> always defined as<br />
cons<strong>is</strong>ting <strong>of</strong> 8 bits and being a signed data type, holding values from −128 to<br />
127.<br />
Early microprocessors, such as <strong>In</strong>tel 8008 (the direct predecessor <strong>of</strong> the 8080, and then<br />
8086) could perform a small number <strong>of</strong> operations on four bits, such as the DAA<br />
(decimal adjust) instruction, and the "half carry" flag, that were used to implement<br />
decimal arithmetic routines. These four-bit quantities were called "nybbles," in<br />
homage to the then-common 8-bit "<strong>byte</strong>s."<br />
Alternate words<br />
Following "bit," "<strong>byte</strong>," and "nybble," there have been some analogical attempts to<br />
construct unambiguous terms for bit blocks <strong>of</strong> other sizes. [4] All <strong>of</strong> these are strictly<br />
jargon, and not very common.<br />
� 2 bits: crumb, quad, quarter, tayste, tydbit<br />
� 4 bits: nibble, nybble<br />
� 5 bits: nickle<br />
� 10 bits: deckle<br />
� 16 bits: playte, chawmp (on a 32-bit machine)<br />
� 18 bits: chawmp (on a 36-bit machine)<br />
� 32 bits: dynner, gawble (on a 32-bit machine)<br />
http://en.wikipedia.org/wiki/Byte<br />
Page 3 <strong>of</strong> 6<br />
2008/01/17
Byte - Wikipedia, the free encyclopedia<br />
� 48 bits: gawble (under circumstances that remain obscure)<br />
Abbreviation/Symbol<br />
IEEE 1541 and Metric-<strong>In</strong>terchange-Format (http://sw<strong>is</strong>s.csail.mit.edu/~jaffer/MIXF)<br />
specify "B" as the symbol for <strong>byte</strong> (e.g. MB means mega<strong>byte</strong>), whilst IEC 60027<br />
seems silent on the subject. Furthermore, B means bel (see decibel), another<br />
(logarithmic) <strong>unit</strong> used in the same field. The use <strong>of</strong> B to stand for bel <strong>is</strong> cons<strong>is</strong>tent<br />
with the metric system convention that capitalized symbols are for <strong>unit</strong>s named after a<br />
person (in th<strong>is</strong> case Alexander Graham Bell); usage <strong>of</strong> a capital B to stand for <strong>byte</strong> <strong>is</strong><br />
not cons<strong>is</strong>tent with th<strong>is</strong> convention. The <strong>unit</strong> symbol "kb" with a lowercase "b" <strong>is</strong> also<br />
commonly understood to stand for "kilo<strong>byte</strong>."<br />
IEEE 1541 specifies "b" as the symbol for bit; however the IEC 60027 and Metric-<br />
<strong>In</strong>terchange-Format specify "bit" (e.g. Mbit for megabit) for the symbol, achieving<br />
maximum d<strong>is</strong>ambiguation from <strong>byte</strong>.<br />
French-speaking countries sometimes use an uppercase "o" for "octet". Th<strong>is</strong> <strong>is</strong> not<br />
cons<strong>is</strong>tent with SI because <strong>of</strong> the r<strong>is</strong>k <strong>of</strong> confusion with the zero, and the convention<br />
that capitals are reserved for <strong>unit</strong> names derived from proper names, e.g., A=ampere,<br />
J=joule versus s=second, m=metre.<br />
Lowercase "o" for "octet" <strong>is</strong> a commonly used symbol in several non-Engl<strong>is</strong>hspeaking<br />
countries, and <strong>is</strong> also used with metric prefixes (for example, "ko" and<br />
"Mo").<br />
Names for different <strong>unit</strong>s<br />
The prefixes used for <strong>byte</strong> measurements are usually the same as the SI prefixes used<br />
for other measurements, but have slightly different values. The former are <strong>ba</strong>sed on<br />
powers <strong>of</strong> 1,024 (2 10 ), a convenient binary number, while the SI prefixes are <strong>ba</strong>sed on<br />
powers <strong>of</strong> 1,000 (10 3 ), a convenient decimal number. The table below illustrates these<br />
differences. See binary prefix for further d<strong>is</strong>cussion.<br />
Prefix Name SI Meaning Binary meaning Size difference<br />
K or k kilo 10 3 = 1000 1 2 10 = 1024 1 2.40%<br />
M mega 10 6 = 1000 2 2 20 = 1024 2 4.86%<br />
G giga 10 9 = 1000 3 2 30 = 1024 3 7.37%<br />
T tera 10 12 = 1000 4 2 40 = 1024 4 9.95%<br />
P peta 10 15 = 1000 5 2 50 = 1024 5 12.59%<br />
http://en.wikipedia.org/wiki/Byte<br />
Page 4 <strong>of</strong> 6<br />
2008/01/17
Byte - Wikipedia, the free encyclopedia<br />
E exa 10 18 = 1000 6 2 60 = 1024 6 15.29%<br />
<strong>In</strong> 1998, the IEC, then the IEEE, publ<strong>is</strong>hed a new standard describing binary prefixes:<br />
Prefix Name<br />
Kibi binary kilo 1 kibi<strong>byte</strong> (KiB) 2 10 <strong>byte</strong>s 1024 <strong>byte</strong>s<br />
Mebi binary mega 1 Mebi<strong>byte</strong> (MiB) 2 20 <strong>byte</strong>s 1024 KiB<br />
Gibi binary giga 1 Gibi<strong>byte</strong> (GiB) 2 30 <strong>byte</strong>s 1024 MiB<br />
Tebi binary tera 1 Tebi<strong>byte</strong> (TiB) 2 40 <strong>byte</strong>s 1024 GiB<br />
Pebi binary peta 1 Pebi<strong>byte</strong> (PiB) 2 50 <strong>byte</strong>s 1024 TiB<br />
Exbi binary exa 1 Exbi<strong>byte</strong> (EiB) 2 60 <strong>byte</strong>s 1024 PiB<br />
Fractional information <strong>is</strong> usually measured in bits, nibbles, nats, or <strong>ba</strong>ns, where the<br />
later two are used especially in the context <strong>of</strong> information theory and not generally<br />
with computing in general.<br />
See also<br />
� Bit<br />
� Word (computing)<br />
Notes<br />
1. ^ Origins <strong>of</strong> the Term "BYTE" (http://www.trailing-edge.com/~bobbemer/BYTE.HTM)<br />
Bob Bemer, accessed 2007-08-12<br />
2. ^ TIMELINE OF THE IBM STRETCH/HARVEST ERA (1956-1961)<br />
(http://archive.<strong>computer</strong>h<strong>is</strong>tory.org/resources/text/IBM/Stretch/102636400.txt)<br />
<strong>computer</strong>h<strong>is</strong>tory.org, '1956 July ... Werner Buchholz ... Werner's term "Byte" first<br />
popularized'<br />
3. ^ <strong>byte</strong> (http://catb.org/~esr/jargon/html/B/<strong>byte</strong>.html) catb.org, 'coined by Werner<br />
Buchholz in 1956'<br />
4. ^ nybble (http://dictionary.reference.com/browse/nybble) reference.com sourced from<br />
Jargon File 4.2.0, accessed 2007-08-12<br />
Retrieved from "http://en.wikipedia.org/wiki/Byte"<br />
Categories: All articles with unsourced statements | Articles with unsourced<br />
statements since February 2007 | Computing terminology<br />
http://en.wikipedia.org/wiki/Byte<br />
Page 5 <strong>of</strong> 6<br />
2008/01/17
Byte - Wikipedia, the free encyclopedia<br />
http://en.wikipedia.org/wiki/Byte<br />
Page 6 <strong>of</strong> 6<br />
� Th<strong>is</strong> page was last modified 17:49, 3 January<br />
2008.<br />
� All text <strong>is</strong> available under the terms <strong>of</strong> the<br />
GNU Free Documentation License. (See<br />
Copyrights for details.)<br />
Wikipedia® <strong>is</strong> a reg<strong>is</strong>tered trademark <strong>of</strong> the<br />
Wikimedia Foundation, <strong>In</strong>c., a U.S. reg<strong>is</strong>tered<br />
501(c)(3) tax-deductible nonpr<strong>of</strong>it charity.<br />
2008/01/17