THE BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму

Розрядність двійкового коду, Перетворення інформації з безперервної форми в дискретну, Універсальність двійкового кодування, Рівномірні і нерівномірні коди, Інформатика 7 клас Босова, Інформатика 7 клас

1.5.1. Перетворення інформації з безперервної форми в дискретну
Для вирішення своїх завдань людині часто доводиться перетворювати наявну інформацію з однієї форми подання в іншу. Наприклад, при читанні вголос відбувається перетворення інформації з дискретної (текстової) форми в безперервну (звук). Під час диктанту на уроці російської мови, навпаки, відбувається перетворення інформації з безперервної форми (голос вчителя) в дискретну (записи учнів).
Інформація, представлена ​​в дискретної формі, значно простіше для передачі, зберігання або автоматичної обробки. Тому в комп'ютерній техніцівелика увага приділяється методам перетворення інформації з безперервної форми в дискретну.
Дискретизація інформації - процес перетворення інформації з безперервної форми подання в дискретну.
Розглянемо суть процесу дискретизації інформації на прикладі.
На метеорологічних станціях є самописні прилади для безперервного запису атмосферного тиску. Результатом їх роботи є барограмі - криві, що показують, як змінювалося тиск протягом тривалих проміжків часу. Одна з таких кривих, накреслені приладом протягом семи годин проведення спостережень, показана на рис. 1.9.

На підставі отриманої інформації можна побудувати таблицю, яка містить показання приладу на початку вимірювань і на кінець кожної години спостережень (рис. 1.10).

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

Ланцюжки з трьох довічних символів виходять доповненням двухразрядного двійкових кодів справа символом 0 або 1. В результаті кодових комбінацій з трьох довічних символів виходить 8 - удвічі більше, ніж з двох довічних символів:
Відповідно, четирёхразрядйий двійковий дозволяє отримати 16 кодових комбінацій, пятіразрядний - 32, шестіразрядний - 64 і т. Д. Довжину двійковій ланцюжка - кількість символів в двійковому коді - називають розрядністю двійкового коду.
Зверніть увагу, що:
4 = 2 * 2,
8 = 2 * 2 * 2,
16 = 2 * 2 * 2 * 2,
32 = 2 * 2 * 2 * 2 * 2 і т. Д.
Тут кількість кодових комбінацій є твір деякої кількості однакових множників, рівного розрядності двійкового коду.
Якщо кількість кодових комбінацій позначити буквою N, а розрядність двійкового коду - буквою i, то виявлена ​​закономірність у загальному вигляді буде записана так:
N = 2 * 2 * ... * 2.
i множників
У математиці такі твори записують у вигляді:
N = 2 i.
Запис 2 i читають так: «2 в i-го ступеня».

Завдання. Вождь племені Мульти доручив своєму міністрові розробити двійковий і перевести в нього всю важливу інформацію. Двійковий який розрядності потрібно, якщо алфавіт, який використовується плем'ям Мульти, містить 16 символів? Випишіть всі кодові комбінації.
Рішення. Так як алфавіт племені Мульти складається з 16 символів, то і кодових комбінацій їм потрібно 16. У цьому випадку довжина (розрядність) двійкового коду визначається зі співвідношення: 16 = 2 i. Звідси i = 4.
Щоб виписати всі кодові комбінації з чотирьох 0 і 1, скористаємося схемою на рис. 1.13 0000, 0001 0010, 0011, 0100, 0101, 0110,0111,1000,1001,1010,1011,1100,1101,1110,1111.

1.5.3. Універсальність двійкового кодування
На початку цього параграфа ви дізналися, що, представлена ​​в безперервній формі, може бути виражена за допомогою символів деякого природного або формальної мови. У свою чергу, символи довільного алфавіту можуть бути перетворені в двійковий. Таким чином, за допомогою двійкового коду може бути представлена ​​будь-яка на природних і формальних мовах, а також зображення та звуки (рис. 1.14). Це і означає універсальність двійкового кодування.
Двійкові коди широко використовуються в комп'ютерній техніці, вимагаючи тільки двох станів електронної схеми - «включено» (це відповідає цифрі 1) і «вимкнено» (це відповідає цифрі 0).
Простота технічної реалізації - головна перевага двійкового кодування. Недолік двійкового кодування - велика довжина одержуваного коду.

1.5.4. Рівномірні і нерівномірні коди
Розрізняють рівномірні і нерівномірні коди. Рівномірні коди в кодових комбінаціях містять однакове число символів, нерівномірні - різний.
Вище ми розглянули рівномірні двійкові коди.
Прикладом нерівномірного коду може служити азбука Морзе, в якій для кожної букви і цифри визначено послідовність коротких і довгих сигналів. Так, букві Е відповідає короткий сигнал ( «точка»), а букві Ш - чотири довгих сигналу (чотири «тире»). Нерівномірний дозволяє підвищити швидкість передачі повідомлень за рахунок того, що найбільш часто зустрічаються в переданої інформації символи мають найкоротші кодові комбінації.

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

