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

Информатика и ИС

.pdf
Скачиваний:
13
Добавлен:
29.05.2015
Размер:
927.97 Кб
Скачать

Рис. 16 Схема дискретизации непрерывного сигнала

Как видно из рисунка, результат измерений не является точным аналогом непрерывного электрического сигнала. Насколько все же соответствует "цифровой" звук аналоговому? Очевидно, что это соответствие будет тем полнее, чем чаще происходят измерения и чем они точнее. Частота, с которой производятся измерения, называется частотой дискретизации. Когда мы говорим, что частота дискретизации 44,1 кГц, то это значит, что сигнал измеряется 44100 раз в течении секунды.

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

воспроизведен звук. Однако, пропорционально увеличению частоты возрастают:

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

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

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

Например, при записи музыки на компакт-диски используются 16-битное кодирование при частоте дискретизации 44,032 кГц, при работе же с речью достаточно 8-битного кодирования при частоте 8 кГц.

Считается, что диапазон частот, которые слышит человек, составляет от 20 Гц до 20000 кГц. Согласно теореме Найквиста-Котельникова, для того, чтобы аналоговый (непрерывный по времени) сигнал можно было точно восстановить по его отсчетам, частота дискретизации должна быть как минимум вдвое больше максимальной звуковой частоты. Таким образом, если реальный аналоговый сигнал, который мы собираемся преобразовать в цифровую форму, содержит частотные компоненты от 0 Гц до

20 кГц, то частота дискретизации такого сигнала должна быть не меньше, чем 40 кГц. Сегодня самыми распространенными частотами дискретизации являются 44,1 кГц и 48 кГц. В последнее время выяснено, что обертоны, расположенные свыше 20 кГц, вносят немалый вклад в звучание. Поэтому появляются преобразователи, использующие частоты дискретизации 96 кГц и 192 кГц, а в недалеком будущем ожидается появление систем и с частотой 384 кГц.

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

Например, стереофонический звуковой сигнал длительностью 60 с, оцифрованный с частотой дискретизации 44,1 кГц, при 16-разрядном квантовании для хранения потребует на около 10 Мб: 2

(стереофонический) х 60 (с) х 44100 (ед/с) х 2 (байта) = 10 584 000 байт = 10 336 Кб = = 10,094 Мб.

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

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

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

Сходство в кодировании числовой и текстовой информации состоит в следующем: чтобы можно было сравнивать данные этого типа, у разных чисел (как и у разных символов) должен быть различный код. Основное отличие числовых данных от символьных заключается в том, что над числами кроме операции сравнения производятся разнообразные математические операции: сложение, умножение, извлечение корня, вычисление логарифма и пр. Правила выполнения этих операций в математике подробно разработаны для чисел, представленных в позиционной системе счисления. Многовековая история развития математики показывает, что именно позиционный принцип позволяет использовать эти правила как универсальные алгоритмы, справедливые для системы счисления с любым основанием: 2, 3, 8, 10, 16, 60 и пр.

Система счисления – совокупность приемов обозначения чисел, способ записи чисел.

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

Так, в числе 575,5 последняя цифра "5" передает ("весит") половинку единицы, предпоследняя цифра "5" передает пять единичек, а первая цифра "5" передает уже пятьсот единиц. Это число можно записать так:

575 = 5 102 + 7 101 + 5 100 + 5 10–1.

Основание системы счисления – это:

число различных цифр, используемых для записи чисел;

количество единиц младшего разряда, соответствующих одной единице следующего старшего разряда.

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

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

В шестнадцатеричной системе счисления используется 16 цифр: первые десять привычные арабские цифры, а для обозначения оставшихся шести цифр используются первые шесть прописных букв латинского алфавита (A, B, C, D, E, F).

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

Заметим, что обычно основание системы счисления указывается как нижний индекс, например,

123,510 1101,1012 120,78 9А07,С816.

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

Пусть запись числа в цифровой форме состоит из цифр аn аn–1 аn–2 ... а2 а1 a0 , а–1 а–2...

