Біт




Основні одиниці
вимірювання інформації[en]

біт (двійкова)
нат (основа e)
гартлі (десяткова)
кубіт (квантова)






Тумблер, фізичний еквівалент одного біта


Біт (англ. bit, переклад: шматочок) — мінімальна одиниця кількості інформації, яка дорівнює одному двійковому розряду, який може бути рівним одному з двох значень/станів (0 або 1), застосовуваних для представлення даних у двійковій системі числення. Англійською двійковий знак звучить як binary digit. Скорочено виходить bit (біт). Число бітів пам'яті ЕОМ визначається максимальною кількістю двійкових цифр, які в ній вміщуються. Число бітів даних — це кількість двійкових розрядів, в яких вони записані.


Біт може бути інтерпретований як логічне значення (істина/хиба), знак числа (+/-), значення тригеру (ввімкнено/вимкнено), тощо. Яке саме значення інтерпретувати як 1, а яке — як 0 — результат домовленості, й іноді навіть в одній програмі деяке значення може інтерпретуватися по різному.


У теорії інформації бітом називається змінна, що може з однаковою ймовірністю приймати значення 1 або 0, або кількість інформації, що отримується, коли значення такої змінної стає відомим.[1]


У квантових комп'ютерах, квантова система, що може існувати як суперпозиція звичайних бітів, називається кубітом.




Зміст





  • 1 Історія


  • 2 Фізична реалізація


  • 3 Теорія інформації


  • 4 Біти у програмуванні

    • 4.1 Бітові масиви


    • 4.2 Бітові операції



  • 5 Спеціальні біти

    • 5.1 Службові біти


    • 5.2 Біти парності


    • 5.3 Стартовий та стоповий біт



  • 6 Кратні та некратні одиниці


  • 7 Зв'язок з іншими фізичними величинами


  • 8 Примітки


  • 9 Джерела




Історія |




Кожна з восьми триграмм може бути описана як рядок з трьох бітів


У роботі Лейбніца «Explanation of binary arithmetic» 1703 року була представлена двійкова система обчислення і правила роботи з нею.[2] У цій роботі Лейбніц посилався на китайського філософа Фу-сі, що за легендою, винайшов триграмми.


Кодування даних з допомогою бітів вперше було використане у ткацьких верстатах Бушона і Фалькона у 1720-х роках і було реалізовано у формі картонок з отворами.[3][4]. В подальшому ця технологія розвивалася і була адаптована не тільки для верстатів, але і для інших пристроїв. Іх використовували у своїх механізмах Жаккар, Корсаков, Беббідж, Голлеріт, і, врешті решт, такі картонки стали дуже вживаними у формі перфокарт, що використовувалися до 80-х років 20-го століття. Також розвитком ідеї перфокарти стали перфострічки що використовувалися для запису великої кількості інформації.


Всі ці носії даних концептуально мають схожу будову — це масив бітів (позицій на папері), кожен з яких заповнюється окремо, і може приймати значення 1 або 0 (проколото/не проколото).


Сучасними нащадками цих носіїв даних можна вважати штрих-коди і QR-коди.


Іншим способом використання двійкового кодування була азбука Морзе, запропонована Семюелем Морзе 1838 року, де символам були поставлені у відповідність набори різної довжини, які складалися з точок і тире.


Перші програмовані комп'ютери, розроблені Конрадом Цузе у період з 1934 по 1943 рік (це обчислювальні машини Z1, Z2, Z3 і Z4), зберігали і оброблювали дані саме в бітовому вигляді. Сам Цузе називав біт «так/ні статусом».[5][6]


Термін «біт» був запропонований Клодом Шенноном у 1948 році в роботі «Математична теорія зв'язку». Сам Шеннон приписував цей термін Джону Тьюкі, який придумав його під час роботи у Bell Labs, 9 січня 1947 року, скоротивши словосполучення «binary digit» до простого «bit». Цікаво, що ще у 1936 році Венівар Буш писав про шматочки (Шаблон:Lnag-en) інформації, що можуть розміщуватися на перфокарті.[7].


