Числа в пам'яті комп'ютера

Основні теми параграфа:

- уявлення цілих чисел;
- розмір осередку і діапазон значень чисел;
- особливості роботи комп'ютера з цілими числами;
- уявлення дійсних чисел;
- особливості роботи комп'ютера з речовими числами.

Будь-яка інформація в пам'яті комп'ютера представляється в двійковому вигляді: послідовністю нулів і одиниць. Історично першим типом даних, з якими стали працювати комп'ютери, були числа. Тепер це і числа, і тексти, і зображення, і звук. Робота з даними будь-якого типу в кінцевому підсумку зводиться до обробки двійкових чисел - чисел, записуваних за допомогою двох цифр - 0 і 1.

Тому сучасні комп'ютерні технології називають цифровими технологіями.

У комп'ютері розрізняються два типи числових величин: цілі числа і речові числа. Розрізняються способи їх подання в пам'яті комп'ютера.

Подання цілих чисел

Частина пам'яті, в якій зберігається одне число, будемо називати осередком. Мінімальний розмір осередку, в якій може зберігатися ціле число, - 8 бітів, або 1 байт. Одержимо уявлення десяткового числа 25 в такій комірці. Для цього потрібно перевести число в двійкову систему числення. Як це робиться, ви вже знаєте.

Тепер залишилося «вписати» його в Восьмирозрядних осередок (записати так зване внутрішнє подання числа). Робиться це так:

Число записується «притиснутим» до правого краю комірки (в молодших розрядах). Решта зліва розряди (старші) заповнюються нулями.

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

Чому він дорівнює в десятковій системі? Можна розписати це число в розгорнутій формі і обчислити вираз. Але можна вирішити задачу швидше. Якщо до молодшого розряду цього числа додати одиницю, то вийде число 10000000. У десятковій системі воно дорівнює 2 +7 = 128. Значить:

011111112 = 128 - 1 = 127.

Максимальна ціле позитивне число, що міститься в 8-розрядну комірку, так само 127.

Тепер розглянемо уявлення цілих негативних чисел. Як, наприклад, в 8-розрядної комірки пам'яті буде представлено число -25?

Здавалося б, очевидною відповіддю є наступний: потрібно в поданні числа 25 замінити старший розряд з 0 на 1. Але в комп'ютері все дещо складніше.

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

Отримати додатковий код деякого негативного числа -X можна за наступним алгоритмом:

1) записати внутрішнє уявлення відповідного йому позитивного числа + Х - це ми вже вміємо;
2) записати зворотний код отриманого числа заміною у всіх розрядах 0 на 1 і 1 на 0;
3) до отриманого числа додати 1.

Визначимо за цими правилами внутрішнє уявлення числа -2510 в Восьмирозрядних осередку:

11100111 - це і є уявлення числа -25.

В результаті виконання такого алгоритму одиниця в старшому розряді виходить автоматично. Вона і є ознакою від'ємного значення.

Перевіримо отриманий результат. Очевидно, що при додаванні чисел +25 і -25 повинен вийти нуль.

Одиниця в старшому розряді, що отримується при додаванні, виходить за кордон осередки і зникає. В осередку залишається нол'.

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

Подання восьмирозрядного негативного числа -X доповнює уявлення відповідного позитивного числа + Х до значення 2 8.

Розмір осередку і діапазон значень чисел

Найбільше по модулю негативне значення в Восьмирозрядних комірці рівна -2 7 = -128. Його внутрішнє уявлення: 10000000. Таким чином, діапазон представлення цілих чисел в Восьмирозрядних осередку наступний:

-128 ≤ X ≤ 127 або -2 7 ≤ X ≤ 2 7 - 1.

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

-2 15 ≤ X ≤ 2 15 - 1 або -32 768 ≤ X ≤ 32 767.

Тепер стає очевидною узагальнена формула для діапазону цілих чисел в залежності від розрядності N осередки:

-2 N-1 ≤ Х ≤ 2 N-1 - 1.

Діапазон для 32-раз ряд ної комірки виходить досить великим:

-2 31 ≤ X ≤ 2 31 - 1 або -2 147 483 648 ≤ X ≤ 2 147 483 647.

Особливості роботи комп'ютера з цілими числами

Виконуючи на комп'ютері обчислення з цілими числами, потрібно пам'ятати про обмеженість допустимих значень.

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

Подання дійсних чисел

Цілі і дробові числа в сукупності називаються речовими числами. В математиці також використовується термін «дійсні числа».

Рішення більшості математичних задач зводиться до обчислень з числами.

Будь-яке дійсне число X можна записати у вигляді добутку мантиси m і підстави системи числення в деякій цілій степені n. яку називають порядком:

Наприклад, число 25,324 можна записати в такому вигляді: 0,25324 • 10 2. Тут m = 0,25324 - мантиса, n = 2 - порядок. Порядок вказує, на скільки позицій і в якому напрямку повинна зміститися десяткова кома в мантисі.

Найчастіше для зберігання дійсних чисел в пам'яті комп'ютера використовується або 32-розрядна, або 64-розрядна комірка. Перший варіант називається поданням зі звичайною точністю, другий - поданням з подвоєною точністю. В осередку зберігаються два числа в двійковій системі числення: мантиса і порядок. Тут ми не будемо детально розглядати правила подання дійсних чисел.

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

Особливості роботи комп'ютера з речовими числами

1. Діапазон дійсних чисел обмежений. Але він значно ширше діапазону цілих чисел в розглянутому раніше способі і х уявлення. Наприклад, при використанні 32-розрядної комірки цей діапазон наступний:

-3,4 • 10 38 ≤ X ≤ 3,4 • 10 38.

2. Вихід за діапазон (переповнення) - аварійна ситуація для процесора, який перериває свою роботу.

3. Результати машинних обчислень про числами містять похибку. При використанні подвоєною точності ця похибка зменшується.

Коротко про головне

У пам'яті комп'ютера цілі числа представляються в двійковій системі числення і можуть займати осередок розміром 8, 16, 32 і т. Д. Бітів.

Діапазон значень цілих чисел обмежений. Чим більше розмір осередку, тим більш широкий діапазон.

При виході результатів обчислень з цілими числами за допустимий діапазон робота процесора не переривається. При цьому результати можуть виявитися неточними.

Речові числа представляються у вигляді сукупності мантиси і порядку в двійковій системі числення. Звичайний розмір осередку - 32 або 64 біта.

Результати обчислень з числами наближені. Переповнення призводить до переривання роботи процесора.

Запитання і завдання

1. Як в пам'яті комп'ютера представлені цілі позитивні і негативні числа?

2. Вкажіть, який був би діапазон значень цілих чисел, якби для їх зберігання використовувалася Чотирирозрядний осередок.

3. Запишіть внутрішнє уявлення наступних десяткових чисел, використовуючи Восьмирозрядних осередок:

4. Визначте, яким десятковим числам відповідають наступні двійкові коди восьмирозрядного представлення цілих чисел.


а) 00010101;
6) 11111110;
в) 00111111;
г) 10101010.

Схожі статті