Файл: «Классификация языков программирования высокого уровня».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 16.06.2023

Просмотров: 367

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Бейсик был одним из первых алгоритмических языков, в составе которого изначально присутствовали операторы общения пользователя с пошагово выполняющейся программой. Одновременно с текстом сообщения об ошибке Бейсик-система сообщала номер строки программы, нарушившей синтаксис языка или приведшей к аварийной ситуации. Первые Бейсик- системы, совмещавшие в себе возможности ввода, редактирования, испол­нения и отладки программ, послужили прототипами современных интегри­рованных сред. Вторая особенность, привлекающая массового потребителя к Бейсику, кро­ется в простоте начального освоения и краткости его изобразительных средств. Попробуйте найти хотя бы еще один язык, на котором программа, отвечающая на вопрос, чему равно дважды два, состоит всего из четырех символов: ?2*2 Аналогичная программа на Паскале содержит, минимум, три строки, а ее длина превышает 20 символов. [11, с.8-9]

Алфавит бейсика содержит 26 прописных латинских букв, цифры от 0 до 9, точку, запятую, кавычки, знаки арифметических опе­раций ( +, —, /, * (умножение) и 1 (возве­дение в степень)), знаки отношения двух вели­чин (>, <, —), скобки и другие спе­циальные знаки. Версии бейсика для отечест­венных микро ЭВМ имеют в алфавите и руские буквы.

Переменные бейсика делятся на 4 типа.

  • Простые переменные, обозначаемые ла­тинскими буквами.
  • Простые переменные, обозначаемые ла­тинскими буквами с одной цифрой после них, например, Al, D2, ..., Z9.
  • Индексированные переменные одномер­ных массивов.
  • Индексированные переменные двумер­ных массивов вида. [12, с.21]

Переменная-это объект языка программирования. Переменная имеет имя и значение. [45, с.39]

Оператор-это базовая единица действия в языках программирования. [20, с.426]

Операторы записываются в виде слов или предложений большими латинскими буквами без пробелов в словах. Программа на бейсике есть последователь­ность операторов, записанных по определен­ным. правилам и обеспечивающих решение заданной задачи на ЭВМ. В бейсике операторы записываются построчно. В одной строке может быть один оператор или несколько, раз­деленных специальным знаком (двоеточием : или наклонной чертой \). Строки должны иметь последовательную нумерацию. В приложении №3 «Символы арифметических операций» отражены символы операций бейсик. Там же отмечен порядок выполнения при вычислении. Приоритет может быть изменен вводом скобок. [12, с.21-22]

В языке бейсик используются числовые и символьные константы. Числовые константы записываются в двух формах: с фиксированной точкой и с плавающей точкой. С фиксированной точкой число представляется последовательностью десятичных цифр со знаком плюс или минус(знак плюс может быть опущен). Для определения целой части от дробной используется точка.[31, с.89] Отличительные черты языка заключаются в простоте и доступности. [32, с.122]


Последним языком, который мы разберем в этой главе будет язык Паскаль.

Язык паскаль был создан в конце 60-х годов Н. Виртом как
специальный язык для обучения студентов, но вскоре получил
распространение среди программистов. [13,с.7]

Язык был назван в честь французского фи­лософа и изобретателя механического калькулятора Блеза Паскаля — Паскалем. Новый язык оказался на­столько удачным, что быстро привлек к себе внимание и завоевал популярность. [14, с.18]

Основными причинами популярности языка являются следующие:

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

2. Развитые средства представления структур данных обеспечивают удобство работы как с числовой, так и с символьной и бинтовой информацией.

3. Наличие специальных методик создания трансляторов с пас-
каля упростило их разработку и способствовало широкому распространению языка.[13, с.7]

4. Оптимизирующие свойства трансляторов с паскаля позволяют создавать эффективные программы.

5. В языке паскаль реализованы идеи структурного программирования, что делает программу наглядной и дает хорошие
возможности для разработки и отладки. [13, с.7]

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

