- •1. Проблемы автоматизации программирования. Уровни автоматизации и их эффективность (общая характеристика).
- •2. Уровни автоматизации программирования (общая характеристика) и их использование при разработке программного обеспечения автоматизированных систем.
- •3. Автоматизация программирования. Машинный код.
- •4. Автоматизация программирования. Язык ассемблера.
- •5. Автоматизация программирования. Язык программирования.
- •6. Трансляция как способ реализация языка программирования. Виды трансляторов.
- •7. Интерпретация как способ реализации языка программирования. Типовой алгоритм работы интерпретатора.
- •8. Процессы трансляции и интерпретации. Сравнительная характеристика.
- •Основные различия
- •1. Транслятор
- •2. Интерпретатор
- •9. Процесс трансляции и его этапы. Типовая структура транслятора (общая характеристика).
- •10. Процесс трансляции. Лексический анализ исходной программы.
- •11. Процесс трансляции. Синтаксический анализ исходной программы.
- •12. Процесс трансляции. Семантический анализ исходной программы.
- •13. Процесс трансляции. Этап синтеза выполняемой программы.
- •14. Понятие уровня языка программирования. Способы реализации языков программирования (общая характеристика).
- •15. Объекты данных и их виды. Основные понятия. Время жизни и область видимости.
- •16. Атрибуты объектов данных. Понятие типа данных. Связывание объектов данных с атрибутами.
- •17. Понятие связывания. Время связывания и атрибуты объектов данных.
- •18. Структуры данных. Основные понятия и атрибуты.
- •19. Массив как механизм структуризации данных.
- •Недостатки
- •20. Строка как механизм структуризации данных.
- •21. Запись как механизм структуризации данных.
- •22. Сравнительный анализ основных языковых механизмов структуризации данных.
- •23. Множество как механизм структуризации данных, объявления множеств и операции с множествами.
- •24. Файловые структуры данных, особенности работы с файлами различного типа.
- •25. Модули как библиотеки ресурсов и особенности работы с ними.
- •26. Понятия вычислительной модели языка программирования. Императивная и объектно-ориентированная модели.
- •27. Базовые идеи структурного и объектно-ориентированного подхода к разработке программных продуктов.
- •28. Понятие визуального проектирования и визуальные компоненты системы программирования.
- •29. Особенности функционирования приложений в современных ос.
- •30. Событийная модель взаимодействия и событийно-управляемое программирование. Обработчик событий.
2. Уровни автоматизации программирования (общая характеристика) и их использование при разработке программного обеспечения автоматизированных систем.
К первому ответу +
Программное обеспечение автоматизированных систем как комплекс программ.
Комплекс программ – программируемая система высокой степени сложности, объединяющая в своём составе большое число взаимодействующих программ и отдельные программы - компоненты.
Характеристики КП:
-число компонентов (до 10000 объектов)
-число строк программ(100т. строк)
- трудозатраты по созданию (1000 человеко-лет)
-число программистов (100 - 1000)
- стоимость (>10 миллионов )
Особенности создания КП:
- Более высок требования к качеству и эффект к разработчику КП, чем при разработке отдельных программ.
- КП разрабатывается большими коллективами программистов
- при создании КП программирование занимает подчиненное положение, Главное – тестирование
на 1 месте:
1) задачи формирования структур
2) построение структур данных
3) тестирование функционирования программ
Вывод: КП должна создаваться специалистами высокого уровня. Основная задача профессионального программирования: создание качественного программного обеспечения.
Виды обеспечения функционирования АС:
Техническое обеспечение.
Математическое обеспечение.
Программное обеспечение.
Информационное обеспечение.
Организационное обеспечение.
ТО - комплекс технических средств, предназначенных для функционирования АС. (Hardware)
Математическое обеспечение – комплекс мат. методов, моделей и алгоритмов обработки данных с помощью АС.
Программное обеспечение.
ПО – комплекс программ, реализующих алгоритм обработки данных при решение задач АС.
OS – Windows , Unix - Linux; FreeBSD
СУБД - системы управления базами данных (IBM Oracle, MySQL)
Программная идентификация пользователя; проверка полномочий(авторизация); аутентификация - установление подлинности; обмен данными; интерфейс.
ИО – Совокупность данных, сопровождающих решение задач АС в процессе машинно-человеческой обработки.
ОО – Совокупность инструкций и предписаний, регламентирующих деятельность людей в рамках АС.
Концепция данных и действий – взгляд на программирование со стороны данных или действий.
3. Автоматизация программирования. Машинный код.
Главный вопрос – как перейти от постановки задачи предметной области к уровню, понятному вычислительной системе (машинному коду).
Каждая машина имеет собственный машинный язык программирования. Он содержит перечень операций, которые может выполнять конкретная машина. Машинный код иногда называют нативным кодом (также собственным или родным кодом — от англ. native code). Говорят, что процессор A совместим с процессором B, если процессор A полностью «понимает» машинный код процессора B. Если процессор A знает несколько команд, которых не понимает процессор B, то B несовместим с A.
(Инструкция – команды – у каждого процессора свой набор инструкций. Процессор может выполнять инструкции только на машинном языке.)
08 1100 1104
08 – код действия
1100 1104 – адреса ячеек памяти
Особенности МЯ:
- необходимо хорошо знать системы команд процессора;
- программирование является крайне трудоемким;
- программирование не обладают наглядностью, плохо воспринимаются и не является переносимыми;
- из-за большой трудоемкости сложность создаваемых программ весьма ограничена;
- программирование на машинном языке практически не поддается модернизации;
Любой алгоритм может быть реализован аппаратно.
