Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие по информатике

.pdf
Скачиваний:
145
Добавлен:
21.03.2015
Размер:
2.03 Mб
Скачать

-Математика (теория математического моделирования, дискретная математика, математическая логика, теория алгоритмов);

-Лингвистика (учение о формальных языках и знаковых системах);

-Кибернетика (теория информации, теория управления);

-Физика, Химия, Электроника, Радиотехника (разработка и

создание аппаратных средств информатизации).

Ядро современной информатики образуют три составные части:

-теоретическая информатика (изучение структуры и общих свойств информации, информационных процессов, разработка общих принципов построения информационной техники и технологии);

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

-информационные системы и технологии (анализ потоков информации, оптимизация, структурирование, реализация информационных процессов и др.).

Контрольные вопросы по теме 1

1.Какой вид сигнала предпочтительней для информационной техники?

2.По каким признакам осуществляется классификация информации?

3.Как классифицируется информация по ее общественной значимости?

4.Перечислите атрибутивные свойства информации.

5.Перечислите прагматические свойства информации.

6.Перечислите динамические свойства информации.

7.Какие определения информатики вы знаете?

8.Какие составные части образуют ядро современной информатики?

ТЕМА 2. АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЭВМ

1. Меры информации синтаксического уровня

Для измерения информации на синтаксическом уровне вводятся два параметра: объем информации (данных) – объемный подход и количество информации – статистический поход.

Объемный подход

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

11

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

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

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

Информационная емкость символа I, т. е. количество информации, которое несет один знак, зависит от количества символов в алфавите N:

I = log2 N

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

N=2I

Количество информации V, которое содержит сообщение, закодированное с помощью знаковой системы, равно произведению количества информации, которое несет один знак I, на количество знаков в сообщении n.

V=I n

Вкомпьютерных системах для кодирования информации

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

Бит – единица информации в компьютере, представляющая собой, двоичный разряд, который может принимать значение 0 или 1. Название произошло от «binary digit» – бинарная единица.

Байт – восемь последовательных битов. Название Байт было впервые использовано в 1956 году В. Бухгольцем при проектировании первого суперкомпьютера IBM 7030 для пучка одновременно передаваемых в устройствах ввода/вывода битов (6 каналов), позже в рамках того же проекта расширили байт до восьми (23) бит. Более крупными единицами информации являются:

1Кбайт = 210 байт =1024 байта; 1Мбайт = 220 байт = 1024 Кбайта = 1 048 576 байт;

1Гбайт = 230 байта = 1024 Мбайта = 1 073 741 824 байт 1Тбайт = 240 байта = 1024 Гбайта = 1 099 511 627 776 байт

1Пбайт = 250 байта = 1024 Тбайта = 1 125 899 906 842 624 байт

12

Статистический подход

В данном случае информация как снятая неопределенность. Количественно выраженная неопределенность состояния системы получила название энтро ия. Чем больше информации получает наблюдатель, тем больше снимается неопределенность, и энтропия системы уменьшается. Если энтропия, равна нулю, то о системе имеется полная информация, и наблюдателю она представляется целиком упорядоченной.

За единицу количества информации принимают выбор одного из двух равновероятных сообщений («да» или «нет», «1» или «0»). Она также названа бит.

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

Пример 2. Сообщение о том, как упала монета после броска – «орлом» или «решкой», также несет один бит информации.

Пример 3. В соревновании участвуют 4 команды. Сообщение о том, что третья команда набрала большее количество очков, уменьшает первоначальную неопределенность ровно в четыре раза (дважды по два) и несет два бита информации.

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

Пример 4. Сколько вопросов надо задать, чтобы отгадать одну из 32 карт (колода без шестерок), если ответами могут быть лишь «да» или «нет»?

Достаточно всего лишь 5 вопросов, но задавать их надо так, чтобы после каждого ответа можно было «отбрасывать» из рассмотрения ровно половину карт, среди которых задуманной не может быть. Такими, например, являются вопросы о цвете масти карты («Задуманная карта красной масти?»), о типе карты («Задуманная карта – картинка?») и т. п. То есть сообщение о том, какая карта из 32 задумана несет 5 бит информации.

Во всех приведенных примерах число равновероятных исходов события, о котором идет речь в сообщении, было кратным степени числа 2 (4 = 22, 32 = 25). Поэтому сообщение «несло» количество бит информации всегда было целым числом. Но в реальной практике могут встречаться самые разные ситуации.

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

