
- •1.1. Системы счисления
- •1.2. Перевод числа из десятичной системы в двоичную
- •1.3. Перевод числа из двоичной системы в десятичную
- •1.4. Представление в компьютере отрицательных чисел
- •1.5. Правила выполнения арифметических операций в двоичной системе
- •1.6. Использование восьмеричной и шестнадцатеричной систем счисления
- •1.7. Единицы измерения количества информации
Представление, измерение и преобразование информации
1.1. Системы счисления
Под системой счисления понимается способ представления любого числа с помощью некоторого алфавита символов, называемых цифрами. Системы счисления бывают позиционными и непозиционными.
В позиционных системах счисления значимость (вес) каждой цифры числа зависит от позиции, которую она занимает. Значение числа, состоящего из n цифр, может быть определено следующим образом:
(xn-1 xn-2 xn-3 xn-4 … x1x2)= xn-1· mn-1 + xn-2· mn-2 + … + x0· m0,
где т — основание системы;
хi — символ в i-й позиции, 0 ≤ хi < т; 0 ≤ i ≤ (n - 1);
тi — вес i-го знакоместа.
Для десятичной системы счисления т = 10, используемые символы: 0 ÷ 9.
5631О = 5 · 102 + 6 · 101 + 3 · 100
I |
2 |
1 |
0 |
xi |
5 |
6 |
3 |
mi |
100 |
10 |
1 |
xi · mi |
500 |
60 |
3 |
Кроме десятичной системы широкое распространение получили позиционные системы счисления с основаниями 2, 8, 16, 60.
Из непозиционных систем самой распространенной является римская.
Электронные блоки компьютера могут обрабатывать информацию, представленную только в цифровой форме, причем обычно компьютеры работают в двоичной системе счисления. Основание системы: т = 2. Используемые символы: 1 и 0.
С точки зрения электроники значение единицы может быть представлено наличием напряжения, потенциала или тока, а ноль — отсутствием их.
Рассмотрим представление чисел в двоичной системе. Веса знакомест: 20 = 1, 21 = 2, 22 = 4, 23 = 8, 24=16, 25 = 32, 26 = 64, 27 = 128, 28 = 256, 210 = 1024, 216 = 65536.
1.2. Перевод числа из десятичной системы в двоичную
Перевод числа из десятичной системы в двоичную осуществляется отдельно для целой и дробной частей числа по следующим алгоритмам:
а) целое десятичное число делится нацело на основание 2, затем на 2 делятся последовательно все частные от целочисленного деления, до тех пор пока частное не станет меньше основания. В результат заносится последнее частное и все остатки от деления, начиная с последнего. Пример 1: 22710= 111000112;
Пример 2: Берем, например, число 29. Поскольку это число нечетное, отнимаем от него единицу, записываем ее отдельно, а число делим пополам. Получилось 14.
Число 14 — четное. Отнимать от него единицу не нужно, поэтому слева от «запомненной» единицы запишем 0. Число делим пополам, получаем 7.
Число 7 — опять нечетное. Отнимаем от него единицу, записываем ее отдельно и делим число пополам. Получается 3.
Число 3 — нечетное. Отнимаем единицу, записываем ее отдельно, и результат делим пополам — получаем 1.
Последнюю единицу уже не делим, а просто записываем слева от полученного результата.
Смотрим на результат. У нас получилось двоичное число 11101 — это и есть двоичный код числа 29.
б) десятичная дробь последовательно умножается на основание 2, причем сразу после каждой операции умножения полученная целая часть записывается в результат и в дальнейшем умножении не участвует. Количество операций умножения зависит от требуемой точности, например, 0.6410 = 0.101000112
0.64 · 2
1.28 · 2
0.56 · 2
1.12 · 2
0.24 · 2
0.48 · 2
0.96 · 2
1.92 · 2
1.84 · 2