Лекция 4_Системы счисления
.docЛабораторная работа 1. «Системы счисления»
Система счисления – это правила записи чисел с помощью заданного набора специальных знаков – цифр.
Людьми использовались различные способы записи чисел, которые можно объединить в несколько групп: унарная, непозиционные и позиционные.
Две первые представляют скорее исторический интерес, поскольку имеют весьма ограниченное применение в настоящее время.
Унарная система счисления
Унарная система счисления – это система счисления, в которой для записи чисел используется только один знак – 1 («палочка»).
Следующее число получается из предыдущего добавлением новой 1; их количество (сумма) равно самому числу.
Именно такая система применяется для начального обучения счету детей (можно вспомнить «счетные палочки»).
Другими словами, использование именно унарной системы оказывается важным педагогическим приемом для введения детей в мир чисел и действий с ними.
Непозиционные система счисления
Непозиционная система счисления - система, в которой символы, обозначающие то или иное количество, не меняют своего значения в зависимости от местоположения (позиции) в изображении числа.
Из непозиционных наиболее распространенной можно считать римскую систему счисления.
В ней некоторые базовые числа обозначены заглавными латинскими буквами:
1 – I, 5 – V, 10 – X, 50 – L , 100 – C, 500 – D, 1000 – M.
Все другие числа строятся из комбинаций базовых, причем:
-
если цифра слева меньше, чем цифра справа, то левая цифра вычитается из правой;
-
если цифра справа меньше или равна цифре слева, то эти цифры складываются;
Запись чисел в такой системе громоздка и неудобна, но еще более неудобным оказывается выполнение в ней даже самых простых арифметических операций.
Наконец, отсутствие нуля и знаков для чисел больше M не позволяют римскими цифрами записать любое число (хотя бы натуральное). Используется эта система для нумерации.
Позиционные системы счисления
Позиционными называются системы счисления, в которых значение каждой цифры в изображении числа определяется ее положением (позицией) в ряду других цифр.
Упорядоченный набор символов (цифр) {а0, av ..., ап), используемый для представления любых чисел в заданной позиционной системе счисления, называют ее алфавитом, число символов (цифр) алфавита р = п + 1 - ее основанием, а саму систему счисления называют р-ричной.
Основание позиционной системы счисления - количество различных цифр, используемых для изображения чисел в данной системе счисления.
Самой привычной для нас является десятичная система счисления. Ее алфавит - {0, 1, 2, 3, 4, 5, б, 7, 8, 9}, а основание р = 10, т. е. в этой системе для записи любых чисел используется только десять разных символов (цифр). Десятичная система счисления основана на том, что 10 единиц каждого разряда объединяются в одну единицу соседнего старшего разряда, поэтому каждый разряд имеет вес, равный степени 10. Следовательно, значение одной и той же цифры определяется ее местоположением в изображении числа, характеризуемым степенью числа 10. Например, в изображении числа 222.22 цифра 2 повторяется 5 раз, при этом первая слева цифра 2 означает количество сотен (ее вес равен 102); вторая - количество десятков (ее вес равен 101), третья - количество единиц (ее вес равен 100), четвертая - количество десятых долей единицы (ее вес равен 10-1) и пятая цифра - количество сотых долей единицы (ее вес равен 10 -2), т. е. число 222.22 может быть разложено по степеням числа 10:
222.22 = 2 • 102 + 2 •101 + 2 • 10° + 2 • 10-1 + 2 • 10-2.
Аналогично 725 = 7 • 102 + 2 • 101 + 5 • 10°;
1304.5 = 1 • 103 + 3•102 + 0 • 101 + 4 • 10° + 5 • 10-1,
50328.15 = 5 • 104 + 0 • 103 + 3 • 102 + 2 • 101 + 8 • 10° + 1 • 10 -1 + 5 • 10-2.
В общем случае для задания р-ричной системы счисления необходимо определить основание р и алфавит, состоящий из р различных символов (цифр) ар i = 1,..., р.
Любое число Xp можно представить в виде полинома путем разложения его по степеням числа p:
(1)
последовательность из коэффициентов которого представляет собой сокращенную запись числа Xp :
(2)
Точка, отделяющая целую часть числа от дробной, служит для фиксации конкретных значений каждой позиции в этой последовательности цифр и является началом отсчета.
Методы перевода чисел. Представление чисел в различных системах счисления
Перевод чисел из одной системы счисления в другую
Одно и то же число может быть записано в различных системах счисления.
Алгоритм перевода целых чисел из q-ричной системы в p-ричную, при q > p
Для замены исходного числа Xq равным ему числом Xp нужно по правилам q-ричной арифметики целочисленно делить Xq на новое основание p. Результаты деления, записанные в порядке от последнего к первому, и окажутся цифрами Xp.
Пример:
Поскольку коэффициенты многочлена неизвестны, обозначим их ai; получаем:
12310 = 4435
Обычно описанную процедуру представляют в виде привычной по школе операции деления:
Таким образом, получили X5=443.
Проверяем правильность перевода: 4*52+4*51+3*50=100+20+3=12310.
Полученное число нельзя читать «четыреста сорок три». Прочитывать число следует простым перечислением его цифр с указанием системы счисления («число четыре, четыре, три в пятиричной системе счисления»).
Второе, на что нужно обратить внимание – все операции выполнялись по правилам арифметики той системы счисления, от которой осуществлялся перевод (в рассмотренном примере – десятичной).
Алгоритм перевода целых чисел из q-ричной системы в p-ричную, при q < p
Для перевода необходимо представить число Xq в форме многочлена и выполнить все операции по правилам p-ричной арифметики.
Пример:
X6 X10, Х= 2346
2346 = 262+361+460 = 236+36+41 = 9410
Приведенными алгоритмами удобно пользоваться при переводе числа из десятичной системы в какую-то иную или наоборот.
Они работают и для перевода между любыми иными системами счисления, однако, такой перевод будет затруднен тем, что все арифметические операции необходимо осуществлять по правилам исходной (в первом алгоритме) или конечной (во втором алгоритме) системы.
По этой причине переход, например X3 X8 проще осуществить через промежуточный переход к 10-ной системе X3 X10 X8.
Алгоритм перевода правильной дроби при q > p
Результатом перевода правильной дроби 0,Xq будет также правильная дробь 0,Xp, которая получится в результате умножения исходной дроби на новое основание p по правилам q-ричной арифметики; целая часть полученного произведения будет цифрой старшего разряда новой дроби; дробную часть полученного произведение следует снова умножить на p и т.д.
Пример: 0,X10 0,X2. 0,Х=0,37510
Тогда для получения 0,X2:
0,375*2 = 0,750
0,75*2 = 1,50
0,5*2 = 1,0
Таким образом, 0,37510 = 0,0112.
Проверяем 0,011=0*2-1+1*2-2+1*2-3=0,25+1,125=0,37510
Алгоритм перевода правильной дроби при q < p
Для перевода Xq Xp необходимо представить число Xq в форме многочлена и выполнить все операции по правилам p-ричной арифметики.
Пример: X6 X10, Х6=0,2346
Для этого
0,2346 = 26-1+36-2+46-3=0,33(3)+0,083(3)+0,01(851)= 0,4351710
Проверяем:
0, 43517*6=2,61102
0, 61102*6=3,66612
0,66612*6=3,996724,0 {погрешность вычислений в случае получения иррациональных чисел}
Пример: X2 X10, Х=0,101012
Для этого
0, 101012 = 12-1+02-2+12-3 +02-4+12-5= 0,5+0,125+0,03125= 0,6562510.
Проверяем:
0,65625*2=1,3125
0,3125*2=0,625
0,625*2=1,25
0,25*2=0,5
0,5*2=1,0. Все верно
Перевод чисел между системами счисления 2 – 8 – 16
Примеры изображения чисел в данных системах счисления приведены в таблице 1
Таблица 1. Системы счисления
десятичная |
двоичная |
8-ричная |
16-ричная |
десятичная |
двоичная |
8-ричная |
16-ричная |
0 |
00000 |
0 |
0 |
11 |
01011 |
13 |
В |
1 |
00001 |
1 |
1 |
12 |
01100 |
14 |
С |
2 |
00010 |
2 |
2 |
13 |
01101 |
15 |
D |
3 |
00011 |
3 |
3 |
14 |
01110 |
16 |
Е |
4 |
00100 |
4 |
4 |
15 |
01111 |
17 |
F |
5 |
00101 |
5 |
5 |
16 |
10000 |
20 |
10 |
6 |
00110 |
6 |
6 |
17 |
10001 |
21 |
11 |
7 |
00111 |
7 |
7 |
18 |
10010 |
22 |
12 |
8 |
01000 |
10 |
8 |
19 |
10011 |
23 |
13 |
9 |
01001 |
11 |
9 |
20 |
10100 |
24 |
14 |
10 |
01010 |
12 |
А |
|
|
|
|
Для перевода целого двоичного числа в систему счисления с основанием p = 2r достаточно данное двоичное число, начиная с младшего разряда, разбить на группы в r цифр каждая и каждую группу независимо перевести в систему p.
Например, для перевода числа 1100012 в систему счисления p=8, нужно разбить исходное число на группы по три разряда справа налево (8 = 23, следовательно, r = 3) и перевести в 8-ричную систему счисления: 1100012=618. Проверяем 1100012=32+16+1=4910, 6*81+1*80=4910
Аналогично, разбивая на группы по 4 двоичные цифры, получим 1100012 = 3116.
Для перевода целого числа, записанного в системе счисления с основанием p = 2r, в двоичную систему достаточно каждую цифру исходного числа независимо заменить соответствующим r-разрядным двоичным числом, дополняя его при необходимости незначащими нулями до группы в r цифр.
Пример: представим число D316 в двоичной системе счисления:
Пример, 1238 = 0010100112 = 5316.
Задания для самостоятельного выполнения
-
Переведите число Xp p-ричной системы счисления в Xq q-ричной системы счисления
-
X5 X10, где X5=123
-
X3 X10, где X3=102
-
X10 X4, где X10=123
-
X10 X6, где X10=548
-
X5 X3, где X3=421
-
X2 X6, где X2=0111001
-
X2 X16, где X2=10011
-
X2 X8, где X2=101010
-
X16 X2, где X16=AD3
-
X8 X2, где X8=5470
II. Переведите десятичное число в двоичное:
-
74310, b) 334.1210, c) 61.375, d) 160.2510, e) 131.8210
III. Переведите десятичное число в шестнадцатеричное число:
-
44510, b) 334.1210, c) 261.375, d) 160.2510, e) 131.8210