Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Логические основы алгоритмизации
Базовые логические операции: конъюкция (логическое умножение), дизъюнкция (логическое сложение), отрицание (инвертирование). Круглые скобки меняют порядок выполнения операций (сначала выполняются действия в скобках). Также имеются операции отношения <, >, <=, >=, =,!=. Операции сравнения имеют наименьший приоритет.
Эволюция языков программирования. Классификация Языков программирования. Понятие системы программирования
Элементы языков программирования Алфавит — совокупность символов, отоборажаемых (кроме непечатных) на экранах и устройствах печати, или вводимых с клавиатуры. Лексика — совокупность правил, образование цепочек символов (лексем), образующих идентефикаторы (переменные и метки), операторы, операции и другие лексические компоненты языка. Сюда же включаются зарезервированные слова языка программирования, предназначенные для обозначения операторов, встроенных функций и т. д.
Синтаксис — совокупность правил, образование языковых конструкций или предложений языка программирования — блоков процедур, составных операторов, условных операторов, операторов цикла и т. д. Особенностью синтаксиса является принцип вложенности правил построения конструкций. Это означает, что элемент синтаксиса языка в своем определении прямо или косвенно в одной из его частей содержит сам себя. Семантика — смысловое содержание конструкции, предложений языка. Семантический анализ — это проверка смысловой правильности конструкциию.
Разделы программы 1. Раздел идентефикации — это область, содержащая наименование программы, а также дополнительную информацию для программистов или пользователей; 2. Раздел связи — это фрагмент текста, описывающий внешние переменные, передаваемые программе, то есть ту часть исходных данных, которая обязательно поступает на вход программы при ее запуске. Эти переменные часто называют параметрами программы; 3. Раздел оборудования — это описание типа ЭВМ, процессора, требований к оперативной и внешней памяти, существующих с точки зрения выполнимости программы; 4. Раздел данных — идентефикация. Описание переменных, использумых в программе, и их типов; 5. Раздел процедур — программная часть, содержащая описание процессов обработки данных; В конкретных языках программирования те или иные разделы могут либо отсутствовать, либо размещаться произвольно в тексте программы.
Система программирования — представляет собой совокупность средств разработки программ (языки программирования, текстовые редакторы, трансляторы, редакторы связей, библиотеки подпрограмм, утилиты и обслуживающие программы). Обеспечивает оптимизацию, составление и отладка программ пользователя.
Отличительной особенностью многоязыковых систем является то, что отдельные части программ могут быть подготовлены на различных языках и объединены во время или перед выполнением в единый модуль. В открытую систему можно ввести новый входной язык с транслятором, не требуя изменений.
Трансляция (компиляция)
Этапы: 1. Ввод — это этап обработки. Программа на исходном коде готовится с помощью текстовых редакторов и в виде текстового файла поступает на вход транслятора; 2. Трансляция — трансляция исходной программы есть процедура преобразования исходного модуля в промежуточную т. н. объектную форму. Включает в себя препроцессинг (преобработку) и компиляцию. 3. Директивы препроцессора представляют собой помеченные спецсимволами (%, # и т. д.) строки, содержащие аббревиатуры или другие символические обозначения конструкций, включаемых в состав исходной программы перед ее обработкой компилятором; 4. Компиляция — многоступенчатый процесс, включающий следующие фазы: 1. Синтаксический анализ — проверка правильности конструкций, использованных при подготовке текста; 2. Семантический анализ — выявление несоответствий типов и структур переменных, функций и процедур; 3. Генерация объектного кода. 5. Объектный модуль представляет собой текст программы на машинном языке, включающий машинные инструкции, словари, служебную информацию. Объектный модуль неработоспособен, поскольку содержит неразрешенные ссылки на вызываемые подпрограммы, библиотеки транслятора, реализующие функции ввода/вывода, обработки числовых и строчных переменных, а так же на другие программы пользователей или средства пакетов прикладных программ. 6. Построение исполнительного модуля (загрузочного модуля) осуществляется специальными программными средствами — редактором связей, построителем задач, компоновщиком, основной функцией которых является объединение объектных и загрузочных модулей в единый загрузочный модуль с последующей записью в библиотеку или файл. 7. Загрузка программы — выполнение загрузочного модуля состоит в загрузке его в оперативную память, настройке по месту памяти и передаче ему управления. Образ загрузочного модуля называется абсолютным модулем, поскольку все команды здесь приобретают окончательную форму и приобретают абсолютные адреса в памяти.
Библиотеки подпрограмм В процессе разработки программ частым случаем является то, что разные программы используют один и тот же алгоритм. В этом случае данный алгоритм может быть выделен во внешнюю подпрограмму. В процессе использования готовых подпрограмм возникает ряд проблем, связанных с одной стороны, с хранением имеющихся подпрограмм и размещением используемых подпрограмм в памяти ЭВМ, с другой стороны, с организацией их взаимодействия с основной программой. В связи с этим для обеспечения удобства практической работы вырабатывается определенная система использования подпрограмм. Такая система предъявляет определенные требования к организации и оформлению подпрограмм. Подпрограммы, которые удовлетворяют всем требованиям выбранной системы, называются стандартными, а организованный соответствующим образом набор таких подпрограмм называется библиотекой подпрограмм. С точки зрения компоновки и последующего взаимодействия с основным программным кодом библиотеки подпрограмм делятся на библиотеки статического вызова (статические библиотеки) и библиотеки динамического вызова (динамические библиотеки). После компиляции подпрограмме статической библиотеки компоновщик добавляет ее откомпилированный код исполняемой программе. Получившийся в результате исполнительный модуль содержит код программы и все используемых подпрограмм. В случае динамической компоновки компоновщик просто использует информацию о подпрограмме для настройки соответствующих таблиц в исполняемом файле. Когда исполняемый модуль загружается в память, операционная система загружает также все необходимые динамические библиотеки и заполняет внутренние таблицы программы адресами библиотечных подпрограмм в памяти, после чего программа запускается на исполнение. Преимущества использования динамических библиотек:
1. Если разные программы используют одну и ту же динамическую библиотеку, то библиотека загружается в память только один раз. Таким образом экономится системная память; 2. При модификации динамической библиотеки можно просто заменить старую версию новой, не перестраивая при этом готовые программы.
Исходный код
Программирование на языке С
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 845; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.130.31 (0.052 с.) |