Представление числовой информации
Кодирование данных в ЭВМ
Для представления чисел в памяти компьютера используются два формата: формат с фиксированной точкой и формат с плавающей точкой. В формате с фиксированной точкой представляются только целые числа, в формате с плавающей точкой — вещественные числа (целые и дробные).
Целые числа
Множество целых чисел, представимых в памяти ЭВМ, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых для их хранения. В k-разрядной ячейке может храниться 2k различных значений целых чисел.
Пример 1.Пусть для представления целых чисел в компьютере используется 16-разрядная ячейка (2 байта). Определить, каков диапазон хранимых чисел, если а) используются только положительные числа; б) используются как положительные так и отрицательные числа в равном количестве.
Решение. Всего в 16-разрядной ячейке может храниться 216 = 65536 различных значений. Следовательно:
а) диапазон значений от 0 до 65535 (от 0 до 2k—1);
б) диапазон значений от -32768 до 32767 (от -2k-1 до 2k-1-1).
Чтобы получить внутреннее представление целого положительного числа N, хранящегося в k-разрядном машинном слове, необходимо:
1) перевести число N в двоичную систему счисления; 2) полученный результат дополнить слева незначащими нулями до к разрядов.
Пример 2.Получить внутреннее представление целого числа 1607 в 2-х байтовой ячейке. Решение. N = 160710 = 110010001112. Внутреннее представление этого числа в ячейке будет следующим: 0000 0110 0100 0111. Шестнадцатеричная форма внутреннего представления числа получается заменой 4-х двоичных цифр одной шестнадцатеричной цифрой: 0647.
Для записи внутреннего представления целого отрицательного числа (-N) необходимо:
1) получить внутреннее представление положительного числа N;
2) получить обратный код этого числа заменой 0 на 1 и 1 на 0;
3) к полученному числу прибавить 1.
Данная форма представления целого отрицательного числа называется дополнительным кодом. Использование дополнительного кода позволяет заменить операцию вычитания на операцию сложения уменьшаемого числа с дополнительным кодом вычитаемого
Пример 3. Получить внутреннее представление целого отрицательного числа -1607.
Решение. 1) Внутреннее представление положительного числа:
0000 0110 0100 0111
2) обратный код: 1111 1001 1011 1000
3) результат прибавления 1: 1111 1001 1011 1001 — это внутреннее двоичное представление числа -1607. Шестнадцатеричная форма: F9B9.
Двоичные разряды в ячейке памяти нумеруются от 0 до к справа налево. Старший, k-й разряд во внутреннем представлении любого положительного числа равен нулю, отрицательного числа — единице. Поэтому этот разряд называется знаковым разрядом.