Алфавит Паскаля включает в себя:

  • прописные и строчные латинские буквы, знак подчеркивания _;
  • цифры от 0 до 9;
  • специальные символы, например +, *, { и @;
  • пробельные символы: пробел, табуляция и переход на новую строку.

Из символов составляются лексемы (tokens) , то есть минимальные единицы языка, имеющие самостоятельный смысл: константы; имена (идентификаторы); ключевые слова; знаки операций; разделители (скобки, точка, запятая, пробельные символы). [15, с.13-14]

Константа –это идентификатор обозначающий некоторую неизменную величину(значение данных) определенного типа. [20, с.362]

Числовые константы могут быть целыми и вещественными. Целые константы (INTEGER). Целая десятичная константа представляет собой последовательность десятичных цифр,которой может предшествовать знак — . [13,с.14]

Вещественные константы (REAL). Представление вещественных констант, как н на фортране, имеет две формы: в виде
десятичной дроби, где вместо запятой используется точка (напри-
мер, число 3.2), и в виде числа, содержащего указание на степень
десяти (например, число 2.5Е9). [13,с.14]

К булевским относятся две константы: TRUE и FALSE. На IBM PC занимают 1 байт. [16. с.31]


Символьные константы (CHAR). Символ, заключенный
в апострофы, есть символьная константа.

Константы-строки. Последовательность символов, заключенная в апострофы, есть строка. Константы типа ALFA*). Строку символов длиной в од-
но машинное слово называют константой типа ALFA. [13,с.15]

Оператор условия это один из ключевых операторов в любом языке программирования. Оператор условия позволяет организовать дальнейшее выполнение алгоритма по одному из двух направлений.

Оператор выбора для тех случаев, когда требуется осуществить выбор одного значения из конечного набора вариантов, оператор if удобнее заменить оператором выбора case. В целом оператор case выполняется также, как и составной условный оператор. Выражение должно иметь целый или символьный тип. Значение этого выражения последовательно сравнивается со значениями в расположенных ниже списках. Если в одном из списков находится совпадающее значение, то выполняются соответствующий оператор. [17. С.75-76]

Цикл с параметром for. Этот оператор применяется, если требуется выполнить тело цикла заранее заданное количество раз. Параметр порядкового типа на каждом проходе цикла автоматически либо увеличивается, либо уменьшается на единицу. [15, с.44]

Цикл с предусловием. Рассмотренный цикл for выполняет необходимую функциональность, когда число повторений тела цикла известно к моменту его начала. Однако часто приходится решать задачи, когда число повторений цикла заранее неизвестно. В ряде ситуаций это значение определяется по мере выполнения вычислительных действий. И тогда применяют другую разновидность цикла — цикл с условием. В языке Паскаль предусмотрены два цикла с условием: условие цикла проверяется перед циклом (цикл с предусловием);условие цикла проверяется после цикла (цикл с постусловием). [17,с.87]

Цикл с постусловием. В этом случае условие проверяется после цикла. Цикл проверяется до тех пор, пока проверка указанного условия будет давать результат «ложь». Важно отметить, что если условие сразу окажется истинным, то цикл все равно выполняется один раз. [17.с.89]

Оператор перехода goto. Использование оператора goto оправданно. Как правило в двух случаях:

  • Принудительный выход вниз по тексту из нескольких вложенных циклов или операторов выбора
  • Переход из нескольких мест программы в одно.[15.с.48]

Важной особенностью Паскаля. отличающих его от языков программирования, созданных ранее (фортана. алгола и т.д.) является последовательное проведение в жизнь идей структурного программирования. [13.с.5]


2.2 Высокий уровень, машинно-ориентированный

К машинно-ориентированному языку высокого уровня относится С.

