Учебное пособие для студентов, обучающихся по специальности - страница 3

^


Раздел 2. СИСТЕМЫ СЧИСЛЕНИЯ

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

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

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

Поэтому все виды информации в компьютере кодируются на машинном языке, в виде логических последовательностей нулей и единиц (например, 1 – есть ток в цепи, 0 – тока в цепи нет). Цифры двоичного кода можно рассматривать как два равновероятных состояния (события). При записи двоичной цифры реализуется выбор одного из двух возможных состояний и, следовательно, она несет количество информации, равное 1 биту.

Важно, что каждая цифра машинного двоичного кода несет информацию в 1 бит. Таким образом, две цифры несут информацию в 2 бита, три цифры – в 3 бита и т.д.

Система счисления – это совокупность приемов и правил наименования и обозначения чисел, позволяющих установить взаимно однозначное соответствие между любым числом и его представлением в виде конечного числа символов. Основанием системы счисления называется количество символов, с помощью которых изображается число в данной системе счисления 1, с. 54.

В любой системе счисления выбирается алфавит, представляющий собой совокупность некоторых символов (слов или знаков), с помощью которого в результате каких-либо операций можно представить любое количество. Изображение какого-либо количества называется числом, а символы алфавита – цифрами. Символы алфавита должны быть разными и значение каждого из них должно быть известно.

В современном мире наиболее распространенной является десятичная система счисления, происхождение которой связано с пальцевым счетом. Она возникла в Индии и в XIII веке была перенесена арабами. Поэтому десятичную систему счисления стали называть арабской, а используемые для записи чисел цифры, которыми мы теперь пользуемся, – 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - арабскими.

С давних времен для подсчетов и вычислений применялись различные системы счисления, например, на Древнем Востоке довольно широко была распространена двенадцатеричная система. Многие предметы (ножи, вилки, тарелки и т. д.) и сейчас считают дюжинами. Число месяцев в году – двенадцать. Эта система счисления сохранилась в английской системе мер (например, 1 фут = 12 дюймов) и в денежной системе (1 шиллинг = 12 пенсов). В Древнем Вавилоне существовала весьма сложная шестидесятеричная система. Она, как и двенадцатеричная в какой-то мере сохранилась и до наших дней (например, в системе измерения времени: 1 ч = 60 мин, 1 мин = 60 с, аналогично в системе измерения углов: 1º = 60 мин, 1 мин = 60 с).

Первые цифры (знаки для обозначения цифр) появились у египтян и вавилонян. У ряда народов (древние греки, сирийцы, финикияне) цифрами служат буквы алфавита. Аналогичная система до XVI века применялась и в России. В Средние века в Европе пользовались системой римских цифр, которую сейчас часто применяют для обозначения глав, частей, разделов в различного рода документах, книгах, для обозначения месяцев и т. д.

Все системы счисления можно разделить на позиционные и непозиционные.

^ Непозиционные системы счисления – система, в которой символы, обозначающие то или иное количество, не меняют своего значения в зависимости от своего местоположения (позиции) в изображении числа.

Запись числа А в непозиционной системе счисления D может быть представлена выражением:

N

AD = D1 + D2 + … + DN =  Di

i=1

где AD – запись числа А в системе счисления D; Di – символы системы.

Непозиционной системой счисления является самая простая система с одним символом (палочкой). Для изображения какого-либо числа в этой системе надо записать количество палочек, равное данному числу. Например, запись числа 12 в такой системе счисления будет иметь вид: 111111111111, где каждая «палочка» обозначена символом 1. Эта системе не эффективна, так как форма записи очень громоздка.

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


Римские цифры

I

V

X

L

C

D

M

Значение (обозначаемое количество)

1

5

10

50

100

500

1000


Запись чисел в этой системе счисления осуществляется по следующим правилам:

  1. если цифра слева меньше, чем цифра справа, то левая цифра вычитается из правой (IV: 1 < 5, следовательно, 5 - 1 = 4, XL: 10 < 50, следовательно, 50 – 10 = 40);

  2. если цифра справа меньше или равна цифре слева, то эти цифры складываются (VI: 5 + 1 = 6, VIII: 5 + 1 + 1 + 1 = 8, XX: 10 + 10 = 20).

