аптионш. Материалы для изучения темы 1.1. Лекции по теме 1 Понятие информации, кодирование, декодировании. Измерение информации. Системы счисления
Скачать 114.83 Kb.
|
Системы счисления.Позиционные и непозиционные системы счисленияОдно и то же число можно представить по-разному. Например, число четыре можно представить в виде слова “четыре”, изобразить его по-древнеримски – IV, или договориться, что число обозначается соответствующим количеством палочек – ||||. Способ представления чисел называется системой счисления. Системы счисления бывают двух видов – позиционные, в которых числовое значение каждой цифры в число зависит от ее номера разряда (позиции) в записи числа, и непозиционные – все остальные. Примером позиционной системы является общепринятая десятичная система: число состоит из трёх троек (333), но каждая цифра имеет разное числовое значение 3,30,300.Непозиционной – римская: Х означает 10, запись ХХ означает 20, т.е. каждая цифра имеет одно и тоже числовое значение Х(10)+Х(10). Представление целых неотрицательных чиселВ позиционных системах значение записи целого числа определяется по следующему правилу: пусть anan-1an-2…a1a0 — запись числа A, аi– цифры, тогда
где p — целое число большее 1, которое называется основанием системы счисления. Для того, чтобы при заданном p любое неотрицательное целое число можно было бы записать по формуле (1) и притом единственным образом, числовые значения различных цифр должны быть различными целыми числами, принадлежащими отрезку от 0 до p-1. Пример: 1) Десятичная система:p = 10 , цифры: 0,1,2,3,4,5,6,7,8,9. Число 3635 = 3·103 + 6·102 + 3·101 + 5·100 2) Троичная система: p = 3, цифры: 0,1,2. Число 1213 = 1·32 + 2·31 + 1·30 Замечание: нижним индексом в записи числа обозначается основание системы счисления, в которой записано число. Для десятичной системы счисления индекс можно не писать. Представление отрицательных и дробных чиселВо всех позиционных системах для записи отрицательных чисел, так же как и в десятичной системе используется знак ‘–‘. Для отделения целой части числа от дробной используется запятая. Значение записи числа A определяется по формуле, являющейся обобщением формулы (1):
Пример: 36,710 = 3·101 + 6·100 + 7·10–1 –3,2145 = –(3·50 + 2·5–1 + 1·5–2 + 4·5–3) Перевод чисел из произвольной системы счисления в десятичную с/с.Следует понимать, что при переводе числа из одной системы счисления в другую количественное значение числа не изменяется, а меняется только форма записи числа, так же как при переводе названия числа, например, с русского языка на английский. Перевод чисел из произвольной системы счисления в десятичную выполняется непосредственным вычислением по формуле (1) для целых и формуле (2) для дробных чисел. Перевод чисел из десятичной системы счисления в произвольную с/с.Перевести число из десятичной системы в систему с основанием p – значит найти коэффициенты в формуле (2). Иногда это легко сделать простым подбором. Например, пусть нужно перевести число 23,5 в восьмеричную систему, для этого представим число 23,5 в виде суммы степеней числа 8. Нетрудно заметить, что 23,5 = 16+7+0,5 = 2·8+7+4/8 = 2·81+7·80+4·8–1 =27,48. В общем случае способ перевода отдельно целой и дробной частей числа. Для перевода целых чисел применяется следующий алгоритм, полученный на основании формулы (1): 1. Найдем частное и остаток от деления числа на p. Остаток будет очередной цифрой ai(i=0,1,2 …) записи числа в новой системе счисления. 2. Если частное равно нулю, то перевод числа закончен, иначе - пункт 1. Замечание 1. Цифры aiв записи числа нумеруются справа налево. Замечание 2. Если p>10, то необходимо ввести обозначения для цифр с числовыми значениями, большими или равными 10, обычно это латинские буквы. Пример: Перевести число 16510 в семеричную систему счисления. 165:7 = 23 (остаток 4) => a0 = 4 (цифра 0 разряда) 23:7 = 3 (остаток 2) => a1 = 2 (цифра 1 разряда) 3:7 = 0 (остаток 3) => a2 = 3 (цифра 2 разряда) Выпишем результат: a2a1a0, т.е. 3247. Выполнив проверку по формуле (1), убедимся в правильности перевода: 3247=3·72+2·71+4·70=3·49+2·7+4 = 147+14+4 = 16510. Для перевода дробных частей чисел применяется алгоритм, полученный на основании формулы (2): 1. Умножим дробную часть числа на p. 2. Целая часть результата будет очередной цифрой am(m = –1,–2, –3 …) записи числа в новой системе счисления. Если дробная часть результата равна нулю, то перевод числа закончен, иначе применяем к ней пункт 1. Замечание 1. Цифры amв записи числа располагаются слева направо в порядке возрастания абсолютного значения m. Замечание 2. Обычно количество дробных разрядов в новой записи числа ограничивается заранее. Это позволяет выполнить приближенный перевод с заданной точностью. В случае бесконечных дробей такое ограничение обеспечивает конечность алгоритма. Пример 1 :Перевести число 0,625 в двоичную систему счисления. 0,625·2 = 1,25 (дробная часть 0,25; целая часть 1) => a–1 =1 0,25·2 = 0,5 (дробная часть0,5; целая часть 0) => a–2 = 0 0,5·2 = 1,00 (дробная часть 0,0 – перевод закончен; целая часть 1) => a–3 = 1 Итак, число 0,62510 = 0,a–1 a–2 a–3 = 0,1012 Выполнив проверку по формуле (2), убедимся в правильности перевода: 0,1012=1·2–1 + 0·2–2 + 1·2–3=1/2 + 1/8 = 0,5 + 0,125 = 0,625. Пример 2:Перевести число 0,165 в четверичную систему счисления, ограничившись четырьмя четверичными разрядами. 0,165·4 = 0,66 (целая часть 0) => a–1=0 0,66·4 = 2,64 (целая часть 2) => a–2= 2 0,64·4 = 2,56 (целая часть 2) => a–3= 2 0,56·4 = 2,24 (целая часть 2) => a–4= 2 Итак, 0,16510 ≈ 0,02224 Выполним обратный перевод, чтобы убедиться, что абсолютная погрешность не более 4–4: 0,02224 = 0·4–1+2·4–2+2·4–3+2·4–4 = 2/16+2/64+2/256 = 1/8+1/32+1/128 = 21/128 = 0,1640625 |0,1640625–0,165| = 0,00094 < 4–4 = 0,00390625. |