Проте, комп'ютери до 50-х років продовжували використовувати складні пристрої (декатрони), для зберігання і оперування інформацією у десятковому вигляді[8], і тільки після появи транзисторів двійкова система закріпилася як стандарт де-факто.



Фізична реалізація |


Зберігання інформації
У сучасних електронних носіях інформації вона, фактично, завжди зберігається у бітовій формі, хоча, нерідко, передається більшими блоками. Практично, один біт може бути представлений різними способами: перемикачем або тригер, двома різними рівнями напруги на електричному колі, двома різними рівнями освітреності, різними напрямками магнітних моментів (у тому числі, спінів) або поляризації, зарядом на конденсаторі й багатьма іншими.


З точки зору надійності, найчастіше використовуються два типа реалізації біта — однофазний і двофазний. Однофазна реалізація передбачає 1 вихід, наявність на якому сигнала інтерпретується як 1. Двохфазна реалізація має два виходи — при цьому, одиницею вважається активність на першому виході, і її відсутність на другому, а нулем — навпаки, активність лише на другому. При цьому, якщо обидва виходи є активними або неактивними, то сигнал вважається помилковим. Такі реалізації дорожчі, але значно надійніші.


Передача інформації


Докладніше: Кодування (телекомунікації)

Для передачі даних дворівневі системи є менш зручними, бо при наявності хоча б невеликої десинхронізації передавача і приймача система може збитися, коли передається достатньо довгий послідовний ряд одиниць або нулів. Наприклад, ряд з 50 нулів може бути прийнятий за ряд з 51 нуля, якщо електромагнітні завади, що діють на лінію, призводять до деформації сигналу більш ніж на 2 %[9], тому для них використовують складніше кодування, наприклад, одиниця виражається сигналом деякої форми, а нуль — сигналом іншої форми. Такі коди називають кодами з самосинхронізацією. Прикладом такого кодування є манчестерський код.



Теорія інформації |


У теорії інформації, кількість інформації тісно пов'язана з поняттям інформаційної ентропії.


Загалом можна сказати, що якщо в нас є деяка система, що може приймати різні значення 1, 2, …, n, з імовірностями p1,p2,...,pndisplaystyle p_1,p_2,...,p_n, то загальна кількість інформації, яку можна передати за допомогою такої системи, дорівнює



−∑i=1np(i)log2⁡p(i).displaystyle -sum _i=1^np(i)log _2p(i). біт.

У випадку, якщо всі ймовірності є рівними (наприклад, для алфавіту, всі літери в повідомленнях, написаних на якому, зустрічаються з рівною частотою), для обчислення може використовуватися Формула Гартлі:


I=log2⁡N=log2mn=nlog2⁡m,displaystyle I=log _2N=log_2m^n=nlog _2m,

де N — кількість усіх можливих повідомлень, m — кількість літер алфавіту, а n — довжина повідомленя.
Наприклад, у ДНК, алфавіт якого складається з чотирьох літер-нуклеотидів, кожна з них несе у собі log2 4 = 2 біти інформації.[10]


Іноді для вимірювання інформаційної ентропії замість біта використовується еквівалентна йому одиниця шеннон.



Біти у програмуванні |



Бітові масиви |


Докладніше: Бітова мапа

Хоча зазвичай інформація у пам'яті комп'ютера зберігається у вигляді байтів, у деяких випадках зручніше зберігати її безпосередньо у вигляді бітового масива. Такі масиви використовуються у файлових системах, для відслідковування зайнятих кластерів пам'яті, у фільтрі Блума, у деяких реалізаціях або для максимально компактної архівації даних, усюди, де це важливо.
Для деяких шахматних програм, в тому числі таких сильних як Houdini і Stockfish, для представлення шахівниці використовується спеціальна структура даних, що називається Bitboard (тобто, бітова дошка).
У мовах програмування, тип даних для збереження бітових масивів називається бітовим полем.



Бітові операції |


Докладніше: Бітові операції