Викладемо тут спосіб побудови коду, який задовольняє поставленому умові; цей спосіб відомий під назвою «коду Шеннона - Фено». Ідея його полягає в тому, що кодуються символи (букви або комбінації букв) поділяються на дві приблизно рівноімовірні групи: для першої групи символів на першому місці комбінації ставиться 0 (перший знак двійкового числа, який зображує символ); для другої групи - 1. Далі кожна група знову ділиться на дві приблизно рівноімовірні підгрупи; для символів першої підгрупи на другому місці ставиться нуль; для другої підгрупи - одиниця і т. д.

Продемонструємо принцип побудови коду Шеннона - Фено на матеріалі російського алфавіту (табл. 18.8.1). Відрахуємо перші шість букв (від «-» до «т»); підсумовуючи їх ймовірності (частоти), отримаємо 0,498; на всі інші літери (від «н» до «сф») доведеться приблизно така ж ймовірність 0,502. Перші шість букв (від «-» до «т») матимуть на першому місці двійковий знак 0. Решта букви (від «н» до «ф») матимуть на першому місці одиницю. Далі знову розділимо першу групу на дві приблизно рівноімовірні підгрупи: від «-» до «о» і від «е» до «т»; для всіх букв першої підгрупи на другому місці поставимо нуль, а другий підгрупи "- одиницю. Процес будемо продовжувати до тих пір, поки в кожному підрозділі не залишиться рівно одна буква, яка і буде закодована певним двійковим числом. Механізм побудови коду показаний на таблиці 18.8 .2, а сам код наведено в таблиці 18.8.3.

Таблиця 18.8.2.

двійкові знаки

Таблиця 18.8.3

За допомогою таблиці 18.8.3 можна закодувати і декодувати будь-яке повідомлення.

У вигляді прикладу запишемо двійковим кодом фразу: «теорія інформації»

01110100001101000110110110000

0110100011111111100110100

1100001011111110101100110

Зауважимо, що тут немає необхідності відокремлювати один від одного літери спеціальним знаком, так як і без цього декодування виконується однозначно. У цьому можна переконатися, декодуючи за допомогою таблиці 18.8.2 наступну фразу:

10011100110011001001111010000

1011100111001001101010000110101

010110000110110110

( «Спосіб кодування»).

Однак необхідно відзначити, що будь-яка помилка при кодуванні (випадкове перепутиваніе знаків 0 і 1) при такому коді згубна, оскільки декодування всього наступного за помилкою тексту стає неможливим. Тому даний принцип кодування може бути рекомендований тільки в разі, коли помилки при кодуванні і передачі повідомлення практично виключені.

Виникає природне запитання: а чи є складений нами код при відсутності помилок дійсно оптимальним? Для того щоб відповісти на це питання, знайдемо середню інформацію, що припадає на один елементарний символ (0 або 1), і порівняємо її з максимально можливою інформацією, яка дорівнює одній двійковій одиниці. Для цього знайдемо спочатку середню інформацію, що міститься в одній букві переданого тексту, т. Е. Ентропію на одну букву:

,

де - ймовірність того, що буква прийме певний стан ( «-», про, е, а, ..., ф).

З табл. 18.8.1 маємо

(Дв. Одиниць на букву тексту).

По таблиці 18.8.2 визначаємо середнє число елементарних символів на букву

Ділячи ентропію на, отримуємо інформацію на один елементарний символ

(Дв. Од.).

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

Зауважимо, що в разі кодування просто довічних номерів букв ми мали б зображення кожної букви п'ятьма двійковими знаками і інформація на один символ була б

(Дв. Од.),

т. е. помітно менше, ніж при оптимальному буквеному кодуванні.

Однак слід зауважити, що кодування «по буквах» взагалі не є економічним. Справа в тому, що між сусідніми буквами будь-якого осмисленого тексту завжди є залежність. Наприклад, після голосної букви в російській мові не може стояти "ь" або "ь"; після шиплячих не можуть стояти «я» або «ю»; після кількох приголосних поспіль збільшується ймовірність гласною і т. д.

Ми знаємо, що при об'єднанні залежних систем сумарна ентропія менше суми ентропій окремих систем; отже, інформація, передана відрізком зв'язного тексту, завжди менше, ніж інформація на один символ, помножена на число символів. З урахуванням цієї обставини більш економний код можна побудувати, якщо кодувати не кожного букву окремо, а цілі «блоки» з букв. Наприклад, в російській тексті має сенс кодувати цілком деякі часто зустрічаються комбінації букв, як «ться», «ає», «ня» і т. П. Кодованих блоки розташовуються в порядку убування частот, як букви в табл. 18.8.1, а двійкове кодування здійснюється за тим же принципом.

У ряді випадків виявляється розумним кодувати навіть не блоки з букв, а цілі осмислені шматки тексту. Наприклад, для розвантаження телеграфу в передсвяткові дні доцільно кодувати умовними номерами цілі стандартні тексти, на кшталт:

