Компоновка программных модулей и запись программной кодировки в целевое устройство.
Компоновка – это один из этапов создания исполняемого файла. Компилировать – проводить трансляцию машинной программы с проблемно-ориентированного языка на машинно-ориентированный язык (создание объектного кода) для ее исполнения. Результатом компиляции является объектный файл с необходимыми внешними ссылками для компоновщика. Программа уже переведена в машинные инструкции, однако еще не полностью готова к выполнению. В объектном файле имеются ссылки на различные системные функции. Даже если в программе явно не упомянута ни одна функция, необходим, по крайней мере, один вызов системной функции – завершение программы и освобождение всех принадлежащих ей ресурсов.
7.Понятие структурного и модульного программированияСтруктурное программирование – структура программы должна отражать структуру решаемой задачи, чтобы алгоритм решения был ясно виден из исходного текста. С этой целью введено понятие подпрограммы. Структурное программирование — методология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры блоков. Предложена в 70-х годах XX века Э. Дейкстрой, разработана и дополнена Н. Виртом.В соответствии с данной методологиейЛюбая программа представляет собой структуру, построенную из трёх типов базовых конструкций:последовательное исполнение — однократное выполнение операций в том порядке, в котором они записаны в тексте программы;
ветвление — однократное выполнение одной из двух или более операций, в зависимости от выполнения некоторого заданного условия;
цикл — многократное исполнение одной и той же операции до тех пор, пока выполняется некоторое заданное условие (условие продолжения цикла).
Разработка программы ведётся пошагово, методом «сверху вниз».МОДУЛЬНОЕ ПРОГРАММИРОВАНИЕ (modularprogramming). Способ разработки программ, при котором программа разбивается на относительно независимые составные части - программные модули. При этом каждый модуль может разрабатываться, программироваться, транслироваться и тестироваться независимо от других. Внутреннее строение модуля для функционирования всей программы, как правило, значения не имеет. При модификации алгоритма, реализуемого модулем, структура программы не должна меняться.
8. Функциональная и модульная декомпозиции в программированииФункциональная декомпозиция- метод разбивки большой программы на отдельные функции, т.е. общий алгоритм - на отдельные шаги, которые потом и оформляют в виде отдельных функций.
Алгоритм декомпозиции можно представить следующим образом:
- программу делать как последовательность более мелких действий;
- каждую детализацию подробно описать;
- каждую детализацию представить в виде абстрактного оператора, который должен однозначно определять нужное действие, и в конечном итоге эти абстрактные действия заменятся на группы операторов выбранного языка программирования.
При этом надо помнить, что каждая детализация – это один из вариантов решения, и поэтому необходимо проверять, что - решение частных задач приводит решению общей задачи;
- выбранная последовательность действий разумна;
- построенная декомпозиция позволяет получать команды, легко реализуемые на выбранном языке программирования.
Единицей компиляции в языке Си является отдельный файл (модуль). Модульная декомпозиция представляет собой разбиение программы на несколько отдельных файлов, каждый из которых решает отдельную конкретную задачу и, как правило, облегчает процесс ее работы. Кроме того, код программы, разделенный на отдельные файлы, позволяет части этого кода использовать в других программах.
9.Операционная система. Файловая система хранения информацииОперационная системаВся работа компьютера осуществляется под управлением специальных программ, называемых операционной системой (ОС). С точки зрения пользователя ОС представляет широкий набор системных команд, задавая которые можно потребовать от ПЭВМ выполнения многих полезных процедур и действий Часть программ ОС предназначена для управления процессом выполнения задач. Имеется группа программ, так называемого администратора системы, позволяющая следить за работой группы пользователей в рамках системы. Важное место занимает блок программ, обеспечивающих обмен сообщениями между пользователями сети, в том числе через интернет. Удобства, предоставляемые пользователю, существенно зависят от качества ОС, которые по мере совершенствования компьютеров постоянно развиваются. В настоящее время наибольшее распространение имеют OCWindowsХХ и LinuxХХ.Для размещения информации и программ на различных устройствах компьютера, необходимых пользователю, была разработана концепция файлов. Под файлом понимается поименованное на внешнем носителе место (запоминающее устройство, диск и т.п.), отведенное для размещения и (или) чтения некоторой информации. При этом файл может быть пустым, т.е. место отведено, поименовано, но информация отсутствует. Информация, помещенная в файл, получает имя этого файла, поэтому файлом часто называют эту размещаемую информацию. За работу с файлами в компьютере отвечают специальные программы, набор которых называется файловой системой, основные функции которой - предоставить пользователю удобные средства для работы с данными на всевозможных носителях. Имя, которое присваивается файлу, может иметь тип, обычно называемый «расширение». Имя и тип разделяются точкой. При отсутствии типа точка необязательна. Для более удобного размещения файлов введены каталоги. Каталог (папка) – это группа файлов на одном носителе, имеющий свое имя. Если каталог вложен внутрь другого каталога, он является подкаталогом.