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

Вид материалаКонспект

Содержание


1.9. Операционная система
2. Основные понятия и определения
Подобный материал:
1   2   3   4   5   6   7   8   9   ...   24

1.6. Ошибки


Ошибки, допускаемые при написании программ, разделяют на синтаксические и логические.

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

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

Причина ошибки алгоритма - несоответствие построенного алгоритма ходу получения конечного результата сформулированной задачи.

Причина семантической ошибки - неправильное понимание смысла (сема­нти­ки) операторов языка.


1.7. Функциональная и модульная декомпозиции

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

Один из основных приемов - разбивка алгоритма на отдельные функции и/или модули, используя функциональную и/или модульную декомпозиции соответствен­но.

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

Алгоритм декомпозиции можно представить следующим образом:

- программу делать как последовательность более мелких действий;

- каждую детализацию подробно описать;

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

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

- решение частных задач приводит решению общей задачи;

- выбранная последовательность действий разумна;

- построенная декомпозиция позволяет получать команды, легко реали­зу­емые на выбранном языке программирования.

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

Пример модульной декомпозиции кода Си:





1.8. Файловая система хранения информации

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

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

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

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

Для более удобного размещения файлов введены каталоги.

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

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

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

с:\bc31\doc\lec.doc или d:\work\prog.cpp.

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

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

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

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

В настоящее время наибольшее распространение имеют OC WindowsХХ и LinuxХХ.


2. Основные понятия и определения