Если это число представлено в позиционной системе счисления с основанием р, то многочленная форма представления числа имеет следующий вид:

аnрn + аn–1 pn–1 + аn–2pn–2 +...+ а2p2 + а1p1 +а0p0 +а–1p-1 +а–2p–2 +... .

Перевести число из p-ричной в десятичную систему счисления можно, записав его в многочленной форме и вычислив значение полученного многочлена.

ПРИМЕРЫ

123,510 = 1* 102 + 2* 101 + 3* 100 + 5* 10-1.

1101,1012 = 1* 23 + 1*22 + 0* 21 + 1* 20 + 1* 2-1 + 0* 2-2 + 1* 2-3. 120,78 = 1* 82 + 2* 81 + 0* 80 + 7* 8-1.

9А07,С816 = 9* 163 + 10* 162 + 0* 161 + 7* 160 + 12* 16-1 + 8 * 16-2.

Произведя соответствующие вычисления, Вы получите: 1101,1012 = 8+4+0+1+0,5+0,25+0,125 = 13,87510. 120,78 = 64+16+0+0,875 = 80,87510.

9А07,C816 = 36864+2560+0+7+0,75+0,03125 = 39431,7812510.

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

ПРИМЕРЫ

Базис десятичной системы счисления: ..., 10n, ..., 1000, 100, 10, 1, 0.1, 0.01, ... .

Базис двоичной системы счисления: ..., 2n, ..., 16, 8, 4, 2, 1, 1/2, 1/4, ....

Базис троичной системы счисления: ..., 3n, ..., 81, 27, 9, 3, 1, 1/3, 1/9, ... .

Базис шестнадцатеричной системы счисления: ..., 16n, ..., 256, 16, 1, 1/16, 1/256, ... .

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

ПРИМЕР Перевод числа 2610 в двоичную систему счисления:

максимальный элемент базиса, меньший 26 – это 16 – входит 1 раз (остаток 26 – 16 = 10 единиц); элемент 8 входит в остаток 1 раз (остаток 10 – 8 = 2 единицы); элемент 4 входит в остаток 0 раз (остаток 2 – 0 = 2 единицы); элемент 2 входит в остаток 1 раз (остаток 2 – 2 = 0 единиц); элемент 1 входит в остаток 0 раз.

Таким образом, 2610 = 110102 . Схематично это можно представить так:

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

максимальный элемент базиса, меньший 26 – это 16 – входит 1 раз (остаток 26 – 16 = 10 единиц); элемент 1 входит в остаток 10 раз (обозначается цифрой А) (остаток 10 – 10 = 0 единиц); Таким образом, 2610 = 1А16 (рис. 17).

Рис. 17

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

Алгоритмы для перевода целых числе

Постановка задачи. Дано число Аq (в системе счисления с основанием q). Заменить его равным числом Хр (в системе счисления с основанием р).

Алгоритм I. Для того, чтобы целое число Аq заменить равным ему целым числом Хр, необходимо число Аq разделить нацело по правилам q-арифметики на основание р. Остаток деления запомнить, а частное вновь нацело разделить на р. И так далее, пока частное не станет равно 0.

Цифрами искомого числа Хр являются остатки от деления, выписанные так, что последний остаток является цифрой старшего разряда числа Хр.

Алгоритм II пригоден для любых р и q, однако рекомендуется для перевода чисел из десятичной системы счисления в произвольную систему счисления.

Пример

 

 

2610 --> Х2

2610 --> Х3

2610 --> Х16

q = 10, p = 2

q = 10, p = 3

q = 10, p = 16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2610

= 110102

2610

= 2223

 

2610 = 1A16

 

 

 

Алгоритм II. Для того чтобы данное целое число Аq заменить равным ему числом Xр, достаточно цифру старшего разряда числа Аq умножить по правилу р-арифметики на основание q. К полученному произведению прибавить цифру следующего разряда числа Аq Полученную сумму вновь умножить на q по правилам р-арифметики, вновь к полученному произведению прибавить цифру следующего (более младшего) разряда. И так до тех пор, пока не будет прибавлена младшая цифра числа Аq.

