Бајт
Бајт (енгл. byte, као другачије написан облик речи bite са значењем „одгризак") је јединица мере података у рачунарству. Састоји се од одговарајућег броја битова, али као мера није апсолутно стандардизована - бајтови различитих рачунара могу имати различит број битова, нпр. између 4 и 32. Чињенични стандард је, међутим, 8 битова ("октет") и данас је тешко наћи рачунаре са различитом дефиницијом бајта. Реч бајт је скраћеница од енглеских речи by eight и значи „за осам”[1], али је такође скраћеница и од binary term.
Бајт | |
---|---|
Систем | јединица изведена из бита |
Јединица | дигиталне информације, величина података |
Симбол | B или o (када се ради о 8 бита) |
Умношци бајта | |||||
---|---|---|---|---|---|
Одомаћена употреба и (значење по СИ систему) |
Стандард за бинарне префиксе по IEC 60027-2 | ||||
Назив | Ознака | Количина | Назив | Ознака | Количина |
килобајт | kB | 210 (103) | кибибајт | KiB | 210 |
мегабајт | MB | 220 (106) | мебибајт | MiB | 220 |
гигабајт | GB | 230 (109) | гибибајт | GiB | 230 |
терабајт | TB | 240 (1012) | тебибајт | TiB | 240 |
петабајт | PB | 250 (1015) | пебибајт | PiB | 250 |
ексабајт | EB | 260 (1018) | ексбибајт | EiB | 260 |
зетабајт | ZB | 270 (1021) | зебибајт | ZiB | 270 |
јотабајт | YB | 280 (1024) | јобибајт | YiB | 280 |
Види још: бит, нибл, неодређеност умножака |
Разлог за постојање ове јединице информације је практичан. Да би се дефинисала основна величина података довољна за смештање једног слова односно знака интерпункције, али такође и за пренос комуникационим каналима као и ради дефинисања основне адресибилне јединице података. У складу са сложеношћу процесорске архитектуре дефинисана је и основна величина речи којом барата процесор.[2][3] Тако се временом од 8-битног процесора прешло на 16-битне, 32-битне и тренутно на 64-битне. Тако је и величина процесорске речи, ширина адресне линије, регистара и адресибилна јединица за приступ постала значајно већа, међутим још увек сви процесори чувају, компатибилности ради, могућност да баратају појединачним бајтовима. Зато и данас (условно) важи стара дефиниција бајта: Бајт је најмања адресибилна јединица количине података.
Да би се разликовали бајтови произвољне величине од уобичајене 8-битне дефиниције, документи мрежног протокола као што је Интернет Протокол (RFC 791) означавају 8-битни бајт као октет.[4] Ти битови у октету се обично броје са цифрама од 0 до 7 или 7 до 0 у зависности од битне оријентације. Први бит је број 0, што чини осми бит бројем 7.
Величина бајта је историјски зависила од хардвера и нису постојали дефинитивни стандарди који би налагали величину. Коришћене су величине од 1 до 48 бита.[5][6][7][8] Шестобитни код карактера био је често коришћена имплементација у раним системима кодирања, а рачунари који користе шест-битне и девет-битне бајтове били су уобичајени током 1960-их. Ови системи су често имали меморијске речи од 12, 18, 24, 30, 36, 48 или 60 бита, што одговара 2, 3, 4, 5, 6, 8 или 10 шесто-битних бајтова. У овој ери, груписање битова у току инструкција често се називало слоговима[а] или слабовима, пре него што је термин бајт постао уобичајен.
Савремени де факто стандард од осам бита, како је документовано у ISO/IEC 2382-1:1993, је подесни степен двојке који дозвољава бинарно кодиране вредности од 0 до 255 за један бајт—2 на степен од 8 је 256.[9] Међународни стандард IEC 80000-13 је кодификовао ово заједничко значење. Многи типови апликација користе информације које се могу представити у осам или мање битова и дизајнери процесора обично оптимизују за ову употребу. Популарност великих комерцијалних рачунарских архитектура је помогла у свеприсутном прихватању 8-битног бајта.[10] Модерне архитектуре обично користе 32- или 64-битне речи, које се састоје од четири или осам бајтова.
Симбол јединице за бајт је означен као велико слово Б од стране Међународне електротехничке комисије (IEC) и Института инжењера електротехнике и електронике (IEEE).[11] На међународном нивоу, јединични октет, симбол о, експлицитно дефинише секвенцу од осам битова, елиминишући потенцијалну двосмисленост термина „бајт”.[12][13]
Етимологија и историја
уредиТермин бајт је сковао Вернер Бухолц у јуну 1956. године,[5][14][15][б] током ране фазе дизајна за ИБМ Стреч[16][17][2][14][15][18][19] рачунара, који је имао адресирање на инструкције битова и променљиве дужине поља (VFL) са величином бајта кодираном у инструкцији.[14] Правопис речи је намерно изабран како би се избегло случајно поистовећивање са битом.[2][14][20][в]
Напомене
уреди- ^ Термин слог је коришћен за бајтове који садрже инструкције или састојке инструкција, а не за бајтове података.
- ^ Многи извори погрешно указују на рођендан термина бајт у јулу 1956. године, међутим Вернер Бухолц је тврдио да је тај термин скован у јуну 1956. Заправо, најранији документ који то подржава датира из 1956-06-11. Бухолц је изјавио да је прелазак на 8-битне бајтове замишљен у августу 1956. године, али најранији документ који је пронађен да користи овај појам датира из септембра 1956. године.
- ^ Неке касније машине, на пример, Burroughs B1700, CDC 3600, DEC PDP-6, DEC PDP-10, имале су могућност да раде на произвољним бајтовима који нису већи од величине речи.
Референце
уреди- ^ „Политикин забавник, број 2919”. Архивирано из оригинала 14. 03. 2012. г. Приступљено 10. 04. 2010.
- ^ а б в Blaauw, Gerrit Anne; Brooks, Jr., Frederick Phillips; Buchholz, Werner (1962), „4: Natural Data Units” (PDF), Ур.: Buchholz, Werner, Planning a Computer System – Project Stretch, McGraw-Hill Book Company, Inc. / The Maple Press Company, York, PA., стр. 39—40, LCCN 61-10466, Архивирано из оригинала (PDF) 2017-04-03. г., Приступљено 2017-04-03, „Terms used here to describe the structure imposed by the machine design, in addition to bit, are listed below.
Byte denotes a group of bits used to encode a character, or the number of bits transmitted in parallel to and from input-output units. A term other than character is used here because a given character may be represented in different applications by more than one code, and different codes may use different numbers of bits (i.e., different byte sizes). In input-output transmission the grouping of bits may be completely arbitrary and have no relation to actual characters. (The term is coined from bite, but respelled to avoid accidental mutation to bit.)
A word consists of the number of data bits transmitted in parallel from or to memory in one memory cycle. Word size is thus defined as a structural property of the memory. (The term catena was coined for this purpose by the designers of the Bull fr computer.)
Block refers to the number of words transmitted to or from an input-output unit in response to a single input-output instruction. Block size is a structural property of an input-output unit; it may have been fixed by the design or left to be varied by the program.” - ^ Bemer, Robert William (1959), „A proposal for a generalized card code of 256 characters”, Communications of the ACM, 2 (9): 19—23, S2CID 36115735, doi:10.1145/368424.368435
- ^ Postel, J. (септембар 1981). Internet Protocol DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION (на језику: енглески). p. 43. doi:10.17487/RFC0791 . RFC 791. Приступљено 28. 8. 2020. „octet An eight bit byte.”
- ^ а б Buchholz, Werner (1956-06-11). „7. The Shift Matrix” (PDF). The Link System. IBM. стр. 5—6. Stretch Memo No. 39G. Архивирано из оригинала (PDF) 2017-04-04. г. Приступљено 2016-04-04. „[…] Most important, from the point of view of editing, will be the ability to handle any characters or digits, from 1 to 6 bits long.
Figure 2 shows the Shift Matrix to be used to convert a 60-bit word, coming from Memory in parallel, into characters, or 'bytes' as we have called them, to be sent to the Adder serially. The 60 bits are dumped into magnetic cores on six different levels. Thus, if a 1 comes out of position 9, it appears in all six cores underneath. Pulsing any diagonal line will send the six bits stored along that line to the Adder. The Adder may accept all or only some of the bits.
Assume that it is desired to operate on 4 bit decimal digits, starting at the right. The 0-diagonal is pulsed first, sending out the six bits 0 to 5, of which the Adder accepts only the first four (0–3). Bits 4 and 5 are ignored. Next, the 4 diagonal is pulsed. This sends out bits 4 to 9, of which the last two are again ignored, and so on.
It is just as easy to use all six bits in alphanumeric work, or to handle bytes of only one bit for logical analysis, or to offset the bytes by any number of bits. All this can be done by pulling the appropriate shift diagonals. An analogous matrix arrangement is used to change from serial to parallel operation at the output of the adder. […]” - ^ 3600 Computer System – Reference Manual (PDF). K. St. Paul, Minnesota, USA: Control Data Corporation (CDC). 1966-10-11 [1965]. 60021300. Архивирано из оригинала (PDF) 2017-04-05. г. Приступљено 2017-04-05. „Byte – A partition of a computer word.” (NB. Discusses 12-bit, 24-bit and 48-bit bytes.)
- ^ Rao, Thammavaram R. N.; Fujiwara, Eiji (1989). McCluskey, Edward J., ур. Error-Control Coding for Computer Systems. Prentice Hall Series in Computer Engineering (1 изд.). Englewood Cliffs, NJ, USA: Prentice Hall. ISBN 0-13-283953-9. LCCN 88-17892. (NB. Example of the usage of a code for "4-bit bytes".)
- ^ Tafel, Hans Jörg (1971). Einführung in die digitale Datenverarbeitung [Introduction to digital information processing] (на језику: немачки). Munich: Carl Hanser Verlag. стр. 300. ISBN 3-446-10569-7. „Byte = zusammengehörige Folge von i.a. neun Bits; davon sind acht Datenbits, das neunte ein Prüfbit” (NB. Defines a byte as a group of typically 9 bits; 8 data bits plus 1 parity bit.)
- ^ ISO/IEC 2382-1: 1993, Information technology – Vocabulary – Part 1: Fundamental terms. 1993. „byte
A string that consists of a number of bits, treated as a unit, and usually representing a character or a part of a character.
NOTES
1 The number of bits in a byte is fixed for a given data processing system.
2 The number of bits in a byte is usually 8.” - ^ „Computer History Museum – Exhibits – Internet History – 1964: Internet History 1962 to 1992”. Computer History Museum. 2017 [2015]. Архивирано из оригинала 2017-04-03. г. Приступљено 2017-04-03.
- ^ Jaffer, Aubrey (2011) [2008]. „Metric-Interchange-Format”. Архивирано из оригинала 2017-04-03. г. Приступљено 2017-04-03.
- ^ Kozierok, Charles M. (2005-09-20) [2001]. „The TCP/IP Guide – Binary Information and Representation: Bits, Bytes, Nibbles, Octets and Characters – Byte versus Octet”. 3.0. Архивирано из оригинала 2017-04-03. г. Приступљено 2017-04-03.
- ^ ISO 2382-4, Organization of data (2 изд.). „byte, octet, 8-bit byte: A string that consists of eight bits.”
- ^ а б в г Buchholz, Werner (фебруар 1977). „The Word 'Byte' Comes of Age...”. Byte Magazine. 2 (2): 144. „[…] The first reference found in the files was contained in an internal memo written in June 1956 during the early days of developing Stretch. A byte was described as consisting of any number of parallel bits from one to six. Thus a byte was assumed to have a length appropriate for the occasion. Its first use was in the context of the input-output equipment of the 1950s, which handled six bits at a time. The possibility of going to 8 bit bytes was considered in August 1956 and incorporated in the design of Stretch shortly thereafter. The first published reference to the term occurred in 1959 in a paper 'Processing Data in Bits and Pieces' by G A Blaauw, F P Brooks Jr and W Buchholz in the IRE Transactions on Electronic Computers, June 1959, page 121. The notions of that paper were elaborated in Chapter 4 of Planning a Computer System (Project Stretch), edited by W Buchholz, McGraw-Hill Book Company (1962). The rationale for coining the term was explained there on page 40 as follows:
Byte denotes a group of bits used to encode a character, or the number of bits transmitted in parallel to and from input-output units. A term other than character is used here because a given character may be represented in different applications by more than one code, and different codes may use different numbers of bits (ie, different byte sizes). In input-output transmission the grouping of bits may be completely arbitrary and have no relation to actual characters. (The term is coined from bite, but respelled to avoid accidental mutation to bit.)
System/360 took over many of the Stretch concepts, including the basic byte and word sizes, which are powers of 2. For economy, however, the byte size was fixed at the 8 bit maximum, and addressing at the bit level was replaced by byte addressing. […]” - ^ а б „Timeline of the IBM Stretch/Harvest era (1956–1961)”. Computer History Museum. јун 1956. Архивирано из оригинала 2016-04-29. г. Приступљено 2017-04-03. „1956 Summer: Gerrit Blaauw, Fred Brooks, Werner Buchholz, John Cocke and Jim Pomerene join the Stretch team. Lloyd Hunter provides transistor leadership.
1956 July [sic]: In a report Werner Buchholz lists the advantages of a 64-bit word length for Stretch. It also supports NSA's requirement for 8-bit bytes. Werner's term "Byte" first popularized in this memo.” (NB. This timeline erroneously specifies the birth date of the term "byte" as July 1956, while Buchholz actually used the term as early as June 1956.) - ^ Buchholz, Werner (1956-07-31). „5. Input-Output” (PDF). Memory Word Length. IBM. стр. 2. Stretch Memo No. 40. Архивирано из оригинала (PDF) 2017-04-04. г. Приступљено 2016-04-04. „[…] 60 is a multiple of 1, 2, 3, 4, 5, and 6. Hence bytes of length from 1 to 6 bits can be packed efficiently into a 60-bit word without having to split a byte between one word and the next. If longer bytes were needed, 60 bits would, of course, no longer be ideal. With present applications, 1, 4, and 6 bits are the really important cases.
With 64-bit words, it would often be necessary to make some compromises, such as leaving 4 bits unused in a word when dealing with 6-bit bytes at the input and output. However, the LINK Computer can be equipped to edit out these gaps and to permit handling of bytes which are split between words. […]” - ^ Buchholz, Werner (1956-09-19). „2. Input-Output Byte Size” (PDF). Memory Word Length and Indexing. IBM. стр. 1. Stretch Memo No. 45. Архивирано из оригинала (PDF) 2017-04-04. г. Приступљено 2016-04-04. „[…] The maximum input-output byte size for serial operation will now be 8 bits, not counting any error detection and correction bits. Thus, the Exchange will operate on an 8-bit byte basis, and any input-output units with less than 8 bits per byte will leave the remaining bits blank. The resultant gaps can be edited out later by programming […]”
- ^ Raymond, Eric Steven (2017) [2003]. „byte definition”. Архивирано из оригинала 2017-04-03. г. Приступљено 2017-04-03.
- ^ Bemer, Robert William (2000-08-08). „Why is a byte 8 bits? Or is it?”. Computer History Vignettes. Архивирано из оригинала 2017-04-03. г. Приступљено 2017-04-03. „[…] I came to work for IBM, and saw all the confusion caused by the 64-character limitation. Especially when we started to think about word processing, which would require both upper and lower case. […] I even made a proposal (in view of STRETCH, the very first computer I know of with an 8-bit byte) that would extend the number of punch card character codes to 256 […].”
- ^ Blaauw, Gerrit Anne; Brooks, Jr., Frederick Phillips; Buchholz, Werner (јун 1959). „Processing Data in Bits and Pieces”. IRE Transactions on Electronic Computers: 121.
Литература
уреди- Programming with the PDP-10 Instruction Set (PDF). PDP-10 System Reference Manual. 1. Digital Equipment Corporation (DEC). август 1969. Архивирано (PDF) из оригинала 2017-04-05. г. Приступљено 2017-04-05.
- Ashley Taylor. “Bits and Bytes.” Stanford. https://web.stanford.edu/class/cs101/bits-bytes.html
- „Timeline of the IBM Stretch/Harvest era (1956–1961)”. Computer History Museum. јун 1956. Архивирано из оригинала 2016-04-29. г. Приступљено 2017-04-03. „1956 Summer: Gerrit Blaauw, Fred Brooks, Werner Buchholz, John Cocke and Jim Pomerene join the Stretch team. Lloyd Hunter provides transistor leadership.”