Онлайн книга «Код. Тайный язык информатики»
|
Число битов Диапазон целых положительных чисел Диапазон целых отрицательных чисел 8 От 0 до 255 От –128 до 127 16 От 0 до 65 535 От –32 768 до 32 767 32 От 0 до 4 294 967 295 От –2 147 483 648 до 2 147 483 647 Однако на этом мы и остановились. Помимо целых чисел математики также различают рациональные числа, которые могут быть представлены в качестве отношения двух целых чисел. Это отношение также называется дробью. Например, дробь ¾ — рациональное число, отношение чисел 3 и 4. Это число также можно записать в виде десятичной дроби: 0,75. Десятичная дробь остается отношением двух чисел, в данном случае 75/100. В главе 7 рассказывалось, что в десятичной системе счисления цифры слева от десятичного разделителя являются множителями целых положительных степеней числа 10, а цифры справа — множителями целых отрицательных степеней числа 10. В одном из примеров я показал, что число 42 705,684 равно: 4 × 10 000 + 2 × 1000 + 7 × 100 + 0 × 10 + 5 × 1 + 6 ÷ 10 + 8 ÷ 100 + 4 ÷ 1000. Обратите внимание на знаки деления. Затем я представил эту последовательность операций без деления: 4 × 10 000 + 2 × 1000 + 7 × 100 + 0 × 10 + 5 × 1 + 6 × 0,1 + 8 × 0,01 + 4 × 0,001. И наконец, отобразил это число, используя степени числа 10: 4 × 104 + 2 × 103 + 7 × 102 + 0 × 101 + 5 × 100 + 6 × 10–1 + 8 × 10–2 + 4 × 10–3. Существуют рациональные числа, которые не так легко представить в виде десятичной дроби, например ⅓. Если вы разделите 1 на 3, то получите следующее. 0,33333333333333333333333333333333333333333333333333333… И так до бесконечности. Подобная дробь называется периодической и записывается 0,(3). Несмотря на то что запись числа ⅓ в виде десятичной дроби выглядит неуклюже, это число по-прежнему является рациональным, поскольку это отношение двух целых чисел. Вот еще один пример: отношение 1/7 можно записать в виде десятичной дроби. 0,1428571428571428571428571428571428571428571428571428571… Или
Иррациональные числа — это числа, которые нельзя выразить в виде отношения двух целых чисел, значит, десятичная дробь продолжается бесконечно без повторяющихся последовательностей цифр. К числам такого типа относится квадратный корень из 2. √2 ≈ 1,41421356237309504880168872420969807856967187537695… Квадратный корень из 2 — решение следующего алгебраического уравнения: x2 – 2 = 0. Если число не является решением какого-либо алгебраического уравнения с целочисленными коэффициентами, оно называется трансцендентным. (Все трансцендентные числа иррациональны, однако не все иррациональные числа трансцендентны.) К трансцендентным числам относится число π, представляющее отношение длины окружности к ее диаметру и приблизительно равное следующему. 3,1415926535897932846264338327950288419716939937511… Еще одним трансцендентным числом является e, к которому стремится выражение: ![]() при n, стремящемся к бесконечности. Данное число приблизительно равно следующему. 2,71828182845904523536028747135266249775724709369996… Все числа, о которых мы говорили, то есть рациональные и иррациональные, называются действительными, или вещественными. Это обозначение отличает их от мнимых — квадратных корней из отрицательных чисел. Комплексные числа — это комбинации мнимых и вещественных чисел. Несмотря на свое название, мнимые числа существуют и используются, например при решении некоторых сложных задач по электронике. Мы привыкли считать, что числовой ряд непрерывен. Если вы дадите два рациональных числа, я определю, какое число находится между ними. Для этого достаточно найти их среднее арифметическое. Однако цифровые компьютеры не могут работать с континуумами. Биты могут быть равны либо 0, либо 1, между которыми нет больше никаких значений. Так что цифровые компьютеры могут иметь дело только с дискретными значениями. Количество дискретных значений, которые вы можете представить, напрямую связано с количеством доступных битов. Например, в ячейках емкостью 32 бита можно хранить положительные целые числа в диапазоне от 0 до 4 294 967 295. При необходимости сохранить значение 4,5 придется пересмотреть этот подход и действовать иначе. Можно ли представить дробные значения в двоичном формате? Да, можно. Вероятно, самый простой подход — использование двоично-десятичного кода (BCD). Как говорилось в главе 19, кодировка BCD позволяет записать десятичные числа в двоичном формате. Для кодирования каждой десятичной цифры (0, 1, 2, 3, 4, 5, 6, 7, 8 и 9) требуется четыре бита. Десятичная цифра Двоичное значение 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 Формат BCD особенно полезен в компьютерных программах, которые работают с денежными суммами. Самые очевидные примеры — программы для банков и страховых компаний; многие дробные числа в них предусматривают не более двух знаков после десятичного разделителя. Как правило, для хранения двух BCD-цифр достаточно одного байта. Такая система записи иногда называется упакованным кодом ВСD. В такой кодировке не используется дополнение до двух. По этой причине в случае упакованного кода BCD для указания того, является ли число положительным или отрицательным, обычно требуется дополнительный бит, называемый знаковым битом. Поскольку для хранения BCD-значения удобно выделять целое число байтов, под бит знака обычно отводится четыре или восемь бит памяти. |
![Иллюстрация к книге — Код. Тайный язык информатики [i_448.jpg] Иллюстрация к книге — Код. Тайный язык информатики [i_448.jpg]](img/book_covers/084/84993/i_448.jpg)
![Иллюстрация к книге — Код. Тайный язык информатики [i_449.jpg] Иллюстрация к книге — Код. Тайный язык информатики [i_449.jpg]](img/book_covers/084/84993/i_449.jpg)