Так, число 1964 в римской систем счисления имеет вид MCMLXIV (M – 1000, CM – 900, LX – 60, IV – 4), здесь «девятьсот» получается посредством вычитания из «тысячи» числа «сто», «шестьдесят» - посредством сложения «пятидесяти» и «десяти», «четыре» - посредством вычитания из «пяти» «единицы».

В общем случае непозиционные системы счисления характеризуется сложными способами записи чисел и правилами выполнения арифметических операций. В настоящее время все наиболее распространенные системы счисления относятся к разряду позиционных.

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

Упорядоченный набор символов (цифр) a0, a1, …, an, используемый для представления любых чисел в заданной позиционной системе счисления, называют ее алфавитом, число символов (цифр) алфавита p = n + 1 - ее основанием, а саму систему счисления называют p-ичной. Основание позиционной системы счисления – количество различных цифр, используемых для изображения чисел в данной системе счисления.

Самой привычной системой для нас является десятичная система счисления. Ее алфавит – 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, а основание p = 10, т. е. в этой системе для записи любых чисел используется только 10 различных символов (цифр). Эти цифры введены для обозначения первых 10 последовательных чисел, а все последующие числа, начиная с 10 и т. д., обозначаются уже без использования новых цифр. Десятичная система счисления основана на том, что десять единиц каждого разряда объединяются в одну единицу соседнего старшего разряда, поэтому каждый разряд имеет вес, равный степени 10.Следовательно, значение одной и той же цифры определяется ее местоположением в изображении числа, характеризуемым степенью числа 10.

В позиционной системе счисления число (записанное знаками An, An-1, An-2, …) может быть представлено как сумма степеней основания системы счисления (обозначим его В), умноженных на коэффициенты, которыми являются An, An-1 ...:

An An-1 An-2 …A1 A0 A-1 A-2… = An* Вn + An* Вn-1 + … +A1*B1 + A0*B0 +A-1*B-1 +A-2*B-2…

Например:

45, 1810 = 4*101 + 5*100 + 1*10-1 + 8*10-2

Десятичный индекс внизу числа указывает основание системы счисления.

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

Десятичная

Двоичная

Восьмеричная

Шестнадцатеричная

0

0

0

0

1

1

1

1

2

10

2

2

3

11

3

3

4

100

4

4

5

101

5

5

6

110

6

6

7

111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

A

11

1011

13

B

12

1100

14

C

13

1101

15

D

14

1110

16

E

15

1111

17

F

16

10000

20

10


Арифметические действия над числами в любой позиционной системе счисления производятся по тем же правилам, что и в десятичной системе.

В основе сложения чисел в двоичной системе счисления лежит таблица сложения одноразрядных двоичных чисел:

0 + 0 = 0

0 + 1 = 1

1 + 0 = 1

1 + 1 = 10

В основе вычитания лежит таблица вычитания одноразрядных двоичных чисел. При вычитании из меньшего числа (0) большего (1) производится заем из старшего разряда. В таблице заем обозначен 1 с чертой:

0 – 0 = 0

0 – 1 =11

1 – 1 = 1

1 – 1 = 0

В основе умножения лежит таблица умножения одноразрядных двоичных чисел:

0 * 0 = 0

0 * 1 = 0

1 * 0 = 0

1 * 1 = 1

Операция деления выполняется по алгоритму, подобному алгоритму выполнения деления в десятичной системе счисления. Например, разделим число 1102 на 112 :

1102 112

11 102

0

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

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

  1. Перевод чисел в двоичную систему счисления:

    1. Из восьмеричной системы счисления:

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

Например: 2748 = 010 111 1002

    1. Из десятичной системы счисления:

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

Например: 81 : 2 = 40 (1)

40 : 2 = 20 (0)

20 : 2 = 10 (0)

10 : 2 = 5 (0)

5 : 2 = 2 (1)

2 : 2 = 1 (0)

1 : 2 = 0 (1)

Ответ: 8110 = 10100012

Для перевода дробной части (или числа, у которого «0» целых) умножаем ее на 2, целая часть произведения – первая цифра числа в двоичной системе; затем, отбрасывая у результата целую часть, вновь умножаем на 2 и т.д. Следует заметить, что конечная десятичная дробь при этом вполне может стать бесконечной (периодической) двоичной. Например: 0,73  2 = 1,46 (целая часть 1);

0,46  2 = 0,92 (целая часть 0);