Алгоритм II пригоден для любых р и q, однако рекомендуется при переводе из произвольной системы счисления в десятичную.

Пример

 

 

 

101102 --> X10

2078 --> X10

2F516 --> X10

(((1*2+0)*2+1)*2+1)*2+0

(2*8+0)*8+7 =

(2*16+15)*16+5

= 2210

 

13510

=

 

2)

5) 11) 22

16) 135

= 75710

 

 

 

 

47)

757

Алгоритмы для перевода правильных дробей

Постановка задачи. Дано число 0, Аq (в системе счисления с основанием q). Заменить его равным числом 0, Хр (в системе счисления с основанием р).

Алгоритм III. Для того, чтобы исходную правильную дробь 0, Aq заменить равной ей правильной дробью 0, Хр, нужно 0, Aq умножить на "новое" основание р по правилам q-арифметики, целую часть полученного произведения считать цифрой старшего разряда искомой дроби. Дробную часть полученного произведения вновь умножить на р, целую часть полученного результата считать следующей цифрой искомой дроби. Эти операции продолжать до тех пор, пока дробная часть не окажется равной нулю, либо не будет достигнута требуемая точность.

Алгоритм рекомендуется при переводе из десятичной системы счисления в произвольную.

Пример

Дробь 0,37510 заменить равной ей двоичной дробью.

Решение

0,375 * 2 = 0,750

0,75 * 2 = 1,50 0,5 * 2 = 1,0 (дробная часть равна 0) 0,37510=0,0112

Алгоритм IV. Для того чтобы исходную правильную дробь 0, Aq заменить равной ей правильной дробью 0, Хр, необходимо цифру младшего разряда дроби 0, Аq разделить на основание q по правилам р- арифметики, к полученному частному прибавить цифру следующего (более старшего) разряда и далее поступать так же, как и с первой взятой цифрой.

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

Алгоритм рекомендуется при переводе из произвольной системы счисления в десятичную.

Пример

Дробь 0,11012 заменить равной ей десятичной правильной дробью.

Решение

1 : 2 + 0 = 0,510

0,5 : 2 + 1 = l,2510

1,25 : 2 + 1 = 1,62510

1,625 : 2 + 0 = 0,812510

0,11012 = 0,812510.

Алгоритмы перевода чисел в системы счисления с кратными основаниями

Постановка задачи. Перевести число Аq из системы счисления с основанием q в систему счисления с основанием qn, где n – натуральное число.

Алгоритм V. Для записи двоичного числа в системе счисления с основанием q = 2n достаточно данное двоичное число разбить на группы вправо и влево от десятичной точки по п цифр в каждой группе. Затем каждую такую группу следует рассмотреть как n-разрядное двоичное число и записать его как цифру в системе с основанием q = 2n.

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

Пример

Число 1011000010,001l0012 заменить равным ему числом восьмеричной системы счисления, т.е. сис-

темы с основанием q = 23, и шестнадцатеричной системы счисления, т.е. системы счисления с основанием q = 24.

Решение

Для перевода в восьмеричную систему счисления разбиваем двоичное число на группы по три циф-

ры в каждой:

 

 

 

 

 

 

001

011

000

010

, 001

100

100

– двоичное чис-

 

 

 

 

 

 

 

ло

1

3

0

2

,1

4

4

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

 

 

 

 

 

 

 

число

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

12 = 18; 0112 = 38; 0002 = 08; 0102 = 28; 0012 = 18; 1002 = 48.

Для перевода в шестнадцатеричную систему счисления разбиваем двоичное число на группы по че-

тыре цифры в каждой:

 

 

0010

1100

0010

, 0011

0010

– двоичное число

2

С

2

, 3

2

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

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

