Загрузил Adilzhan Nauan

Дидактический материал

реклама
Языки программирования – это формальные языки, специально созданные для общения человека
с компьютером.
Языками высокого уровня называют языки программирования, универсальные по отношению к
архитектуре компьютеров, и использующие обозначения, близкие к принятым в математике и других
видах деятельности человека. На таких языках удобно писать прикладные программы, решающие
какие-то научные, технические и управленческие задачи. Программы на языках высокого уровня
содержат служебные слова естественного (английского) языка, состоят из легко читаемых и
понимаемых команд. Это отличает такие языки от языков низкого уровня (машинно-ориентированных).
Машинно-ориентированные языки содержат примитивные команды, соответствующие
особенностям данной архитектуры компьютера (в этом и состоит их машинная ориентированность), и к
тому же записываемые машинными кодами, обычно в шестнадцатеричной форме, типа: переслать число
в ячейку; считать число из ячейки; увеличить содержимое ячейки на +1 и т.п. Команда на машинном
языке обычно описывает простейший обмен содержимого ячеек памяти, элементарные арифметические
и логические операции. Команда содержит код и адреса ячеек, с содержимым которых выполняется
закодированное действие.
С машинно-ориентированными языками трудно работать, но созданные с их помощью
квалифицированным программистом программы занимают меньше места в памяти и работают быстрее.
С помощью этих языков удобнее разрабатывать системные утилиты, антивирусные программы,
драйверы (программы для управления устройствами компьютера), некоторые другие виды программ.
Языки программирования высокого уровня имеют следующие достоинства:





алфавит языка значительно шире машинного, что делает его гораздо более
выразительным и существенно повышает наглядность и понятность текста;
набор операций, допустимых для использования, не зависит от набора машинных команд,
а выбирается из соображений удобства записи алгоритмов решения задач определенного
класса;
конструкции команд (операторов) отражают привычные человеку приемы обработки
данных и задаются в удобном для чтения и понимания виде;
используется аппарат переменных и действия с ними;
поддерживается широкий набор типов данных.
Языки программирования высокого уровня являются машинно-независимыми и требуют использования
соответствующих программ – переводчиков (трансляторов) для перевода программы на язык
компьютера, на котором она будет исполняться.
Языки программирования высокого уровня должны быть переведены на язык, который способны
воспринимать компьютеры как технические устройства. Для этого существуют специальные
инструментальные средства – трансляторы с языков программирования высокого уровня, загрузчики,
отладчики. Это категория программных средств, служащая для преобразования данных в виде исходной
программы в нужную форму.
Транслятор – системная программа, выполняющая перевод программы с входного языка на
выходной (обычно машинный) язык программирования.
Сама программа должна быть переведена на машинный язык. Транслятор превращает текст
программы в простейшие команды, непосредственно выполняемые машиной. Транслятор создает из
исходного модуля объектный модуль. Все объектные модули, независимо от того, на каком языке был
написан исходный модуль, представляют собой совокупность стандартных команд (чтение из ячейки,
запись в ячейку, сдвиг регистра и т.п.). Поэтому объектные модули при необходимости можно
объединять. В дальнейшем на этапе редактирования с помощью редактора связей из объектных
модулей создается загрузочный модуль, пригодный для загрузки в оперативную память и последующего
исполнения.
В зависимости от функционального назначения транслятор может быть: интерпретатором,
компилятором, ассемблером или языковым процессором.
Интерпретатор-часть
системы
программирования,
моделирующая
исполнение программы без предварительного перевода ее на машинный язык.
непосредственное
Интерпретатор можно назвать построчным транслятором. Интерпретатор переводит каждую
команду (конструкцию) алгоритмического языка в коды и тут же выполняет эту конструкцию на
компьютере. Если компьютер работает по программе интерпретатора, то возможны два режима ее
работы: командный и программный.
Преимущество интерпретатора – удобный интерактивный режим и простая и быстрая отладка
программ.
Компилятор – часть системы программирования, которая обеспечивает перевод программы с
языка программирования на машинный язык без ее выполнения на компьютере.
Подвергшаяся компиляции программа сохраняется в виде объектного модуля и должна быть
запущена для выполнения.
Ассемблер – вспомогательная программа в составе ОС, осуществляющая перевод программ с
языка низкого уровня на машинный язык.
Ассемблер может выполнять различные служебные функции: осуществлять ввод программы,
производить сборку программы из раздельно написанных кусков, объединять написанную программу с
библиотечными подпрограммами. Под каждую архитектуру процессора и под каждую ОС / семейство
ОС существует свой ассемблер.
Языковой процессор – транслятор, совмещающий в себе функции компилятора, интерпретатора
и ассемблирования. Языковой процессор используется для трансляции специализированных языков
высокого уровня.
Поколения
Языки
программирования
Ориентированы на использование в конкретной ЭВМ, сложны в освоении,
требуют хорошего знания архитектуры ЭВМ
Начало 1950-х годов - язык первых компьютеров.
Первый язык ассемблера, созданный по принципу
«одна инструкция - одна строка»
Первое
Второе
Третье
Характеристика
Ассемблеры,
макроассемблеры
Мобильные, человеко-ориентированные, проще в освоении
1960-е гг. - Языки программирования высокого уровня
Относительная простота; независимость от конкретного компьютера;
возможность использования синтаксических конструкций, ориентирование
на алгоритм (алгоритмические языки).
Примеры: Си, Паскаль, Джава, Бейсик, и многие другие
Четвёртое
Непроцедурные,
объектноориентированные,
языки
запросов,
параллельные
Пятое
Языки
искусственного
интеллекта,
Ориентированы на повышение
экспертных систем и интерфейса с языками
баз
знаний,
естественные языки
интеллектуального уровня ЭВМ и
Скачать