«Вітаю новим роком бажаю здоров'я успіхів роботі».

Не зупиняючись спеціально на методах кодування блоками, обмежимося тим, що сформулюємо відноситься сюди теорему Шеннона.

Нехай є джерело інформації і приймач, пов'язані каналом зв'язку (рис. 18.8.1).

Відома продуктивність джерела інформації, т. Е. Середня кількість двійкових одиниць інформації, що надходить від джерела в одиницю часу (чисельно воно дорівнює середній ентропії повідомлення, виробленого джерел в одиницю часу). Нехай, крім того, відома пропускна спроможністьканалу, т. е. максимальну кількість інформації (наприклад, довічних знаків 0 або 1), яке здатний передати канал в ту ж одиницю часу. Виникає питання: якою має бути пропускна здатність каналу, щоб він «справлявся» зі своїм завданням, т. Е. Щоб інформація від джерела до приймача надходила без затримки?

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

1-я теорема Шеннона

Якщо пропускна здатність каналу зв'язку більше ентропії джерела інформації в одиницю часу

то завжди можна закодувати досить довге повідомлення так, щоб воно передавалося каналом зв'язку без затримки. Якщо ж, навпаки,

то передача інформації без затримок неможлива.


Аріабхата
кирилична
Грецька грузинська
ефіопська
Єврейська
Акшара-санкхья інші Вавилонська
Єгипетська
етруська
Римська
Дунайська аттична
стос
Майяська
Егейська
символи КППУ позиційні , , , , , , , , , , Нега-позиційна симетрична змішані системи Фібоначчієва непозиційної Одинична (унарна)

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

Двійковий запис чисел

У двійковій системі числення числа записуються за допомогою двох символів ( 0 і 1 ). Щоб не плутати, в якій системі числення записано число, його постачають покажчиком справа внизу. Наприклад, число в десятковій системі 5 10 , В двійковій 101 2 . Іноді двійковечисло позначають префіксом 0bабо символом & (Амперсанд), наприклад 0b101або відповідно &101 .

У двійковій системі числення (як і в інших системах числення, крім десяткового) знаки читаються по одному. Наприклад, число 101 2 вимовляється «один нуль один».

Натуральні числа

Натуральне число, що записується в двійковій системі числення як (A n - 1 a n - 2 ... a 1 a 0) 2 (\ displaystyle (a_ (n-1) a_ (n-2) \ dots a_ (1) a_ (0)) _ (2)), має значення:

(An - 1 an - 2 ... a 1 a 0) 2 = Σ k = 0 n - 1 ak 2 k, (\ displaystyle (a_ (n-1) a_ (n-2) \ dots a_ (1) a_ ( 0)) _ (2) = \ sum _ (k = 0) ^ (n-1) a_ (k) 2 ^ (k),)

Негативні числа

Негативні двійкові числа позначаються так само як і десяткові: знаком «-» перед числом. А саме, негативне ціле число, що записується в двійковій системі числення (- a n - 1 a n - 2 ... a 1 a 0) 2 (\ displaystyle (-a_ (n-1) a_ (n-2) \ dots a_ (1) a_ (0)) _ (2)), Має величину:

(- a n - 1 a n - 2 ... a 1 a 0) 2 = - Σ k = 0 n - 1 a k 2 k. (\ Displaystyle (-a_ (n-1) a_ (n-2) \ dots a_ (1) a_ (0)) _ (2) = - \ sum _ (k = 0) ^ (n-1) a_ ( k) 2 ^ (k).)

додатковому коді.

Дробові числа

Дробове число, що записується в двійковій системі числення як (An - 1 an - 2 ... a 1 a 0, a - 1 a - 2 ... a - (m - 1) a - m) 2 (\ displaystyle (a_ (n-1) a_ (n-2) \ dots a_ (1) a_ (0), a _ (- 1) a _ (- 2) \ dots a _ (- (m-1)) a _ (- m)) _ (2)), Має величину:

(An - 1 an - 2 ... a 1 a 0, a - 1 a - 2 ... a - (m - 1) a - m) 2 = Σ k = - mn - 1 ak 2 k, (\ displaystyle (a_ ( n-1) a_ (n-2) \ dots a_ (1) a_ (0), a _ (- 1) a _ (- 2) \ dots a _ (- (m-1)) a _ (- m)) _ ( 2) = \ sum _ (k = -m) ^ (n-1) a_ (k) 2 ^ (k),)

Додавання, віднімання і множення двійкових чисел

Таблиця додавання

Приклад складання «стовпчиком» (десяткове вираження 14 10 + 5 10 = 19 10 в двійковому виглядівиглядає як 1110 2 + 101 2 = 10011 2):

Приклад множення "стовпчиком" (десяткове вираження 14 10 * 5 10 = 70 10 в двійковому вигляді виглядає як 1110 2 * 101 2 = 1000110 2):