102 = 216 ; 11002 = С16 ; 00102 = 216 ; 00112 = 316 ; 00102 = 216.

Постановка задачи. Перевести число Аq из системы счисления с основанием qn в систему счисления с основанием q, где n – натуральное число.

Алгоритм VI. Для замены числа, записанного в системе с основанием р = 2n, равным ему числом в двоичной системе счисления достаточно каждую цифру данного числа заменить n-разрядным двоичным числом.

Пример

 

 

 

 

 

Число 2607,348

заменить равным ему двоичным числом.

В соответствии с алгоритмом запишем:

2

6

0

7

,3

4

– восьмеричное число;

010

110

000

111

,011

100

– двоичное число.

В результате получим 2607,248 = 10110000111,01112.

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

Нетрудно представить себе пишущую машинку, у которой на клавишах восьмеричные цифры: 0, 1, 2, 3, 4, 5, 6, 7 – и на молоточках, которые бьют по бумаге, соответствующие им трехразрядные двоичные числа: 000, 001, 010, 011, 100, 101, 110, 111. Такая машинка позволит всякое восьмеричное число, отстукиваемое на клавиатуре, отпечатать на бумаге в виде равного ему двоичного числа. Замените клавиши на молоточки – и будет изготовлена двоично-восьмеричная кодирующая машинка.

Пример

Число 6В07,D416 заменить равным ему двоичным числом. В соответствии алгоритмом запишем:

6 B 0 7 ,D 4 – шестнадцатеричное число;

0110 1011 0000 0111 ,1101 0100 – двоичное число.

В результате получим 6B07,D416 = 110101100000111,1101012 .

Различия в представлении целых и вещественных чисел

Целые и вещественные числа представляются в памяти компьютера по-разному.

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

Вернемся к первым ЭВМ. Основным видом их "деятельности" были вычисления, но объем оперативной памяти и быстродействие процессора были невелики, и инженерам приходилось придумывать разнообразные способы экономного хранения и обработки чисел, чтобы даже сложные расчеты выполнялись за разумное время.

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

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

Максимальным десятичным числом, которое можно было закодировать таким образом было 25510 = 111111112 = 28 – 1.

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

Максимальным десятичным числом, которое можно было закодировать таким образом было

3276710 = 01111111 111111112 = 215 – 1.

С вещественными числами дело обстоит немного сложнее, поскольку надо было придумать способ, одинаковый для кодирования и больших, и маленьких чисел, т.е. и миллион (1000000), и одну миллионную (0,000001) хотелось бы кодировать посредством одного и того же алгоритма.

В соответствии с принципом позиционности любое десятичное число можно представить как некоторую степень десяти.

Пример

1000000 = 0,1 * 107

0,000001 = 0,1 * 10–5 –123,45 = –0,12345 * 103.

Такое представление чисел называется записью с плавающей точкой (запись 123,45 – запись с фиксированной точкой). В этой записи число имеет четыре характеристики:

знак числа;

знак порядка;

порядок (степень числа 10);

мантисса (дробная часть числа).

При двоичном кодировании необходимо все эти характеристики как-то отразить.

Было решено отводить под вещественные числа 4 байта (32 бита). Три младших байта отводилось под запись мантиссы, а старший байт включал в себя:

один (старший) бит – знак числа: 0 – положительное, 1 – отрицательное;

один бит – знак порядка: 0 – положительный, 1 – отрицательный;

младшие 6 бит – порядок числа.

Если порядок числа был равен 1111112 = 6310, то, следовательно, максимальным числом, которое можно было закодировать таким образом, было 1063.

Пример

Число –123,4510 = –0,12345 103 в памяти компьютера будет представлено так:

В настоящее время, когда быстродействие процессоров и объем оперативной памяти достаточно велики, а обычной разрядностью компьютеров становится разрядность в 32 или 64 бита, уже нет жестких требований к использованию экономных кодов для записи чисел. И сейчас имеется возможность проводить расчеты, величины в которых могут превосходить 1063 во много раз.

