Кодирование информации
Кодирование текстовой информации выполняется с помощью символов.
С помощью 1 байта можно кодировать 256 значений. Первые 128 кодов (с 0 до 127) – стандартные и обязательные для всех стран. Эту половину таблицы кодов называют таблицей ASCII
В этой части таблицы размещаются прописные и строчные буквы английского алфавита, символы чисел от 0 до 9, все знаки препинания, символы арифметических операций, специальные коды. Коды читают а-эс-цэ-и (АСКИ-коды).
Первых 32 кода – управляющие, которые не используются для представления информации (от 0 до 31).
32 символ – пробел.
33 – 47 – специальные символы, знаки препинания.
48 – 57 – цифры.
58 – 64 математические символы и знаки препинания.
65 – 90 – прописные буквы английского алфавита.
91 – 96 – специальные символы.
97 – 122 – строчные буквы английского алфавита.
123 – 127 – специальные символы.
Unicode
Стандарт состоит из двух частей: универсального набора символов (Universal Character Set) и правил трансформации (Unicode Transformation Format). Универсальный набор символов предполагает описание всех возможных при записи текстов символов в виде общей таблицы кодов. Правила трансформации определяют способ записи этих кодов.
Первая версия стандарта предполагала использование двух байтов для кодирования каждого символа. В дальнейшем это кодовое пространство было расширено.
Сейчас чаще всего применяется способ трансформации UTF-8, обеспечивающий совместимость с предыдущими реализациями и стандартами. В частности, коды менее 128 записываются одним байтом, что автоматически превращает их в коды ASCII.
Применение этого стандарта кодирования позволяет объединять в одном тексте слова на различных языках (без ограничений на их количество), использовать устаревшие языки, дополнительные символы.
Наиболее переносимым и легко используемым с технической точки зрения способом хранения и передачи текста являются текстовые файлы. По сути, эти файлы представляют собой последовательности символов, разбитых на абзацы или строки.
Структуры данных
Необходимым условием построения алгоритма является формализация данных, т.е. приведение информации к некоторой информационной модели уже описанной и исследованной. Когда такая модель найдена, говорят, что определена абстрактная структура данных.
Абстрактная структура данных описывает признаки и свойства объекта, взаимосвязь между элементами объекта, а также возможные операции над данным объектом или классом объектов.
· целые числа;
· вещественные числа;
· символы;
· логические значения.
динамических структур размер которых меняется во время выполнения программы, программисту приходится осуществлять самостоятельно, используя базовые типы данных
Списки
Линейный список — последовательность линейно связанных элементов, для которых разрешены операции добавления элементов в произвольное место списка и удаление любого элемента. Линейный список однозначно задается указателем на начало списка. Типовыми операциями над списками являются: обход списка, поиск заданного элемента, вставка элемента сразу после или перед определенным элементом, удаление заданного элемента, объединение двух списков в один, разбиение одного списка на два и более списков и т.п.
Кольцевые списки — такая же структура, как и линейный список, но имеющая дополнительную связь между последним и первым элементом, то есть следующим за последним элементом является первый элемент.
Стек — частный случай линейного односвязного списка, для которого определены две операции: добавление элемента в вершину стека (перед первым элементом) и удаление элемента из вершины стека (удаление первого элемента).
Очередь — частный случай линейного односвязного списка, для которого разрешены только две операции: добавление элемента в конец (хвост) очереди и удаление элемента из начала (головы) очереди.
Деревья
Дерево — это совокупность элементов, называемых узлами, в которой выделен один элемент (корень), а остальные элементы разбиты на непересекающиеся множества (поддеревья), каждое из которых является деревом, при этом корень каждого поддерева является потомком корня дерева, т.е. все элементы связаны между собой отношением (предок–потомок). В результате образуется иерархическая структура узлов. Узлы, которые не имеют ни одного потомка, называются листьями. Над деревом определены следующие операции: добавление элемента в дерево, удаление элемента из дерева, обход дерева, поиск элемента в дереве.
Двоичное (бинарное) дерево — частный случай дерева, в котором каждый узел может иметь не более двух потомков, являющихся корнями левого и правого поддерева.
Графы
Граф — это множество элементов, называемых вершинами графа вместе с набором отношений между этими вершинами, называемых ребрами графа.
В силу того, что с помощью графов можно описывать объекты произвольной структуры, графы являются основным средством для описания структур сложных объектов и функционирования систем.
Если каждому ребру к тому же приписано некоторое число (вес), то такой граф называют взвешенным.
Бинарное дерево также легко представить в памяти компьютера с помощью одномерного массива, при этом в первом элементе массива будет храниться корень дерева, а потомки узла дерева, хранящегося в i-м элементе массива, будут располагаться в 2i-м и (2i + 1)-м элементах соответственно. Если потомок у узла отсутствует, то соответствующий элемент будет равен, например, 0. Рекурсивная процедура обхода дерева t и печати его элементов в этом случае будет выглядеть так:
procedure order(i:integer);
begin
if t[i] <> 0 then
begin
writeln(t[i]);
order(2*i);
order(2*i + 1)
end
end;
Билет 6
6. Понятие операционной системы (ОС). Основные функции. Однозадачные и многозадачные ОС. Классификация программного обеспечения (ПО). Уровни ПО.
Операционная система — важнейшая часть программного обеспечения компьютера, предназначенная для автоматизации планирования и организации процесса обработки программ, ввода-вывода и управления данными, распределения ресурсов, подготовки и отладки программ, других вспомогательных операций обслуживания.
операционная система является программным расширением устройства управления компьютера.
функции:
управление работой каждого блока персонального компьютера и их взаимодействием;
управление выполнением программ;
организацию хранения информации во внешней памяти;
взаимодействие пользователя с компьютером, т.е. поддержку интерфейса пользователя.
В однозадачных системах используются средства управления периферийными устройствами, средства управления файлами, средства общения с пользователями. Однозадачные (MS DOS)
Многозадачные ОС используют все средства, которые характерны для однозадачных, и, кроме того, управляют разделением совместно используемых ресурсов: процессор, ОЗУ, файлы и внешние устройства.
Многозадачные (OS/2, Unix, Windows)