Починаючи з цифри 1 всі цифри множаться на два. Точка, яка стоїть після 1, називається двійковій точкою.

Перетворення двійкових чисел в десяткові

Припустимо, дано двійкове число 110001 2 . Для перекладу в десяткове запишіть його як суму за розрядами наступним чином:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

Те ж саме трохи інакше:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Можна записати це в вигляді таблиці наступним чином:

512 256 128 64 32 16 8 4 2 1
1 1 0 0 0 1
+32 +16 +0 +0 +0 +1

Рухайтеся справа наліво. Під кожною двійковій одиницею напишіть її еквівалент в рядку нижче. Складіть отримані десяткові числа. Таким чином, двійкове число 110001 2 рівнозначно десятковому 49 10.

Перетворення дрібних двійкових чисел в десяткові

Потрібно перевести число 1011010,101 2 в десяткову систему. Запишемо це число в такий спосіб:

1 * 2 6 + 0 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 −1 + 0 * 2 −2 + 1 * 2 −3 = 90,625

Те ж саме трохи інакше:

1 * 64 + 0 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 0 * 1 + 1 * 0,5 + 0 * 0,25 + 1 * 0,125 = 90,625

Або по таблиці:

64 32 16 8 4 2 1 0.5 0.25 0.125
1 0 1 1 0 1 0 , 1 0 1
+64 +0 +16 +8 +0 +2 +0 +0.5 +0 +0.125

Перетворення методом Горнера

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

Наприклад, двійкове число 1011011 2 перекладається в десяткову систему так:

0*2 + 1 = 1
1*2 + 0 = 2
2*2 + 1 = 5
5*2 + 1 = 11
11*2 + 0 = 22
22*2 + 1 = 45
45*2 + 1 = 91

Тобто в десятковій системі це число буде записано як 91.

Переклад дробової частини чисел методом Горнера

Знаки взято з числа справа наліво і діляться на основу системи числення (2).

наприклад 0,1101 2

(0 + 1 )/2 = 0,5
(0,5 + 0 )/2 = 0,25
(0,25 + 1 )/2 = 0,625
(0,625 + 1 )/2 = 0,8125

Відповідь: 0,1101 2 = 0,8125 10

Перетворення десяткових чисел в двійкові

Припустимо, нам потрібно перевести число 19 в двійкове. Ви можете скористатися такою процедурою:

19/2 = 9 із залишком 1
9/2 = 4 c залишком 1
4/2 = 2 без залишку 0
2/2 = 1 без залишку 0
1/2 = 0 із залишком 1

Отже, ми ділимо кожне приватне на 2 і записуємо залишок в кінець двійковій запису. Продовжуємо розподіл до тих пір, поки в приватне не буде 0. Результат записуємо справа наліво. Тобто нижня цифра (1) буде найлівішій і т. Д. В результаті отримуємо число 19 в двійковій запису: 10011 .

Перетворення дрібних десяткових чисел в двійкові

Якщо у вихідному числі є ціла частина, то вона перетвориться окремо від дробу. Переклад дробового числа з десяткової системи числення в двійкову здійснюється за наступним алгоритмом:

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

Приклад: Потрібно перевести дробове десяткове число 206,116 в дробове двійкове число.

Переклад цілої частини дає 206 10 = 11001110 2 по раніше описаним алгоритмам. Дробову частину 0,116 множимо на підставу 2, заносячи цілі частини твору в розряди після коми шуканого дробового двійкового числа:

0,116 2 = 0 ,232
0,232 2 = 0 ,464
0,464 2 = 0 ,928
0,928 2 = 1 ,856
0,856 2 = 1 ,712
0,712 2 = 1 ,424
0,424 2 = 0 ,848
0,848 2 = 1 ,696
0,696 2 = 1 ,392
0,392 2 = 0 ,784
і т.д.

Таким чином 0,116 10 ≈ 0, 0001110110 2

Отримаємо: 206,116 10 ≈ +11001110,0001110110 2

застосування

У цифрових пристроях

Двійкова система використовується в цифрових пристроях, оскільки є найбільш простий і відповідає вимогам:

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

В обчислювальної технікишироко використовується запис негативних двійкових чисел в додатковому коді. Наприклад, число -5 10 може бути записано як -101 2 але в 32-бітному комп'ютері буде зберігатися як 2.

В англійській системі заходів

При вказівці лінійних розмірів в дюймах за традицією використовують двійкові дроби, а не десяткові, наприклад: 5¾ ", 7 15/16", 3 11/32 "і т. Д.

узагальнення

Двійкова система числення є комбінацією двійковій системи кодування і показовою вагової функції з повним правом рівним 2. Слід зазначити, що число може бути записано в двійковому коді, а система числення при цьому може бути не двійковій, а з іншою підставою. Приклад: двійковій-десяткове кодування, в якому десяткові цифри записуються в двійковому вигляді, а система числення - десяткова.

