Представление чисел в компьютере
Представление чисел в формате с фиксированной запятой Этот формат используется для хранения целых чисел. Каждому разряду ячейки памяти соответствует всегда один и тот же разряд числа. Запятая находится справа после младшего разряда, то есть вне разрядной сетки.
Целые неотрицательные числа Для хранения используется одна ячейка памяти (8 битов). Например, число будет храниться в ячейке памяти следующим образом: Количество чисел определяется по формуле 2 n, где n - количество ячеек памяти. Целых неотрицательных чисел можно закодировать
Целые числа со знаком Для хранения отводятся две ячейки памяти (16 битов). Старший левый разряд отводится под знак числа (полож. число – 0, отриц. число – 1). Например, число = : Максимальное число =
Целые отрицательные числа Для представления отрицательных чисел используется дополнительный код. Он позволяет заменить арифметическую операцию вычитания операцией сложения, что существенно упрощает работу процессора и увеличивает его быстродействие.
Алгоритм получения дополнительного кода 1. Модуль числа записать в прямом коде, дописав необходимое количество нулей до 16 цифр). 2. Получить обратный код числа – инвертировать его, заменив единицы на нули, нули – на единицы. 3. К полученному обратному коду прибавить единицу.
Пример: запись числа Прямой код модуля Обратный код Инвертир ование Прибавление единицы Дополнитель ный код
Формат чисел с фиксированной запятой Достоинства: простота и наглядность представления чисел; простота алгоритмов реализации арифметических операций. Недостатки: небольшой диапазон представления величин, недостаточный для решения задач, в которых используются очень большие числа.
Представление чисел в формате с плавающей запятой Используется для хранения вещественных чисел. Положение запятой в записи числа может меняться. Число записывается в экспоненциальной форме. A = m * q n, где m – мантисса числа, n – порядок числа, q – основание системы счисления.
Вещественные числа Занимает в памяти компьютера 4 (число обычной точности) или 8 байтов (число двойной точности). Максимальное число обычной точности: = 1,7 * Числа в памяти компьютера.swf
Примеры Мантисса числа должна быть правильной десятичной дробью и иметь после запятой цифру, отличную от нуля. 555,44 = 0,55544 * ,0072 = 0,72 * 10 -2