В этом случае мы не можем сказать, что первоначальная неопределенность уменьшилась вдвое (иными словами, что мы получили

13

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

Из примера следует, что данное выше определение количества информации слишком упрощено. Уточним его.

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

Научный подход к оценке сообщений был предложен еще в 1928

году Р. Хартли. Расчетная формула имеет вид:

I = log2 N или 2I = N,

где N – количество равновероятных событий (число возможных выборов),

I – количество информации.

Если N = 2 (выбор из двух возможностей), то I = 1 бит.

Иногда формула Хартли записывается иначе. Так как наступление

каждого из

N возможных событий имеет

одинаковую

вероятность

p = 1 / N, то N = 1 / p и формула имеет вид

 

 

 

I = log2 (1/p) = - log2 p.

 

Более

общим случаем вычисления

количества

информации

всообщении об одном из N, является случай неравновероятных событий. Этот подход был предложен К.Шенноном в 1948 году.

Пусть имеется строка текста, содержащая тысячу букв. Буква «о»

втексте встречается примерно 90 раз, буква «р» ~ 40 раз, буква «ф» ~ 2 раза, буква «а» ~ 200 раз. Поделив 200 на 1000, мы получим величину

0.2, которая представляет собой среднюю частоту, с которой в рассматриваемом тексте встречается буква “а”. Вероятность появления буквы «а» в тексте pa можем считать приблизительно равной 0.2.

Аналогично, pр = 0.04, pф = 0.002, ро = 0.09.

Далее поступаем согласно К. Шеннону. Берем двоичный логарифм от величины 0.2 и называем то, что получилось количеством информации, которую переносит одна-единственная буква «а» в рассматриваемом тексте. Точно такую же операцию проделаем для каждой буквы. Тогда количество собственной информации, переносимой одной буквой равно

hi = log2 1/pi = - log2 pi,

где pi – вероятность появления в сообщении i-го символа алфавита. Удобнее в качестве меры количества информации пользоваться не

значением hi, а средним значением количества информации, приходящейся на один символ алфавита

H = S pi hi = - S pi log2 pi

Значение Н достигает максимума при равновероятных событиях, то есть при равенстве всех pi

pi = 1 / N.

В этом случае формула Шеннона превращается в формулу Хартли.

14

2. Меры информации семантического уровня

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

Тезаурус – совокупность сведений, которыми располагает пользователь или система.

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

Относительной мерой количества семантической информации может служить коэффициент содержательности С, который определяется как отношение количества семантической информации к ее объему.

C

I

c

.

 

 

 

 

 

V

 

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

3. Меры информации прагматического уровня

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

Ilog2 p1 .

Пp0

po – вероятность достижения цели до получения информации;

p1 – вероятность достижения цели после получения информации.

15

Возможны 3 случая:

p1> p0, I >0 – количество информации положительно – полезная информация.

p1=p0, I =0 – нулевое количество информации – бесполезная информация.

p1< p0, I <0 – количество информации отрицательно – дезинформация.

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

4. Позиционные системы счисления

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

Основание

Система счисления

Знаки

2

Двоичная

0,1

3

Троичная

0,1,2

4

Четвертичная

0,1,2,3

5

Пятеричная

0,1,2,3,4

8

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

0,1,2,3,4,5,6,7

10

Десятичная

0,1,2,3,4,5,6,7,8,9

12

Двенадцатеричная

0,1,2,3,4,5,б,7,8,9,А,В

16

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

0,1,2,3,4,5,6,7,8,9,A,B,С,D,E,F

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

ввиде суммы произведений коэффициентов на степени основания системы

счисления:

AnAn-1An-2…A1A0A-1A-2…=An∙ Bn +An-1∙Bn-1+…+ A1∙B1+A0∙B0+ A-1∙B-1+A-2∙B-2+…

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

Примеры (десятичный индекс внизу указывает основание системы счисления):

16

23,4310 = 2∙ 101+ 3∙ 100 + 4∙ 10-1 + 3∙ 10-2

(в данном примере знак «3» в одном случае означает число единиц, а в другом - число сотых долей единицы);

69210=6∙102+9∙101+2

(«Шестьсот девяносто два» с формальной точки зрения представляется в виде «шесть умножить на десять в степени два, плюс девять умножить на десять в степени один, плюс два»),

11012= 1∙23+ 1∙22 + 0∙21 + 1∙20; 1123= 1∙32 + 1∙31+ 2∙30;

341,58 = 3∙82 + 4∙81+ 1∙80+ 5∙8-1; A1F,416 = A∙162+ 1∙161 + F∙160 + 4∙16-1.

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

Чтобы еревести целую часть числа из десятичной системы в систему с основанием В, необходимо разделить ее на В. Остаток даст младший разряд числа. Полученное при этом частное необходимо вновь разделить на В - остаток даст следующий разряд числа и т. д. Для перевода дробной части ее необходимо умножить на В. Целая часть полученного произведения будет первым (после запятой, отделяющей целую часть от дробной) знаком. Дробную же часть произведения необходимо вновь умножить на В. Целая часть полученного числа будет следующим знаком и т. д.

Отметим, что кроме рассмотренных выше позиционных систем счисления существуют такие, в которых значение знака не зависит от того места, которое он занимает в числе. Такие системы счисления называются не озиционными. Наиболее известным примером непозиционной системы является римская. В этой системе используется 7 знаков (I, V, X, L, С, D, М), которые соответствуют следующим величинам:

1(1) V(5) X(10) L(50) С (100) D(500) М(10ОО)

Примеры: III (три), LIX (пятьдесят девять), DLV (пятьсот пятьдесят

пять).

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

17

5. Двоичная система счисления

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

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

искомое двоичное число.

 

Например:

Остаток

25:2 = 12

(1),

12:2 = 6

(0),

6:2 = 3

(0),

3:2=1

(1),

1:2 = 0

(1).

Таким образом, 2510=110012.

Для перевода дробной части (или числа, у которого «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,7310 = 0,1011...2.

 

 

Над числами, записанными в любой системе счисления, можно

производить различные

арифметические о ерации. Так, для сложения

и умножения двоичных чисел необходимо использовать таблицу.

Таблицы сложения и умножения в двоичной системе

 

+

 

0

1

 

 

*

0

1

 

0

 

0

1

 

0

0

0

 

1

 

1

10

 

1

0

1

 

Заметим, что при

двоичном

сложении

1 + 1 возникает перенос

единицы в старший разряд точь-в-точь как в десятичной арифметике:

1001

 

1001

+ 11

*

11

1100

 

111

+ 111 . 10101

18

Деление осуществляется по тому же алгоритму что и в десятичной системе – «деление уголком». От делимого выделяется часть большая делителя, но не больше чем на разряд. В результате ставится 1, и записывается делитель под делимым, сносится следующая цифра, если получившееся значение числа превосходит делитель, пишется – 1, если нет – 0 и сносится следующая цифра, и т. д., до получения результата или достижения требуемой точности.

Например, найти частное чисел 10000012

и 1012.

1000001| 101

101

1101

110

 

101

 

101

 

101

 

0

 

Проверка: 10000012 =6510; 1012= 510; 11012 = 1310; 65: 5= 13.

6.Восьмеричная и шестнадцатеричная системы счисления

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

Хотя компьютер «знает» только двоичную систему счисления, часто

сцелью уменьшения количества записываемых на бумаге или вводимых

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

Перевод чисел из десятичной системы счисления в восьмеричную производится (по аналогии с двоичной системой счисления) с помощью делений и умножений на 8. Например, переведем число 58,32(10):

58 : 8 = 7 (2 в остатке), 7 : 8 = 0 (7 в остатке).

0,32 ∙ 8 = 2,56 (целая часть 2),

0,56 ∙ 8 = 4,48 (целая часть 4), 0,48 ∙ 8 = 3,84 (целая часть 3),...

Таким образом, 58,3210 = 72,243... 8 (из конечной дроби в одной системе может получиться бесконечная дробь в другой).

Перевод чисел из десятичной системы счисления в шестнадцатеричную производится аналогично.

С практической точки зрения представляет интерес процедура взаимного преобразования двоичных, восьмеричных и шестнадцатеричных чисел. Для перевода целого двоичного числа в восьмеричное необходимо

19

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

Например:

11011001 = 11 011 001, т.е. 110110012 = 3318

Заметим, что группу из трех двоичных цифр часто называют «двоичной триадой». Перевод целого двоичного числа в шестнадцатеричное производится путем разбиения данного числа на группы по 4 цифры – «двоичные тетрады»:

1100011011001 = 1 1000 1101 1001, т.е. 11000110110012= 18D916.

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

0,11000111012 = 0,110 001 110 100 = 0,61648, 0,11000111012 = 0,1100 0111 0100 =0,С7416.

Перевод восьмеричных (шестнадцатеричных) чисел в двоичные производится обратным путем – сопоставлением каждому знаку числа

соответствующей тройки (четверки) двоичных цифр.

 

 

Преобразования

чисел

из

двоичной

в

восьмеричную

и шестнадцатеричную системы и наоборот столь просты (по сравнению с операциями между этими тремя системами и привычной нам десятичной) потому, что числа 8 и 16 являются целыми степенями числа 2. Этой простотой и объясняется популярность восьмеричной и шестнадцатеричной

систем в вычислительной технике и программировании.

 

 

Арифметические

действия

с

числами

в

восьмеричной

и шестнадцатеричной

системах счисления выполняются

по аналогии

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

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

Например, число 11410

114 – 2 6 – 2 5 – 2 4 – 2 1 = 0.

Таким образом, 11410 = 11100102.

114 – 1∙82 = 114 – 64 = 50, 50 – 6∙81 = 50 – 48 = 2,

2 – 2∙80 = 2 – 2 = 0.

Итак, 11410= 1628.

20