Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие VBA.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
693.25 Кб
Скачать

1.6. Системы программирования

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

Любая система программирования организует среду, в которой может осуществляться разработка новых программ. По структуре система программирования представляет собой совокупность нескольких компонентов, необходимых в процессе разработки программы. Как правило, это – язык программирования (или несколько ЯП), транслятор, редактор связей, библиотеки подпрограмм, утилиты и обслуживающие программы (например, отладчик и др.). Все вышеперечисленные средства требуются для обеспечения автоматизации процесса составления и отладки программ.

Классификация систем программирования может проводиться по различным признакам, которые приведены в таблице 1.

Таблица 1.

Признак классификации

Типы

Набор исходных языков

Одноязыковые

Многоязыковые

Возможности расширения

Замкнутые

Открытые

Тип транслятора

Интерпретатор

Компилятор

В многоязыковой системе программирования отдельные части (секции, модули или сегменты) программы могут быть подготовлены на различных языках и объединены во время или перед выполнением в единый модуль. В одноязыковой системе все части программы записываются на одном ЯП.

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

Транслятором называют специальную программу, которая осуществляет автоматический перевод программы, записанной на алгоритмическом языке высокого уровня, на язык машинных кодов. Процесс такого перевода соответственно называется трансляцией (to translate – в переводе с англ. «переводить») программы. Различают трансляторы двух типов: интерпретатор и компилятор. Существуют также трансляторы-гибриды.

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

В компилирующей системе программирования, в которой для трансляции программы используется компилятор, осуществляется перевод сразу всей программы и подготавливается результирующий модуль (например, в виде файла типа .exe), который далее может выполняться на ЭВМ вне среды программирования.

Для ПК типа IBM PC с момента их появления и до настоящего времени было разработано большое количество систем программирования, возможности которых менялись и прогрессировали параллельно с улучшением самих ПК этого типа. В первую очередь следует отметить системы программирования для таких классических ЯП как Бейсик, Паскаль, Си, Си++. Хотя первые версии этих ЯП появились еще в период господства больших ЭВМ (60-70-е гг. ХХ в.), они оказались настолько популярными, что системы программирования для них стали выпускаться и для ПК (сначала под DOS, потом под Windows).

Среди наиболее известных в свое время систем программирования под DOS нужно отметить Quick Basic, Microsoft C, Microsoft C++ фирмы Microsoft; Turbo Basic, Turbo C++, Turbo Pascal фирмы Borland. Позднее были разработаны сиcтемы программирования под Windows: Visual Basic, Visual C++ фирмы Microsoft; Delphi (для языка Object Pascal) фирмы Borland.

Для языка Лисп можно упомянуть системы программирования Common Lisp, Expert Lisp; для языка Пролог – Turbo Prolog, Visual Prolog.

Контрольные вопросы

1. Сколько поколений ЯП принято выделять в настоящее время?

2. В чем особенность ЯП I-го поколения?

3. В чем особенность ЯП II-го поколения?

4. В чем главное отличие ЯП III-го поколения от ЯП I-го и II-го поколений?

5. В чем особенность ЯП IV-го поколения?

6. Какие тенденции развития ЯП непроцедурного типа можно выделить?

7. Какие ЯП традиционно относят к языкам V-го поколения?

8. На каких уровнях можно рассматривать элементы ЯП?

9. Какие 2 способа описания ЯП наиболее известны?

10. Какие из известных ЯП описываются с помощью нотации Бэкуса, а какие – с помощью нотации IBM?

11. Какая из нотаций может содержать рекурсию в описании?

12. Что такое данные?

13. Какие данные называют исходными, промежуточными и выходными?

14. Чем отличается переменная от константы?

15. Что такое идентификатор?

16. Что такое тип данных?

17. Какие типы данных являются простыми (базовыми)?

18. Какие типы данных относят к структурированным?

19. В чем отличие переменных простого типа от переменных структурированного типа?

20. Что такое массив? Как осуществляется обращение к элементу массива?

21. Что такое запись? Как осуществляется обращение к элементу записи?

22. Что такое файл как тип данных?

23. Какие типы файлов различают?

24. Что объединяет классические ЯП Бейсик и Паскаль и, тем самым, отличает от языка Си?

25. Какие программы называют системами программирования?

26. Способы классификации систем программирования.

27. Какие системы программирования наиболее известны для программирования под Windows?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]