Язык С (Си) разработали в компании Bell Laboratories Брайан Керниган и Дэнис Ричи. В 1972 году этой компании потребо­валось написать новую операционную систему. До того момента большинство операционных систем было написано на ассемблере, поскольку языки программи­рования высокого уровня были недостаточно эффективны и снижали производи­тельность компьютеров того времени. Проблема низкоуровневого программирова­ния заключалась в том, что программный код было очень сложно «дорабатывать». Популярность С росла очень быстро. Компаниям понравилась идея создания бо­лее эффективных программ. А С-программа выполнялась в 10 раз быстрее, чем эквивалентная ей программа на языке COBOL. С ростом популярности персо­нальных компьютеров эффективный и небольшой язык становился все более не­обходимым. Причина современной популярности С заключается в том, что, несмотря на сокращение его использования, он является основой для таких языков, как C++, Java, С#, и множества других современных языков, а также будущих. С — про­ще всех. [1. с.71-72]

Он тесно связан с системой UNIX, так как был разработан в этой системе, которая как и большинство программ, работающих в ней, написаны на Си. Однако язык не привязан жестко к какой-то одной операционной системе или машине. [2, с.11]

Широкое использование С с разнообразными компьютерами (иногда назы­ваемыми аппаратными платформами) привело, к сожалению, к появлению многих вариаций языка. Это было серьезной проблемой для разработчиков программ, которым требовалось писать переносимые программы, работающие на нескольких платформах. [3, с.62]

Для всемир­ной стандартизации языка Американский институт национальных стандартов работал совместно со Всемирной организации по стандартизации; совместный документ стандарта был опубликован в 1990 году и получил наименование ANSI/ISO 9899: 1990. [3, с.62]

Основой любой программы на С является функция main( ). Поскольку main( ) завер­шается круглыми скобками, она является функцией. Функция С, так же как и про­цедура Visual Basic, является фрагментом программного кода, выполняющим опре­деленное действие. Функция main( ) является обязательной, поскольку именно с нее начинается выполнение программы. Программисты используют функцию main( ) для управления остальной программой. Эта функция зачастую включает последователь­ность вызовов процедур. [1] Действитель­ный код функции main( ), как и любой другой функции С, начинается с открываю­щей фигурной скобки { и завершается закрывающей фигурной скобкой }. Внутри функции могут использоваться и другие наборы скобок, всегда парные. [1,с.197]


Самой распространенной функцией ввода/вывода является функция printf( ). [1,с.200] Функция main вызывает библиотечную функцию printf для печати заданной последовательности символов. Функция printf - это библиотечная функция, которая в данном случае напечатает последовательность символов, заключенную в двойные кавычки. [2, с.17]

Ввод с клавиатуры более сложен, чем вывод на экран. Для осуществления ввода с клавиатуры используется функция scanf( ).

Функция scanf( ) зеркально подобна функции printf( ). [1,с.203]

Функция scanf( ) читает символы из стандартного входного потока, интерпретирует их согласно спецификациям строки format и рассылает результаты в свои остальные аргументы. [2, с.172]

Функция scanf( ) прекращает работу, когда оказывается, что исчерпался формат или вводимая величина не соответствует управляющей спецификации. [2,с.172]

Крайне важно изучить, как работают операторы С. Большое количество операторов заставляет людей считать, что С — непонятный или математический язык. В действительности не все операторы языка С (в приложении №4 «Операторы С» представлен полный список) являются математически­ми. Большинство из них в других языках программирования представлены отдельными командами. Обилие операторов делает язык С очень эффективным и сжатым. [1, с.195]

Язык С поддерживает оператор if…else.

Инструкция if-else используется для принятия решения. Причем else-часть может и отсутствовать. Сначала вычисляется выражение, и, если оно истинно (т. е. отлично от нуля), выполняется инструкция1 . Если выражение ложно (т. е. его значение равно нулю) и существует else-часть, то выполняется инструкция2 [2,с.68]

Так как if просто проверяет числовое значение выражения, условие иногда можно записывать в сокращенном виде. Так, запись

if (выражение) короче, чем if (выражение ! = 0) [2,с.59]

Поскольку С является стандартизированным, широко доступным языком, написанные на языке Сприложения. С небольшими изменениями или вообще без таковых , часто можно запускать на самых разнооюразных компьютерных системах.[3,с.62]

Вывод второй главы.

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

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