У програмуванні бітовими називаються операції, що проводяться над ланцюжками бітів. Зазвичай це можуть бути логічні операції, або зсуви. У випадку логічних операцій, для двох масивів бітів однакової довжини (або одного масиву, якщо операція унарна, як «НЕ»), деяка операція застосовується до кожної послідовної пари бітів, і результат записується у відповідне поле масиву-відповіді. Наприклад:










A0011
B0101

АБО (OR)0111

І (AND)0001

Бітовий зсув — операція, при якій всі біти масиву зміщуються на одну позицію (ближче до початку або кінця масиву, в залежності від того, чи це зсув вліво або вправо), а біт, що стоїть з самого краю, або переміщується на інший край, якщо це циклічний зсув, або втрачається.


Арифметико-логічний пристрій процессора — найбільш низькорівневий апарат для обчислень, зазвичай окрім найпростіших арифметичних операцій вміє робити саме побітові операції.



Спеціальні біти |



Службові біти |


Іноді при передаванні або зберіганні інформації, до бітів, кодуючих дані додаються біти, що несуть інформацію про сам канал зв'язку або призначені для синхронізації даних. При передаванні в таких бітах може передаватися інформація щодо рівня інтерференції, потужності передавача, або інших умов, що не стосуються безпосередньо даних що передаються.[11] Такі біти називають службовими. Прикладом службових бітів, призначених для синхронізації, є описані нижче стартовий та стоповий біти. Пропускна здатність каналу, з урахуванням службової інформації вимірюється в бодах.



Біти парності |


Докладніше: Біт парності

Для перевірки цілісності даних, в кінець кожного байта даних може додаватись біт, що позначає, чи є кількість одиниць в бітовому записі числа парною. Таким чином, біт парності є простою реалізацією контрольної суми. Завдяки такому біту, якщо при передачі один біт буде пошкоджено або змінено, це буде одразу помічено. Більш просунутими варіантами, що використовують більшу кількість додаткових бітів є код Гемінга або Код Ріда-Соломона, що дозволяють не тільки помічати, а й виправляти поодинокі помилки.[12]



Стартовий та стоповий біт |


Стартовий та стоповий службові біти використовуються в асинхронному послідовному зв'язку для того, щоб система могла розуміти, де закінчується один байт і починається інший. Наприклад, якщо при відсутності даних сигнал в послідовному кабелі виглядає як ряд одиниць, то перед початком передавання власне даних передавач спершу передає один символ «0». Цей біт є для приймача сигналом, що з наступного біту починається передача даних, початок стартового біту також синхронізує внутрішні тактові генератори передавача і приймача, що зменшує вплив розсинхронізації[13].



Кратні та некратні одиниці |

























Префікси, введені Міжнародною електротехнічною комісією для круглих двійкових чисел
Префікс
Скорочення: -біт, -байт
Значення
кібіКібіт, КіБ210 = 1024
мебіМебіт, МіБ220 = 1 048 576
гібіГібіт, ГіБ230 = 1 073 741 824
тебіТебіт, ТіБ240 = 1 099 511 627 776
пебіПебіт, ПіБ250 = 1 125 899 906 842 624
ексбіЕібіт, ЕіБ260 = 1 152 921 504 606 846 976

Існує плутанина, пов'язана з кратними приставками (кіло-, мега-, гіга- і т. д.), через те, що різні стандарти по різному встановлюють іхнє значення для одиниць вимірювання інформації.


У 1999 році Міжнародна електротехнічна комісія постановила розуміти ці приставки як десяткові, тобто 1 кілобіт = 1000 біт, а для одиниць, заснованих на ступенях двійки запропонувала нові назви — кібібіт, мебібіт, гібібіт і т. д. як вказано таблиці: Практично всі офіційні стандарти користуються цим визначенням, наприклад, максимальна пропускна здатність Ethernet специфікації 10BASE5 дорівнює 10*106 біт/с. Так само вказується пропускна здатність на старих модемах.