Історія

  • Повний набір з 8 триграм і 64 гексаграмм, аналог 3-бітних і 6-бітних чисел, був відомий в древньому Китаї в класичних текстах книги Змін. Порядок гексаграмм в книзі Змін, Розташованих відповідно до значень відповідних двійкових цифр (від 0 до 63), і метод їх отримання був розроблений китайським вченим і філософом Шао Юн в XI столітті. Однак немає доказів, що свідчать про те, що Шао Юн розумів правила двійковій арифметики, розташовуючи Двосимвольні кортежі в лексикографічному порядку.
  • Набори, що представляють собою комбінації двійкових цифр, використовувалися африканцями в традиційних ворожіннях (таких як ІФА) поряд із середньовічною Геомантія.
  • У 1854 році англійський математик Джордж Буль опублікував знакову роботу, що описує алгебраїчні системи стосовно до логіки, яка в даний час відома як Булева алгебра або алгебра логіки. Його логічного обчисленню судилося зіграти важливу роль в розробці сучасних цифрових електронних схем.
  • У 1937 році Клод Шеннон представив до захисту кандидатську дисертацію Символічний аналіз релейних і перемикачів схемв, в якій булева алгебра і двоичная арифметика були використані стосовно до електронних реле і перемикачів. На дисертації Шеннона по суті заснована вся сучасна цифрова техніка.
  • У листопаді 1937 року Джордж Штібіц, згодом працював в Bell Labs, створив на базі реле комп'ютер «Model K» (від англ. « K itchen », кухня, де проводилася збірка), який виконував двійкове додавання. В кінці 1938 року Bell Labs розгорнула дослідницьку програму на чолі зі Штібіцом. Створений під його керівництвом комп'ютер, завершений 8 січня 1940 року, вмів виконувати операції з комплексними числами. Під час демонстрації на конференції American Mathematical Society в Дартмутського коледжу 11 вересня 1940 року Штібіц продемонстрував можливість посилки команд віддаленого калькулятору комплексних чисел по телефонної лініїз використанням телетайпа. Це була перша спроба використання віддаленої обчислювальної машини за допомогою телефонної лінії. Серед учасників конференції, що були свідками демонстрації, були Джон фон Нейман, Джон мокли і Норберт Вінер, згодом писали про це в своїх мемуарах.

Див. також

Примітки

  1. Попова Ольга Володимирівна. Навчальний посібник з інформатики (Неопр.) .

Бінарний код є текст, інструкції процесора комп'ютера або інші дані з використанням будь-якої Двосимвольні системи. Найчастіше це система 0 і 1. призначає шаблон бінарних цифр (біт) кожному символу і інструкції. Наприклад, бінарна рядок з восьми біт може представляти будь-яке з 256 можливих значень і тому може генерувати безліч різних елементів. Відгуки про бінарному коді світового професійного співтовариства програмістів свідчать про те, що це основа професії і головний закон функціонування обчислювальних системі електронних пристроїв.

Розшифровка бінарного коду

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

Розшифровка бінарного коду: бітова рядок, що інтерпретується як бінарне число, може бути переведена в десяткове число. Наприклад, нижній регістр літери a, якщо він представлений бітовим рядком 01100001 (як і в стандартному коді ASCII), також може бути представлений як десяткове число 97. Переклад бінарного коду в текст являє собою ту ж процедуру, тільки в зворотному порядку.

Як це працює

З чого складається бінарний код? Код, який використовується в цифрових комп'ютерах, заснований на в якій є тільки два можливих стани: вкл. і викл., зазвичай позначаються нулем і одиницею. Якщо в десятковій системі, яка використовує 10 цифр, кожна позиція кратна 10 (100, 1000 і т. Д.), То в двійковій системі кожне цифрове положення кратно 2 (4, 8, 16 і т. Д.). Сигнал двійкового коду являє собою серію електричних імпульсів, які представляють числа, символи та операції, які необхідно виконати.

Пристрій, що називається годинами, посилає регулярні імпульси, а такі компоненти, як транзистори, включаються (1) або вимикаються (0), щоб передавати або блокувати імпульси. У двійковому коді кожне десяткове число (0-9) представлено набором з чотирьох двійкових цифр або бітів. Чотири основних арифметичних операції (додавання, віднімання, множення і ділення) можуть бути зведені до комбінаціям фундаментальних булевих алгебраїчних операцій над двійковими числами.

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

Відгуки про бінарному коді

Характер коду і даних є базовою частиною фундаментального світу ІТ. C цим інструментом працюють фахівці світового ІТ-«закулісся» - програмісти, чия спеціалізація прихована від уваги рядового користувача. Відгуки про бінарному коді від розробників свідчать про те, що ця область вимагає глибокого вивчення математичних основі великий практики в сфері матаналізу і програмування.

