Кодування чисел в комп'ютері і дії над ними, наука і технології

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

цілі позитивні числа (без знака)

речові нормалізовані числа. (Ірраціо (нескінченні неперіодичні дроби, Пі, корінь з двох ..) і раціон (m / n або нескінченні періодичні дроби))

Цілі числа без знака.

Пам'ять в комп'ютері має байтовую структуру. Цілі без знака зазвичай займають один, два або більше байт. У однобайтового форматі вони можуть набувати значень в діапазоні від 0 до 255, в двухбайтового від 0 до 65535. Тут спроба представити в байтовому форматі число 258 буде інтерпретуватися як помилка.

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

в байтовому форматі:

7 6 5 4 3 2 1 0

0 1 0 0 1 0 0 0

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

Цілі числа зі знаком

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

При кодуванні прямим n-розрядних двійковим кодом один розряд (як правило найстарший) відводиться для знака числа. Решта n-1 розрядів - для значущих цифр. Значення знакового розряду дорівнює 0 для позитивних чисел, 1 - для негативних.

Приклад: 1 = 0000 0001 -1 = 1000 0001

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

код модуля: 00000001

зворотний код: 11111110

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

Наприклад: Використовується 6 розрядне представлення двійкових чисел. 7 = 000111; -7 = 111001 - це додатковий код.

Додатковий код отриманий так:

1) інверсія 000111 дорівнює 111000:

111001 - це уявлення числа -7 в додатковому коді.

При такому поданні чисел віднімання двох чисел А - В виконується як додавання А + (-В).

Наприклад: 001100 = 12

111001 = -7 в додатковому коді

одиниця перенесення в старший розряд при виконанні операції

Таким чином, відпадає необхідність в окремому пристрої для операції віднімання.

Приклад: Для числа -1101:

Схожі статті