З іншого боку, стандарти JEDEC визначають приставки кіло-, мега- і більші, як ступені двійки — тобто 1 кілобіт є рівним 1024 бітам.
Через це деякі провайдери і програми використовують саме такий спосіб підрахунку.
Відносна різниця між цими двома підходами зростає для більших одиниць — вона дорівнює 2 % для кілобайту але вже 7 % для гігабайту.


Також варто зазначити, що, в будь якому з варіантів, біт — не скорочується, тобто, записати кілобіт як кб — не можна.


Зазвичай у бітах(в секунду) вимірюється швидкість передачі даних або бітрейт мультимедіа файлів (кількість біт, що використовуються для запису однієї секунди аудіо або відео), тоді як ємність пам'яті комп'ютера і розміри файлів частіше вимірюються у байтах (а також кіло-, мега- і гігабайтах).
Рідше може використовуватися нібл — половина байта, тобто 4 біти.


З іншого боку, якщо алфавіт, у вигляді якого представлена інформація, має більш ніж два символи, то її більш зручно вимірювати в інших величинах, що не кратні біту. Деякі з них мають свої назви — це тріт, що може приймати три значення, і децит — може мати десять значень (наприклад, одна цифра в десятковому записі числа, несе в собі один децит інформації).


Натуральною ж одиницею вимірювання інформації є нат, що є кількістю інформації, що отримується, коли відбувається подія, ймовірність якої 1/е.


Чисельно ці одиниці дорівнюють:


  • нат — ln2 ≈ 1,44… біт

  • тріт — log23 ≈ 1,58… біт

  • децит — log210 ≈ 3,32… біт

У комп'ютерах інформація зазвичай зберігається у вигляді машинних слів, розмір яких залежить від розрядності регістрів процессора і шини даних. Довжина машинного слова може коливатись від 4 до 64 бітів для різних систем і платформ, але для кожної конкретної машини «машинне слово» є сталою величиною. Для 32-бітних процесорів архітектури x86, машинним словом традиційно вважається 16-біт, хоча в реальності воно дорівнює 32 бітам.


Позначення


Згідно класифікатора системи позначень Державного комітету стандартизації, метрології і сертифікації України, біт позначається просто словом біт, тобто, не скорочується.[14] Кілобіт і мегабіт скорочуються до кбіт і Мбіт.


В англійській мові біт зазвичай теж не скорочується (рекомендовано стандартом IEC 80000-13:2008). Проте стандарт IEEE 1541—2002 рекомендує скорочувати його до b.



Зв'язок з іншими фізичними величинами |


Згідно принципу Ландауера, стирання одного біта інформації, незалежно від способу його зберігання, супроводжується виділенням 2,7×10−21Дж тепла.


Ліміт Бекенштейна визначає, яка максимальна кількість інформації може бути збережена у фіксованому об'ємі простору, і дорівнює 2,6×1043mR біт, де R — радіус сфери, що включає в себе систему, а m — масса системи. Цей ліміт чисельно дорівнює ентропії чорної діри відповідних розмірів.[15]


Ліміт Бремерманна визначає максимальну швидкість, з якою деяка система може вести обчислення. Він дорівнює c2/h ≈ 1,36 × 1050 біт/с на кілограм маси системи.[16]



Примітки |




  1. [1]


  2. [2]


  3. Ткацкий станок, прадедушка компьютеров


  4. Техника — молодёжи 1934-11, страница 53


  5. Детальний опис Z1(англ.)


  6. Детальний опис Z3


  7. Bush, Vannevar (1936). Instrumental analysis. Bulletin of the American Mathematical Society 42 (10): 649–669. doi:10.1090/S0002-9904-1936-06390-1. 


  8. [3]


  9. В. Олифер, Н. Олифер, Компьютерные сети, 4-е издание


  10. [4]


  11. [5]


  12. [6]


  13. Старт-бит, стоп-бит и бит метки : [рос.] // IBM Knowlege center.


  14. [7]


  15. [8]


  16. [9]



Джерела |


  • УРЕ

Popular posts from this blog

1928 у кіно

Захаров Федір Захарович

Ель Греко