Бінарний код - це найпростіша форма комп'ютерного коду або даних програмування. Він повністю представлений двійковій системою цифр. Згідно відгуками про бінарному коді, його часто асоціюється з машинним кодом, так як виконавчі набори можуть бути об'єднані для формування вихідного коду, Який інтерпретується комп'ютером або іншим апаратним забезпеченням. Почасти це вірно. використовує набори двійкових цифр для формування інструкцій.

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

двійкове число

В математиці і цифровій електроніці двійковечисло - це число, виражене в системі числення base-2 або двійковій цифровий системі, Яка використовує тільки два символи: 0 (нуль) і 1 (один).

Система чисел base-2 являє собою позиційну нотацію з радіусом 2. Кожна цифра згадується як біт. Завдяки своїй простий реалізації в цифрових електронних схемахз використанням логічних правил, двійкова система використовується багатьма сучасними комп'ютерами та електронними пристроями.

Історія

Сучасна бінарна система чисел як основа для двійкового коду була винайдена Готтфрід Лейбніцем в 1679 році і представлена ​​в його статті «Пояснення бінарної арифметики». Бінарні цифри були центральними для теології Лейбніца. Він вважав, що виконавчі числа символізують християнську ідею творчості ex nihilo, або творіння з нічого. Лейбніц намагався знайти систему, яка перетворює вербальні висловлювання логіки в чисто математичні дані.

Бінарні системи, що передують Лейбніца, також існували в стародавньому світі. Прикладом може служити китайська бінарна система І Цзин, де текст для передбачення заснований на подвійності інь і ян. В Азії та в Африці використовувалися щілинні барабани з бінарними тонами для кодування повідомлень. Індійський учений Пінгала (близько 5-го століття до н.е.) розробив бінарну систему для опису просодії в своєму творі «Чандашутрема».

Жителі острова Мангарева у Французькій Полінезії використовували гібридну бінарному-десяткову систему до 1450 року. В XI столітті вчений і філософ Шао Юн розробив метод організації гексаграмм, який відповідає послідовності від 0 до 63, як представлено в бінарному форматі, причому інь дорівнює 0, янь - 1. Порядок також є словниковим порядком в блоках елементів, вибраних з двоелементною набору.

Новий час

У 1605 році обговорив систему, в якій літери алфавіту можуть бути зведені до послідовностей бінарних цифр, які потім можуть бути закодовані як ледь помітні варіації шрифту в будь-якому випадковому тексті. Важливо відзначити, що саме Френсіс Бекон доповнив загальну теоріїбінарного кодування наглядом, що цей метод може бути застосований з будь-якими об'єктами.

Інший математик і філософ на ім'я Джордж Бул опублікував в 1847 році статтю під назвою «Математичний аналіз логіки», в якій описується алгебраїчна система логіки, відома сьогодні як булева алгебра. Система була заснована на бінарному підході, який складався з трьох основних операцій: AND, OR і NOT. Ця система не була введена в експлуатацію, поки аспірант з Массачусетського технологічного інституту на ім'я Клод Шеннон не помітив, що булева алгебра, яку він вивчив, була схожа на електричний ланцюг.

Шеннон написав дисертацію в 1937 році, в якій були зроблені важливі висновки. Теза Шеннона став відправною точкою для використання бінарного коду в практичних додатках, таких як комп'ютери та електричні схеми.

Інші форми двійкового коду

Бітова рядок не є єдиним типом двійкового коду. Двійкова система в цілому - це будь-яка система, яка допускає тільки два варіанти, таких як перемикач в електронній системіабо простий істинний або помилковий тест.

Брайль - це тип двійкового коду, який широко використовується сліпими людьми для читання і запису на дотик, названий по імені його творця Луї Брайля. Ця система складається з сіток по шість точок в кожної, по три на стовпець, в якому кожна точка має два стани: підняті або поглиблені. Різні комбінації точок здатні представляти всі букви, цифри і знаки пунктуації.

американський стандартний коддля обміну інформацією (ASCII) використовує 7-бітний двійковий код для представлення тексту та інших символів в комп'ютерах, обладнанні зв'язку та інших пристроях. Кожній букві або символу присвоюється номер від 0 до 127.

Двійковій-кодоване десяткове значення або BCD - це двійкове кодоване подання цілочисельних значень, яке використовує 4-бітний граф для кодування десяткових цифр. Чотири довічних біта можуть кодувати до 16 різних значень.

У номерах з кодуванням BCD тільки перші десять значень в кожному полубайте є коректними і кодують десяткові цифри з нулем, через дев'ять. Решта шість значень є некоректними і можуть викликати або машинне виняток, або Незазначені поведінку, в залежності від комп'ютерної реалізації арифметики BCD.

Арифметика BCD іноді краще числових форматів з плаваючою комою в комерційних і фінансових додатках, де складну поведінку округлення чисел є небажаним.

застосування

більшість сучасних комп'ютеріввикористовують програму бінарного коду для інструкцій і даних. Компакт-диски, DVD-диски і диски Blu-ray представляють звук і відео в двійковій формі. Телефонні дзвінкипереносяться в цифровому вигляді в мережах міжміського і мобільного телефонного зв'язкуз використанням імпульсно-кодової модуляції і в мережах передачі голосу по IP.

