
- •Оглавление
- •Введение
- •Основные этапы решения задач на эвм
- •Анализ постановки задачи и ее предметной области
- •Формальное решение задачи
- •Алгоритмизация
- •Основные средства представления алгоритмов
- •Визуальные алгоритмы
- •Процесс программирования
- •Языки программирования
- •Язык программирования Pascal
- •Среда программирования Delphi
- •Событийная модель ос Windows
- •Концепция объектно-ориентированного программирования
- •Delphi. Основные характеристики продукта
- •Высокопроизводительный компилятор в машинный код
- •Быстрая разработка приложения из прототипов
- •Структурное объектно-ориентированное программирование
- •Создание приложения в Delphi
- •Свойства в Delphi
- •События в Delphi
- •Основные понятия алгоритмического языка Состав языка
- •Основные символы
- •Элементарные конструкции
- •Выражения
- •Комментарии
- •Директивы компилятора
- •Тип данных
- •Приведение типов
- •Простые типы данных Целые типы данных
- •Битовая арифметика
- •Вещественные типы данных
- •Логический тип данных
- •Символьный тип данных
- •Структура программы
- •Константы
- •Переменные
- •Операторы Оператор присваивания
- •Оператор перехода
- •Структурные операторы
- •Операторы управления выполнением цикла
- •Оператор варианта
- •Подпрограммы
- •Перечисляемый тип данных
- •Интервальный тип данных
- •Структурированные типы данных Массивы
- •Строковой тип данных (строки)
- •Множества
- •Файлы. Файловый тип
- •Текстовые файлы
- •Типизированные файлы
- •Нетипизированные файлы
- •Последовательный и прямой доступ к компонентам файла
- •Процедурный тип
- •Вариантный тип
- •Адресный тип. Указатели
- •Динамические переменные
- •Динамические структуры данных
- •Динамические массивы
- •Очереди
- •Статические методы
- •Виртуальные методы
- •Динамические методы
- •Методы обработки сообщений
- •Конструкторы и деструкторы
- •Замещенные методы
- •Абстрактные методы
- •Свойства
- •Обработчики событий
- •Список рекомендуемой литературы
Языки программирования
Компьютерной программой называется совокупность инструкций, направленных на решение конкретной задачи.
Каждый тип ЭВМ имеет свой набор команд, из которых может состоять программа для данного типа ЭВМ – машинный код.
Машинный код состоит из последовательности инструкций, которые хранятся двоичном виде. Так как для человека такой вид представления инструкций не удобен было разработано большое число различных языков программирования.
Языки программирования – это искусственные языки, созданные человеком для целей описания алгоритмов обработки данных.
Все языки программирования разделяют на два основных вида.
Языки низкого уровня (Машино-ориентированные языки) – это средство записи инструкций программы простыми командами на аппаратном уровне. Такие языки зависят от набора команд конкретной ЭВМ. Для упрощения программирования были разработаны языки символического кодирования – ассемблеры. Программа на таком языке содержит вместо двоичных кодов символические обозначения команд ЭВМ, данных и адресов памяти.
Языки высокого уровня (Машино-независимые языки) – средство записи программы в наглядном, легко воспринимаемом виде. Каждый язык ВУ ориентирован не на систему команд конкретной ЭВМ, а на систему инструкций, характерных для записи алгоритмов определенного класса. Обычно в состав инструкций входят слова английского языка, что упрощает понимание смыла конкретной инструкции. К современным ЯВУ относятся BASIC, Pascal, C, Java.
Существуют также языки сверхвысокого уровня, в которых формализуется описание языка и используются сверхмощные конструкции и операторы. Это такие языки как Algol-68, APL и в некоторой степени XML.
Программа на любом языке программирования состоит из инструкций понятных программисту, но не понятных процессору ЭВМ.
Для того чтобы процессор мог выполнить программу, программа должна быть переведена (транслирована) в машинный код. Такой перевод выполняется специальными программами трансляторами.
Транслятор – программа, осуществляющая перевод программы с определенного языка программирования в машинный код конкретной ЭВМ.
Существуют три вида трансляторов.
Ассемблеры – трансляторы, предназначенные для перевода программы, написанной на языке ассемблера в машинный код.
Интерпретатор - трансляторы, переводящие текст программы поэтапно (покомандно) и сразу же выполняющие оттранслированную команду программы. Современные интерпретаторы – Microsoft Visual Basic, InternetExplorer (интерпретатор языка HTML), интерпретатор языка PHP.
Компилятор – транслирует весь текст программы с языка программирования в машинный код. Современные компиляторы – Microsoft Visual C++, Borland Delphi, Borland C++ Builder.
Компилятор выполняет следующие основные задачи:
- Выполняет анализ и проверяет синтаксис транслируемой программы, и, в случае обнаружения синтаксической ошибки, прерывает свою работу и выдает соответствующее сообщение.
- Генерирует машинный код программы
Существует разновидность компиляторов, которые транслируют программу не в машинный код, а в специальный виртуальный код, который может быть выполнен при помощи специальной программы-интерпретатора, называемым виртуальным процессором. Преимущества такого метода трансляции заключается в том, что такая программа может выполняться на различных типах ЭВМ, для которых создан виртуальный процессор. Недостатком является более низкая производительность программ оттранслированных в виртуальный код, по сравнению с программами оттранслированных в машинный код. Областями использования таких программ являются места, где используются различные типы процессоров – Интернет (языки Visual Basic и Java) и сотовые телефоны (язык Java). Примерами таких компиляторов являются Microsoft Visual Basic, Microsoft Visual Java, Borland Java Builder.