ЗАДАНИЯ К РАБОТЕ.

Для выполнения этого задания потребуются некоторые сведения из теории и определения:

Системы счисления. Человек привык считать предметы десятками, сотнями: десять единиц образуют десяток, десять десятков — сотню, десять сотен — тысячу и т. д. Это — десятичная система счисления, которая не является единственно возможной (известна, например, двенадцатеричная система счисления).

Система счисления — способ именования и изображения чисел с помощью символов, имеющих определенные количественные значения. В зависимости от способа изображения чисел системы счисления делятся на:

• непозиционные;

• позиционные.

Непозиционные системы счисления. В такой системе цифры не меняют своего количественного значения при из­менении их расположения в числе.

Самый простой и очевидный пример — система счисления, где количество обозначается I (палочкой/единицей):

1 = I;

2 = I;

5 = IIIII;

10= IIIIIIIIII.

Пусть далее следующие символы (цифры в гипотетической системе счисления) соответствуют числам (в десятичной системе счисления):

Н - 1;

Л - 6;

Е - 12

* - 24;

Щ - 60;

S - 365,

и пусть есть правило, по которому число можно записать любой комбинацией таких символов, чтобы сумма обозначаемых ими чисел была равна заданному числу.

Тогда 444 можно записать по крайней мере двумя способами: SЩЕЛН (365 + 60+12 + 6+1); ЛНSЩЕ (6 + 1 + 365 + 60 + 12), т. е. SЩЕЛН = ЛНSЩЕ

Такая система счисления является непозиционной, так как цифры не меняют своего количественного значения при измене­нии их расположения в числе.

Позиционные системы счисления. В этом случае количественное значение каждой цифры зависит от ее места (позиции) в числе.

Десятичная система счисления является позиционной, так как значение каждой цифры зависит от ее места (позиции) в числе.

Например,

23 = 2 х 10 + 3;

32 = 3 х 10 + 2

и 23 не равно 32

Римская система счисления является смешанной, так как значение каждой цифры частично зависит от ее места (позиции) в числе. Так, в числах

VII

VI

IV

V обозначает 5, а I обозначает I. Но, с другой стороны, важно, как цифры расположены относительно друг друга:

VII = 5+1 + 1=7;

VI = 5+1=6; IV=5- 1=4.

Наиболее естественный способ представления числа в компьютерной системе заключается в использовании строки битов, называемой двоичным числом — числом в двоичной системе счисления (символ также может быть представлен строкой би­тов, или символа).

Основание позиционной системы счисления — количество (Р) различных цифр, используемых для изображения числа в позиционной системе счисления. Значения цифр лежат в пределах от 0 до Р-1.

В общем случае запись любого числа N в системе счисления с основанием Р будет представлять собой ряд (многочлен) вида: (1.1)


Нижние индексы определяют местоположение цифры в числе (разряд):

• положительные значения индексов — для целой части числа разрядов);

• отрицательные значения — для дробной (s разрядов). Максимальное целое число, которое может быть представлено в т разрядах:

Nmax = Рт - 1

Минимальное значащее, не равное 0 число, которое можно записать в s разрядах дробной части:

Nmin = Ps

Имея в целой части числа т разрядов, а в дробной — s, можно записать Pm+s разных чисел

Двоичная система счисления (основание Р=2) использует для представления информации две цифры — 0 и 1.

Существуют простые правила перевода чисел из одной системы счисления в другую, основанные, в том числе, и на выражении (1.1).

Например, двоичное число 101110,101 равно десятичному числу 46,625:

101110,1012= 1 х25 + 0х24+ 1 х23+ 1 х22+ 1 х2' + 0х2° +1 х 2-1 + 0 х 2-2 + 1 х 2-3 = 46,62510.

Практически перевод из двоичной системы в десятичную можно легко выполнить, надписав над каждым разрядом соответствующий ему вес и сложив затем произведения значений соответствующих цифр на их веса.

Например, двоичное число 010000012 равно 6510. Действительно, 64 х 1 + 1 х 1 = 65.

Вес
Цифра

Таким образом, для перевода числа из позиционной системы счисления с любым основанием в десятичную систему счисления можно воспользоваться выражением (1.1).

Обратный перевод из десятичной системы счисления в систему счисления с другим основанием непосредственно по (1.1) затруднителен, поскольку все арифметические действия, предусмотренные этой формулой, следует выполнять в той системе счисления, в которую число переводится. Обратный перевод выполняется значительно проще, если предварительно преобразовать отдельно целую и дробную части выражения (1.1) к виду:


Алгоритм перевода числа из десятичной системы счисления в систему счисления с основанием Р, основанный на этих выражениях, позволяет оперировать числами в той системе счисле­ния, из которой число переводится, и может быть сформулиро ван следующим образом (при переводе смешанного числа следует переводить его целую и дробную части отдельно):

• для перевода целой части числа ее, а затем целые части получающихся частных от деления следует последовательно делить на основание Р до тех пор, пока очередная целая часть частного не окажется равной 0. Остатки от деления, записанные последовательно справа налево, образуют целую часть числа в системе счисления с основанием Р;

• для перевода дробной части числа ее, а затем дробные части получающихся произведений следует последовательно умножать на основание Р до тех пор, пока очередная дробная часть произведения не окажется равной 0 или не будет достигнута нужная точность дроби. Целые части произве­дений, записанные после запятой последовательно слева направо, образуют дробную часть числа в системе счисле­ния с основанием Р.

Пример 1 Пусть требуется перевести смешанное число (например, 46,625) из десятичной в двоичную систему счисления.

1. Переводим целую часть числа: 46 : 2 = 23 (остаток 0);

23 : 2 = 11 (остаток 1); 11 : 2 = 5 (остаток 1); 5:2 = 2 (остаток 1); 2:2=1 (остаток 0); 1:2 = 0 (остаток 1).

Записываем остатки последовательно справа налево — 101110, т.е.

4610= 1011102.

2. Переводим дробную часть числа: 0,625x2= 1,250;

0,250x2 = 0,500;

0,500 х 2 = 1,000 (дробная часть равна 0 => стоп).

Записываем целые части получающихся произведений после запятой последовательно слева направо — 0,101, т. е.

0,62510 = 0,1012.

Окончательно: 46,62510= 101110,1012.