Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 (4).doc
Скачиваний:
6
Добавлен:
08.09.2019
Размер:
798.21 Кб
Скачать

Билет 18

Вопрос 1 Основы языка программирования

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

Для составления программ существуют разнообразные языки программирования.

Язык программирования- это фиксированная система обозначения для описания алгоритмов и структур данных.

Популярными языками программирования сегодня являются, Паскаль, Бейсик, Си, Фортран и др.

Для создания и исполнения на компьютере программы, написанной на языке программирования, используются системы программирования.

Система программирования- это программное обеспечение компьютера, предназначенное для разработки, отладки и исполнения программ, записанных на определенном языке программирования.

Существуют системы программирования на Паскаль, Бейсике и других языках. Разработка любой программы начинается с построением алгоритма решения задачи.

«Родным» языком программирования ЭВМ является язык машинных команд (ЯМК). Самые первые ламповые ЭВМ понимали только этот язык. В программах на ЯМК данные обозначаются их адресами в памяти машины, выполняемые операции – числовыми кодами. Программист сам должен заботится о расположении в памяти ЭВМ команд программы и данных.

Современные программисты так не работают. Для программирования на современных эвм применяются системы программирования (сп) программное обеспечение делится на три части.

--системное ПО

прикладное ПО

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

Системное ПО это операционное системы, диалоговые оболочки типа NC.

Прикладное ПО- это многочисленные редакторы, электронные таблицы, информационные системы, математические пакеты, экспертные системы и многое другое, с чем работают абсолютное большинство пользователей.

Системы программирования предназначены для создания программ управления компьютером.

Системы программирования позволяют использовать на ЭВМ программы, написанные на языке более высокого уровня, чем язык машинных команд.

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

Естественный язык, язык математики

ЯПВУ

Автокод- ассемблер

Язык машинных команд.

Процессор

Язык машинных команд –это язык самого низкого уровня. Первые языки программирования, отличаются от ЯМК, появились на машинах первого поколения и назывались Автокодами.

Автокод –это машинное – ориентированный язык символического программирования.

Одна команда на Автокоде соответствует одной машинной команде. Работая на Автокоде, программист освобожден от необходимости распределять память под программу и величены, ему не приходится работать с адресами ячеек. Переменные величины и числовые константы обозначаются так же как в математике, коды операций- мнемоническими (буквенными) обозначениями.

Начиная с машин третьего поколения, языки такого типа стали называть Ассемблерами. В наше время на Ассемблере программируют довольно редко, это как правило, делают системные программисты.

Сокращение ЯПВУ расшифровывается так, языки программирования высокого уровня. Сегодня большинство программистов работают именно на этих языках. Наиболее распространенными являются языки Паскаль, Бейсик, СИ, Фортран.

Вот пример записи одной и той же команды сложения двух чисел на трех языках разного уровня, ЯМК, Автокод, Паскаль.

C:= A+D Паскаль

ADD A,B,C Автокод

01 24 28 2С ЯМК

Видно, как с повышением уровня языка повышается «понятность» команд (по –английски слово ADD означает «сложить»). Однако, чем понятнее для человека, тем непонятнее для процессора ЭВМ. Процессор понимает только ЯМК, это его «родной язык». Человеку же легче писать программы на языках более высокого уровня.

Как сделать так, чтобы человек мог писать программы на Автокоде или Паскале, а компьютер мог исполнять эти программы? Ответ на поставленный вопрос такой же, как ответ на вопрос: «как мне общаться с японцем, если я не знаю японского языка?». Нужен переводчик, по-английски переводчик –translator.

Программы- переводчики с Автокода, Паскаля, Фортрана и других языков на язык машинных команд называются трансляторами.

Таким образом компьютер сам производит перевод под управлением программы- транслятора. Процесс перевода программы на язык машинных команд называется трансляцией. Прежде чем выполнить, например, программу на Паскале, ее нужно оттранслировать. Трансляцию можно представить как спуск с верхней ступеньки языка на самую первую ступеньку- ЯМК.

C:=A+B ПАСКАЛЬ

Трансляция с Паскаля

ADD A, B,C АВТОКОД

Тран. с автокода

01 24 28 2С ЯМК

Транслятор является обязательным элементом любой системы программирования. Первые СП включали в себя только трансляторы. Затем к транслятору стали добавляться различные сервисные средства, текстовые редакторы, отладчики, системы обслуживания программных библиотек, средства организации дружественного интерфейса с пользователем.

Билет18