Е.А. Тулаева МОУ СОШ 18 г.Пенза Кодирование чисел в компьютере С фиксированной запятой
Кодирование целых чисел Для работы с числами человек использует в основном две формы для их записи - естественная и экспоненциальная. Естественной формой называется более привычная для нас, обычная запись числа, например, 1000 или 3,5. Экспоненциальная же форма записи чисел обычно используется для обозначения очень больших или очень маленьких чисел, т.к. в естественной форме в записи таких чисел используется большое количество незначащих нулей (например, 0, = 0,2* или 1000 = 10 3 ).
Формат с фиксированной точкой. Подробнее рассмотрим, как в памяти компьютера представляются целые числа. Не забывайте, что числа в компьютере представлены в двоичной системе счисления, поэтому речь будет идти именно о таких числах. Запятая в таких числах фиксируется строго в конце и остается строго фиксированной. Поэтому этот формат называется форматом с фиксированной точкой.
Все целые числа в компьютере разделяются на числа без знака (только положительные) и со знаком (положительные и отрицательные). Для хранения чисел в памяти отводится определенное количество разрядов, в совокупности представляющих собой n-разрядную сетку. Формат с фиксированной точкой Формат Количество разрядов (n),отводимое для хранения числа Минимальное число Максимальное число Интервал чисел Целые числа без знака 1 байт (n=8)02 n – 1 = 2550 … байта (n= 16)02 n – 1 = … Целые числа со знаком 2 байта (n= 16)- 2 n – 1 = n – 1 – 1 = … байта (n= 32)- 2 n – 1 = n – 1 – 1 = …
Обратим внимание на кодирование знака числа. Знак положительного числа «+» кодируется нулем, а знак отрицательного числа «-» кодируете единицей. Число в разрядной сетке располагается так, что его самый младший двоичный разряд записывается в крайний правый бит. Если количество разрядов в разрядной сетке превышает количество разрядов числа, оставшиеся разряды заполняются нулями.
Пример 1 Представить число в однобайтовой разрядной сетке. 1. Переведем число в двоичную систему счисления = , 2. Нарисуем восьмиразрядную сетку (1 байт = 8 бит). 3. Впишем число, начиная с младшего разряда. 4. Заполним оставшиеся разряды нулями