Классификация языков программирования высокого уровня
Тема 2. Языки программирования
Первые программы для компьютера создавались без использования систем программирования.
Методы программирования для старых компьютеров были громоздкими, медленными и крайне ограниченными.
Эти компьютеры программировались путем установки ряда переключателей (включено или выключено).
Каждый переключатель представлял одну двоичную единицу (или бит), принимая значение 0 или 1.
Это сильно ограничивало возможности и занимало много времени. Программа, составленная в машинных кодах.
Команды программы и данные распределяются по ячейкам памяти.
Пример:
Сложить два числа, находящихся в ячейках памяти с номерами 0034 и
0155, результат сохранить в ячейке 0034 и напечатать.
0300 24 0034 0155
0301 62 0034
С клавиатуры дается команда «выполнить, начиная с ячейки 0300».
Ассемблер - первый язык программирования (низкого уровня).
Низкий уровень не подразумевает низкое качество программ, а только то что создание программ на этом языке по прежнему остается достаточно трудоемким процессом. Числовые команды здесь заменены буквенными.
Пример: В память компьютера занести число 0.
МОV АL,ООh
Программирование на языке Ассемблер до сих пор используется тогда, когда важно уменьшить время выполнения создаваемой программы, так как в этом языке существует прямая связь между командой программы и машинным кодом.
Языки высокого уровня
Реальный скачок в программировании был сделан при появлении языков высокого уровня.
Языки высокого уровня позволяют писать программы текстом, похожим на английский язык.
Программы, написанные на языках высокого уровня, более компактны, легче для понимания, а вероятность появления в них ошибок меньше.
Недостаток этих программ в том, что в результате компиляции (трансляции) иногда получается машинная программа более длинная, чем если бы она создавалась на языке Ассемблер.
Компиляторы и интерпретаторы
С помощью языка программирования создается текст программы, описывающий разработанный алгоритм.
Чтобы программа была выполнена, надо текст программы перевести в машинный код. Этот перевод выполняют программы - компиляторы или интерпретаторы предварительно осуществив поиск ошибок в тексте программы.
CD - 1100 1101 20 - 0010 0000 FF - 1111 1111 9F - 1001 1111 |
Компилятор полностью обрабатывает весь текст программы - транслирует на машинный язык (не выполняет).
Интерпретатор берет очередную команду из текста программы, переводит ее на машинный язык и затем сразу исполняет (не переводит весь текст программы на машинный язык, а только одну команду).
После успешного выполнения текущей команды интерпретатор переходит к анализу и исполнению следующей.
Классификация языков программирования высокого уровня.
1. Процедурные языки программирования
Программа на процедурном языке состоит из последовательности команд, определяющих процедуру решения задачи.
Фортран, Алгол предназначены для использования в научных целях.
КОБОЛ - для использования в мире бизнеса.
ВАSIС в равной степени годится для любых задач и в то же время достаточно прост для изучения.
Пример программы на языкеTurbo Basic
Составить программу, по которой вычисляется скорость прохождения дистанции. V=(d/1000)/((m*60+c)/3600)
где V –скорость (км/ч), d –дистанция (м), m –время прохождения дистанции (мин), c–время прохождения дистанции (сек).
cls
Input "Dist=";d
Input "Min=";m
Input "Sec=";c
V=(d/1000)/((m*60+c)/3600)
?:?:Color 4,3
print using “V= #####.##";V
end
После запуска программы:
Dist= 10000
Min= 25
Sec=30
V=23,53
Паскаль, АДА -структурное программирование.
Суть его заключается в оформлении последовательности команд как замкнутых функций или процедур (подпрограмм).
С (Си) используется для создания системных программ.
2. Объектно-ориентированное программирование (визуальное)
Разработка программ на визуальных языках программирования, напоминает работу с конструктором, когда к разрабатываемой программе подключается множество ранее созданных заготовок программ, что позволяет значительно ускорить процесс программирования.
Delphi, Visual Ваsiс, Visual C++, Java
3. Декларативное программирование
При использования декларативных языков программист указывает исходные данные, взаимосвязи между ними и то, какими свойствами должен обладать результат.
Алгоритм получения результата программист не строит.
В декларативных языках отсутствует понятие «оператор» («команда»).
Лисп –для обработки больших объемов текстовой информации.
Пролог (логическое программирование) –язык искусственного интеллекта.
4. Языки программирования для компьютерных сетей
Появление и активное развитие компьютерных сетей стало причиной создания многочисленных версий популярных языков программирования, адаптированных для использования в сети. Отличительные особенности, присущие сетевым языкам: они являются интерпретируемыми. Такие языки получили название скрипт -языков.
НТМL(НуреrТехt Тгаnsfer Ргоtoсоl)- - универсальный язык разметки гипертекста, используемый для подготовки Web-документов для сети Internet.
Реrl -предназначался для эффективной обработки больших текстовых файлов.
VRML для организации виртуальных трехмерных интерфейсов в Internet.
Он ориентирован на описание разнообразных трехмерных образов, цвето -теневого освещения в текстовом виде и позволяет создавать различные сценарии миров, путешествовать по ним, «облетать» с разных сторон, вращаться в любых направлениях, масштабировать, управлять освещенностью и многое другое.
5. Языки программирования баз данных
SQL (Structured Query Language) - структурированный язык запросов.
Для обработки больших массивов информации и выборки записей по определенным признакам.
При работе с базами данных (БД) наиболее часто выполняются следующие операции: создание, преобразование, удаление таблиц в БД; поиск, отбор, сортировка по запросам пользователя; добавление новых записей или модификация существующих; удаление записей и др.