Подання чисел в комп`ютері. Подання цілих та дійсних чисел в пам`яті комп`ютера

Будь-якому, хто хоч раз замислювався в житті про те, щоб стати "айтишником" або системним адміністратором, та й просто пов`язати долю з обчислювальною технікою, знання про те, як відбувається уявлення чисел в пам`яті комп`ютера,

абсолютно необхідно. Адже саме на цьому ґрунтуються мови програмування низького рівня, такі як Assembler. Тому сьогодні ми розглянемо уявлення чисел в комп`ютері і їх розміщення в осередках пам`яті.
уявлення чисел в комп`ютері

Система зчислення

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

Щоб перевести звичні для нас десяткові числа до виду, зрозумілому комп`ютера, потрібно скористатися описаним нижче алгоритмом. Існують і спеціалізовані калькулятори.

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

Саме так і відбувається представлення чисел в комп`ютері. Будь-яке число записується в двійковій формі, а потім займає комірку пам`яті.

уявлення дійсних чисел в комп`ютері

пам`ять

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

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

Цілі

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

Почнемо ми з самого простого варіанту, яким є уявлення цілих чисел в комп`ютері. Пам`ять ПК відводить під цей процес до смішного мала кількість осередків - всього одну. Таким чином, максимум в одному слоті можуть бути значення від 0 до 11111111. Давайте переведемо максимальне число в звичну нам форму записи.
Х = 1 - 27 + 1 - 26 + 1 - 25 + 1 - 24 + 1 - 23 + 1 - 22 + 1 - 21 + 1 - 20 = 1 - 28 - 1 = 255.

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

уявлення чисел в пам`яті комп`ютера

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

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



Якщо цифра негативна, то записується "1", Якщо позитивна, то "0". Для простоти запам`ятовування можна провести таку аналогію: якщо знак є, то ставимо 1, якщо його немає, то нічого (0).

Решта 15 біт інформації відводяться під число. Аналогічно попередньому випадку, в них можна помістити максимум п`ятнадцять одиниць. Варто зазначити, що запис негативних і позитивних чисел істотно відрізняється друг від друга.

Для того щоб розмістити в 2 осередках пам`яті значення більше нуля або дорівнює йому, використовується так званий прямий код. Дана операція проводиться так само, як і було описано, а максимальне А = 32766, якщо використовувати десяткову систему числення. Відразу хочеться відзначити, що в даному випадку "0" відноситься до позитивних.

уявлення цілих чисел в комп`ютері

приклади

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

Щоб його отримати, машина виробляє ряд допоміжних операцій.

  1. Спочатку записується модуль негативного числа в двійковому численні. Тобто комп`ютер запам`ятовує аналогічне, але позитивне значення.
  2. Потім проводиться інвертування кожного біта пам`яті. Для цього всі одиниці замінюються нулями і навпаки.
  3. додаємо "1" до отриманого результату. Це і буде додатковий код.

Наведемо наочний приклад. Нехай у нас є число Х = - 131. Спочатку отримуємо його модуль | Х | = 131. Потім переводимо в двійкову систему і записуємо в 16 осередків. Отримаємо Х = 0000000010000011. Після інвертування Х = 1111111101111100. Додаємо до нього "1" і отримуємо зворотний код Х = 1111111101111101. Для запису в 16-бітну осередок пам`яті мінімальним числом є Х = - (215) = - 32767.

довгі цілі



Як бачите, уявлення дійсних чисел в комп`ютері не так вже й складно. Однак розглянутого діапазону може не вистачати для більшості операцій. Тому, для того щоб розмістити великі числа, комп`ютер виділяє з пам`яті 4 осередки, або 32 біта.

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

Хмах= 2 147 483 647.

Хmin= - 2 147 483 648.

уявлення цілих чисел в пам`яті комп`ютера

Даних значень в більшості випадків досить для того, щоб записувати і проводити операції з даними.

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

плаваюча кома

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

Будь-яке число може бути представлено в наступній формі Х = m * рп. Де m - це мантиса числа, р - основа системи числення і п - порядок числа.

Для стандартизації записи чисел з плаваючою комою використовується така умова, згідно з яким модуль мантиси повинен бути більше або дорівнює 1 / п і менше 1.

Нехай нам дано число 666,66. Наведемо його до експоненційної формі. Вийде Х = 0,66666 * 103. Р = 10 і п = 3.

На зберігання значень з плаваючою комою зазвичай виділяється 4 або 8 байт (32 або 64 біта). У першому випадку це називається числом звичайної точності, а в другому - подвійний точності.

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

Максимальне значення п = 11111112 = 12710. Виходячи з нього, ми можемо отримати максимальний розмір числа, яке може зберігатися в пам`яті комп`ютера. Х = 2127. Тепер ми можемо обчислити максимально можливу мантиссу. Вона буде дорівнює 223 - 1 &ge- 223 = 2(10 - 2,3) &ge- +10002,3 = 10(3 - 2,3) &ge- 107. У підсумку, ми отримали наближене значення.

Якщо тепер ми об`єднаємо обидва розрахунки, то отримаємо значення, яке може бути записано без втрат в 4 байта пам`яті. Воно дорівнюватиме Х = 1,701411 * 1038. Інші цифри були відкинуті, оскільки саме таку точність дозволяє мати даний спосіб запису.

уявлення цілих і дійсних чисел в комп`ютері

подвійна точність

Оскільки всі обчислення були розписані і пояснені в попередньому пункті, тут ми розповімо все дуже коротко. Для чисел з подвійною точністю зазвичай виділяється 11 розрядів для порядку і його знака, а також 53 розряду для мантиси.

П = 11111111112 = 102310.

М = 252 -1 = 2(10 * 5.2) = 10005.2 = 1015.6. Округляємо в більшу сторону і отримуємо максимальне число Х = 21023 з точністю до "м".

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


Увага, тільки СЬОГОДНІ!


Поділися, будь ласка статтю
всього голосів: 108
Увага, тільки СЬОГОДНІ!