Элементы машинной арифметики

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

Примеры

10110

_10110

10110

_10110 |_1011

+ 1011

 

1011

1011

1011

10

 

 

 

 

 

 

 

 

 

100001

1011

10110

0

 

 

 

 

 

 

10110

 

 

 

 

 

 

 

00000

 

 

 

 

 

 

 

10110

.

 

 

 

 

 

 

1110010

 

 

Прямой, обратный, дополнительный коды числа

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

Прямой код двоичного числа – это само двоичное число, причем значение знакового разряда для положительных чисел равно 0, а для отрицательных 1.

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

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

Пример

Путь число кодируется 1 байтом.

Десятич-

Двоичное

Прямой

Обратный

Дополни-

ное число

число

код

код

тельный код

+0,8125

+0,1101

0

0 0001101

0 0001101

 

 

0001101

 

 

–0,8125

–0,1101

1

1 1110010

1 1110011

0001101

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

Сложение чисел производится в дополнительных кодах поразрядно. Единица переноса из знакового разряда теряется.

Вычитание сводится к алгебраическому сложению кода уменьшаемого с кодом вычитаемого, взятого с обратным знаком.

Умножение и деление двоичных чисел производятся в прямом коде и сводятся к двум операциям: сложению и сдвигу кодов. Знак произведения и частного определяется по тем же правилам, что и в десятичной системе счисления.

Тема 4 ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ЭВМ. ПРОГРАММНЫЕ СРЕДСТВА РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ

Данная тема включает в себя следующие разделы: 1 Классификация программного обеспечения (ПО). 2 Системное ПО. Операционные системы.

3 Инструментальное ПО. Среды программирования.

4 Сервисное ПО: архиваторы, антивирусные программы, утилиты.

5Основные виды прикладного ПО.

5.1Программные средства работы с текстом.

5.2Программные средства работы с графикой.

5.3Программные средства работы со звуком.

6 Программные средства для вычислительных работ.

7 Системы искусственного интеллекта.

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

9 Базы данных. Геоинформационные системы.

1 КЛАССИФИКАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ (ПО)

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

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

Какие же виды программных средств можно выделить?

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

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

операционные системы (ОС), необходимые для управления согласованной работой всех устройств и программ компьютера, выполнения команд пользователя;

файловая система;

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

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

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

В прикладном ПО можно выделить следующие группы программных средств (ПС):

ПС для обработки текстов – текстовые редакторы, текстовые процессоры, редакционноиздательские системы, программы-переводчики, программы проверки орфографии и синтаксиса, лингвокорректоры, программы оптического распознавания символов и т.п.;

ПС для обработки числовой информации – электронные таблицы, пакеты математических программ, пакеты для статистической обработки данных и др.;

ПС для обработки графической информации – графические редакторы, аниматоры, программы деловой и презентационной графики, средства работы с трехмерными и видеоизображениями и др.;

ПС для обработки звуковой информации – музыкальные и звуковые редакторы, синтезаторы звука, программы распознавания и синтеза речи и пр.;

ПС, обеспечивающие работу в телекоммуникационных сетях – почтовые программы, поисковые системы, броузеры и пр.;

ПС, обеспечивающие автоматизированное хранение информации – системы управления базами данных (СУБД), построенные с их помощью базы и банки данных (БД и БнД), специализированные ин- формационно-поисковые системы (ИПС) и др.;

ПС, используемые в процессах управления и диагностики – различные типы автоматизированных систем управления (АСУ) и систем автоматизированного управления (САУ), системы поддержки принятия решений (СППР), экспертные системы (ЭС) и пр.;

ПС, применяемые для проведения исследовательских и проектно-конструкторских работ – специализированные моделирующие программы, системы автоматизированного проектирования (САПР) и пр.;

ПС, используемые в обучении – электронные учебники, тренажеры, тесты и пр.;

игровые программы;

программы, созданные пользователем с помощью сред программирования.

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

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