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

Оглавление Главная Статистика Войти Регистрация

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

Представление целых чисел

Часть памяти, в которой хранится одно число, будем называть ячейкой. Минимальный размер ячейки, в которой может храниться целое число, — 8 битов, или 1 байт. Получим представление десятичного числа 25 в такой ячейке. Для этого нужно перевести число в двоичную систему счисления.

2510 = 110012.

Теперь осталось «вписать» его в восьмиразрядную ячейку

00011001.

Число записывается «прижатым» к правому краю ячейки (в младших разрядах). Оставшиеся слева разряды (старшие) заполняются нулями.

Самый старший разряд — первый слева — хранит знак числа. Если число положительное, то в этом разряде ноль, если отрицательное — единица.

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

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

Получить дополнительный код некоторого отрицательного числа -X можно по следующему алгоритму:

1) Записать внутреннее представление соответствующего ему положительного числа +Х — это мы уже умеем;

2) Записать обратный код полученного числа заменой во всех разрядах 0 на 1 и 1 на 0;

3) К полученному числу прибавить 1.

Определим по этим правилам внутреннее представление числа -2510 в восьмиразрядной ячейке:

1) 00011001

2) 11100110

3) +1

111001112 — это и есть представление числа -2510.

Размер ячейки и диапазон значений числа

Наибольшее по модулю отрицательное значение в восьмиразрядной ячейке равно -128. Его внутреннее представление: 10000000. Таким образом, диапазон представления целых чисел в восьмиразрядной ячейке следующий:

-128 ≤ X ≤ 127 или -27 ≤ X ≤ 27 - 1.

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

-215 ≤ X ≤ 215 - 1 или -32 768 ≤ X ≤ 32 767.

Теперь становится очевидной обобщенная формула для диапазона целых чисел в зависимости от разрядности N ячейки:

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

Особенности работы компьютера с целыми числами

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

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

Представление вещественных чисел

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

Всякое вещественное число X можно записать в виде произведения мантиссы m и основания системы счисления в некоторой целой степени n, которую называют порядком:

X = m • рn.

Например, число 25,324 можно записать в таком виде: 0,25324 • 102. Здесь m = 0,25324 — мантисса, n = 2 — порядок. Порядок указывает, на какое количество позиций и в каком направлении должна сместиться десятичная запятая в мантиссе.

Чаще всего для хранения вещественных чисел в памяти компьютера используется либо 32-разрядная, либо 64-разрядная ячейка. Первый вариант называется представлением с обычной точностью, второй — представлением с удвоенной точностью. В ячейке хранятся два числа в двоичной системе счисления: мантисса и порядок.

Особенности работы компьютера с вещественными числами

1. Диапазон вещественных чисел ограничен. Но он значительно шире диапазона целых чисел в рассмотренном ранее способе и х представления. Например, при использовании 32-разрядной ячейки этот диапазон следующий:

-3,4 • 1038 ≤ X ≤ 3,4 • 1038.

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

3. Результаты машинных вычислений о вещественными числами содержат погрешность. При использовании удвоенной точности эта погрешность уменьшается.

Коротко о главном

В памяти компьютера целые числа представляются в двоичной системе счисления и могут занимать ячейку размером 8, 16, 32 и т. д. битов.

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

При выходе результатов вычислений с целыми числами за допустимый диапазон работа процессора не прерывается. При этом результаты могут оказаться неверными.

Вещественные числа представляются в виде совокупности мантиссы и порядка в двоичной системе счисления. Обычный размер ячейки — 32 или 64 бита.

Результаты вычислений с вещественными числами приближенные. Переполнение приводит к прерыванию работы процессора.

Вопросы и задания

1. Как в памяти компьютера представляются целые положительные и отрицательные числа?

2. Укажите, каков был бы диапазон значений целых чисел, если бы для их хранения использовалась четырехразрядная ячейка.

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