0,92  2 = 1,84 (целая часть 1);

0,84  2 = 1,68 (целая часть 1) и т.д.; в итоге

0,73 10 = 0,1011…2

    1. Из шестнадцатеричной системы счисления:

Нужно каждую цифру шестнадцатеричного числа записать тетрадой (четверкой) чисел двоичной системы счисления.

Например: 9C516 = 1001 1100 01012

  1. Перевод чисел в восьмеричную систему счисления:

    1. Из двоичной системы счисления:

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

Например: 110111, 1012 = 110 111 , 1012 = 67,58

    1. Из десятичной системы счисления:

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

Например: 265 : 8 = 33 (1)

33 : 8 = 4 (1)

4 : 8 = 0 (4)

Ответ: 26510 = 4118

    1. Из шестнадцатеричной системы счисления:

Нужно сначала представить число в двоичной системе счисления, а затем в восьмеричной.

Например: С6, 816 = 1100 0110 , 10002 = 011 000 110 , 1002 = 306,48

  1. Перевод чисел из любой системы счисления в десятичную систему счисления:

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

6 5 4 3 2 1 0

Например: 10001112 = 1 0 0 0 1 1 12= 1*26 + 0*25 + 0*24 + 0*23 + 1*22 + 1*21 + 1*20 = 32 + 0 + 0 + 0 + 4 + 2 + 1 = 3510

  1. Перевод чисел в шестнадцатеричную систему счисления:

    1. Из двоичной системы счисления:

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

Например: 1111011, 1112 = 0111 1011 , 11102 = 7В,Е16

    1. Из десятичной системы счисления:

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

Например: 1756 : 16 = 109 (12 = С)

109 : 16 = 6 (13 = D)

6 : 16 = 0 (6)

Ответ: 175610 = 6DC16

    1. Из восьмеричной системы счисления:

Нужно сначала представить число в двоичной системе счисления, а затем в шестнадцатеричной.

Например: 672, 58 = 110 111 010 , 1012 = 0001 1011 1010 , 10102 = 1BA,A16

Итак, сформулируем общие правила перевода чисел из одной системы счисления в другую:

^ 1. При переводе чисел из десятичной системы счисления в систему с основанием p > 1 исходное число делится нацело на p, после чего запоминается остаток от деления. Полученное частное вновь делится на p, остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления, записанные в системе счисления с основанием p справа налево, образуют результат.

^ 2. При переводе чисел из системы счисления с основанием p в десятичную систему счисления необходимо пронумеровать разряды исходного числа справа налево, начиная с нулевого. Затем вычислить сумму произведений значений разрядов на основание системы счисления в степени, равной соответствующему номеру разряда.

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

4. Для перевода двоичных чисел в восьмеричную (шестнадцатеричную) систему счисления необходимо разбить цифры исходного числа на группы по три (четыре) справа налево. При этом последняя группа может содержать меньше трех (четырех) цифр. Затем каждой группе цифр ставится в соответствие ее восьмеричный (шестнадцатеричный) эквивалент.


Вопросы для самопроверки

  1. Что такое система счисления?

  2. В чем отличие позиционной системы счисления от непозиционной?

  3. Что называется основанием системы счисления?

  4. Как выполняются арифметические действия в позиционных системах счисления?

  5. Сформулируйте правила выполнения переводов чисел из одной системы счисления в другую.


Литература

    1. Акулов, О.А. Информатика: базовый курс: учеб. пособие для студентов / О.А. Акулов, Н.В. Медведев. – М.: Омега-Л, 2005. – 552 с.

    2. Бешенков, С.А. Информатика. Систематический курс. Учебник для 10 класса / С.А. Бешенков, Е.А. Ракитина – М.: Лаборатория Базовых Знаний, 2001. – 432 с.

    3. Могилев, А.В. Информатика: учеб. пособие для студ. высш. пед. учеб. заведений / А.В. Могилев, Е.К. Хеннер, Н.И. Пак; под ред. А.В. Могилева. – М.: Издательский центр «Академия», 2006. – 336 с.

    4. Угринович, Н.Д. Информатика и информационные технологии. Учебник для 10-11 классов / Н.Д. Угринович. – М.: Бином. Лаборатория знаний, 2002. – 512 с.




9509630911325872.html
9509715571129203.html
9509878518152256.html
9509979292457769.html
9510040056859194.html