Давайте розберемося як же все таки перекладати тексти в цифровий код? До речі, на нашому сайті ви можете перевести будь-який текст в десятковий, шістнадцятковий, двійковий код скориставшись Калькулятором кодів онлайн.

Кодування тексту.

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

Необхідний багаж знань. Безліч символів, за допомогою яких записую текст, називається алфавітом.

Число взятих в алфавіті символів, представляє його потужність.

Кількість інформації можна визначити за формулою: N = 2b

  • N - та сама потужність (безліч символів),
  • b - Біт (вага взятого символу).

Алфавіт, в якому буде 256 може вмістити в себе практично всі потрібні символи. Такі алфавіти називають досить.

Якщо взяти алфавіт потужністю 256, і мати на увазі що 256 = 28

  • 8 біт завжди називають 1 байт:
  • 1 байт = 8 біт.

Якщо перевести кожен символ в двійковий код, то цей код комп'ютерного тексту буде займати 1 байт.

Як текстова інформація може виглядати в пам'яті комп'ютера?

Будь-який текст набирають на клавіатурі, на клавішах клавіатури, ми бачимо звичні для нас знаки (цифри, букви і т.д.). В оперативну пам'ять комп'ютера вони потрапляють тільки у вигляді двійкового коду. Двійковий код кожного символу, виглядає восьмизначним числом, наприклад 00111111.

Оскільки, байт - це найменша адресується частка пам'яті, і пам'ять звернена до кожного символу окремо - зручність такого кодування очевидно. Однак, 256 символів - це дуже зручне кількість для будь-якої символьної інформації.

Природно, постало питання: Який конкретно восьми розрядний кодналежить кожному символу? І як здійснити переклад тексту в цифровий код?

Цей процес умовний, і ми маємо право придумати різні способи для кодування символів. Кожен символ алфавіту має свій номер від 0 до 255. І кожному номеру присвоєно код від 00000000 до 11111111.

Таблиця для кодування - це «шпаргалка», в якій вказані символи алфавіту відповідно порядковому номеру. для різних типівЕОМ використовують різні таблиці для кодування.

ASCII (або Аски), стала міжнародним стандартом для персональних комп'ютерів. Таблиця має дві частини.

Перша половина для таблиці ASCII. (Саме перша половина, стала стандартом.)

Дотримання лексикографічного порядку, тобто, в таблиці літери (Малі та великі) вказані в строгому алфавітному порядку, а цифри по зростанню, називають принципом последовального кодування алфавіту.

Для російського алфавіту теж дотримуються принцип послідовного кодування.

Зараз, в наш час використовують цілих п'ять систем кодуваньросійського алфавіту (КОІ8-Р, Windows. MS-DOS, Macintosh і ISO). Через кількості систем кодувань і відсутності одного стандарту, дуже часто виникають непорозуміння з перенесенням російського тексту в комп'ютерний його вид.

Одним з перших стандартів для кодування російського алфавіта на персональних комп'ютерахвважають КОІ8 ( "Код обміну інформацією, 8-бітний"). Дана кодування використовувалася в середині сімдесятих років на серії комп'ютерів ЄС ЕОМ, а з середини вісімдесятих, її починають використовувати в перших перекладених російською мовою операційних системах UNIX.

З початку дев'яностих років, так званого, часу, коли панувала операційна система MS DOS, з'являється система кодування CP866 ( "CP" означає "Code Page", "кодова сторінка").

Гігант комп'ютерних фірм APPLE, зі своєю інноваційною системою, під упраління якої вони і працювали (Mac OS), починають використовувати власну систему для кодування алфавіту МАС.

Міжнародна організація стандартизації (International Standards Organization, ISO) призначає стандартом для російської мови ще одну систему для кодування алфавіту, Яка називається ISO 8859-5.

А найпоширеніша, в наші дні, система для кодування алфавіту, придумана в Microsoft Windows, І називається CP1251.

З другої половини дев'яностих років, була вирішена проблема стандарту перекладу тексту в цифровий код для російської мови і не тільки, введенням в стандарт системи, під назвою Unicode. Вона представлена ​​шестнадцатіразрядного кодуванням, це означає, що на кожен символ відводиться рівно по два байта оперативної пам'яті. Само собою, при такій кодуванні, витрати пам'яті збільшені в два рази. Однак, така кодова система дозволяє переводити в електронний коддо 65536 символів.

Специфіка стандартної системи Unicode, є включенням в себе абсолютно будь-якого алфавіту, будь він існуючим, вимерлим, вигаданим. В кінцевому рахунку, абсолютно будь-який алфавіт, в добавок до цього, система Unicode, включає в себе безліч математичних, хімічних, музичних і загальних символів.

Давайте за допомогою таблиці ASCII подивимося, як може виглядати слово в пам'яті вашого комп'ютера.

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

Безліч символів, за допомогою яких записується текст, називається алфавітом.

Число символів в алфавіті - це його потужність.

Формула визначення кількості інформації: N = 2 b,

де N - потужність алфавіту (кількість символів),

b - кількість біт (інформаційний вагу символу).

В алфавіт потужністю 256 символів можна помістити практично всі необхідні символи. Такий алфавіт називається достатнім.

Оскільки 256 = 2 8, то вага 1 символу - 8 біт.

Одиниці виміру 8 біт присвоїли назву 1 байт:

1 байт = 8 біт.

Двійковий код кожного символу в комп'ютерному тексті займає 1 байт пам'яті.

Яким же чином текстова інформація представлена ​​в пам'яті комп'ютера?

Зручність побайтового кодування символів очевидно, оскільки байт - найменша адресується частина пам'яті і, отже, процесор може звернутися до кожного символу окремо, виконуючи обробку тексту. З іншого боку, 256 символів - це цілком достатня кількість для подання найрізноманітнішої символьної інформації.

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

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

Всі символи комп'ютерного алфавіту пронумеровані від 0 до 255. Кожному номеру відповідає восьмизарядний двійкового коду від 00000000 до 11111111. Цей код просто порядковий номер символу в двійковій системі числення.

Таблиця, в якій всім символам комп'ютерного алфавіту поставлені у відповідність порядкові номери, називається таблицею кодування.

для різних типівЕОМ використовуються різні таблиці кодування.

Міжнародним стандартом для ПК стала таблиця ASCII(Читається аски) (Американський стандартний код для інформаційного обміну).

Таблиця кодів ASCII ділиться на дві частини.

Міжнародним стандартом є лише перша половина таблиці, тобто символи з номерами від 0 (00000000), до 127 (01111111).

Структура таблиці кодування ASCII

Порядковий номер

код

символ

0 - 31

00000000 - 00011111

Символи з номерами від 0 до 31 прийнято називати керуючими.
Їх функція - управління процесом виведення тексту на екран або друк, подача звукового сигналу, Розмітка тексту і т.п.

32 - 127

00100000 - 01111111

Стандартна частина таблиці (англійська). Сюди входять малі та великі літери латинського алфавіту, десяткові цифри, розділові знаки, всілякі дужки, комерційні та інші символи.
Символ 32 - пробіл, тобто порожня позиція в тексті.
Всі інші відображаються певними знаками.

128 - 255

10000000 - 11111111

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

Перша половина таблиці кодів ASCII


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

Для букв російського алфавіту також дотримується принцип послідовного кодування.

Друга половина таблиці кодів ASCII


На жаль, в даний час існують п'ять різних кодувань кирилиці (КОІ8-Р, Windows. MS-DOS, Macintosh і ISO). Через це часто виникають проблеми з перенесенням російського тексту з одного комп'ютера на інший, з однієї програмної системив іншу.

Хронологічно одним з перших стандартів кодування російських букв на комп'ютерах був КОІ8 ( "Код обміну інформацією, 8-бітний"). Це кодування застосовувалася ще в 70-ті роки на комп'ютерах серії ЄС ЕОМ, а з середини 80-х стала використовуватися в перших русифікованих версіях операційної системи UNIX.

Від початку 90-х років, часу панування операційної системи MS DOS, залишається кодування CP866 ( "CP" означає "Code Page", "кодова сторінка").

Комп'ютери фірми Apple, що працюють під управлінням операційної системи Mac OS, використовують свою власну систему кодування Mac.

Крім того, Міжнародна організація по стандартизації (International Standards Organization, ISO) затвердила в якості стандарту для російської мови ще одне кодування під назвою ISO 8859-5.

Найбільш поширеною в даний час є кодування Microsoft Windows, що позначається скороченням CP1251.

З кінця 90-х років проблема стандартизації символьного кодування вирішується введенням нового міжнародного стандарту, який називається Unicode. Це 16-розрядна кодування, тобто в ній на кожен символ відводиться 2 байти пам'яті. Звичайно, при цьому обсяг займаної пам'яті збільшується в 2 рази. Але зате така кодова таблиця допускає включення до 65536 символів. Повна специфікація стандарту Unicode включає в себе всі існуючі, вимерлі і штучно створені алфавіти світу, а також безліч математичних, музичних, хімічних та інших символів.

Спробуємо за допомогою таблиці ASCII уявити, як будуть виглядати слова в пам'яті комп'ютера.

Внутрішнє представлення слів в пам'яті комп'ютера

Іноді буває так, що текст, що складається з букв російського алфавіту, отриманий з іншого комп'ютера, неможливо прочитати - на екрані монітора видно якась "абракадабра". Це відбувається тому, що на комп'ютерах застосовується різна кодування символів російської мови.

THE BELL

Є ті, хто прочитали цю новину раніше вас.
Підпишіться, щоб отримувати статті свіжими.
Email
ім'я
Прізвище
Як ви хочете читати The Bell
без спаму