Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
языки программирования.rtf
Скачиваний:
8
Добавлен:
26.11.2019
Размер:
217.88 Кб
Скачать

Общие сведения о языках программирования. Язык программирования Лого.

Любая ЭВМ представляет собой программно-управляемое вычислительное устройство. Даже такие "невычислительные" операции, как обработка текстов или построение графиков, в ЭВМ сводятся к вычислениям. Так, буквы представлены числовыми кодами, графики разложены на точки, координаты и цвет которых также задаются соответствующими числовыми кодами. Процессор выполняет команды, записанные в машинных кодах. Чем выше частота процессора, тем больше он выполняет команд за единицу времени. Машинные коды представляют собой набор 0 и 1. Однако программирование в машинных кодах крайне сложная задача и требует глубокого знания особенностей ЭВМ. Максимально приближен к машинным кодам язык программирования Ассемблер. Команды Ассемблера

представляют собой не набор 0 и 1, а более понятный программисту набор инструкций. Например: MOV АХ,2 поместить 2 в регистр АХ CPU. На Ассемблере программы пишутся в основном тогда, когда требуется обращение к внешним устройствам, обработка прерываний, быстрый вывод информации на экран

Программирование на Ассемблере требует хорошего знания архитектуры ЭВМ и программно-аппаратных средств.

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

Каждая команда на языке высокого уровня запускает в действие несколько десятков, а то и сотен команд в" машинных кодах. Запись программ на языках высокого уровня выглядит гораздо более компактно и понятно, чем в машинных кодах. Например: els. Существуют специальные программы трансляторы, которые программу на языке высокого уровня переводят в машинные коды.

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

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

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

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

Сейчас практически любая реализация языка представлена как среда разработки, которая включает в себя следующие основные компоненты:

1. Компилятор или интерпретатор,

2. Простейший текстовый редактор, 3.Отладчик,

4.библиотеку готовых модулей. Лого является специальной программой-интерпретатором. Имеет мощный и гибкий аппарат по обработке разнообразных объектов - чисел, букв, слов, инструкций и т.д. Объекты в Лого рассматриваются с высокой степенью обобщения. Так в Лого нет задания специальных типов целочисленных, с плавающей точкой, символьных и прочих переменных. Значениями переменных являются просто объекты. Лого имеет много команд по обработке и редактированию объектов и списков из них, например, по выделению первого и последнего или заданию по порядку объекта из списка, удалению их, вводу новых объектов и т.д. Лого - язык универсальный. Это означает, что на нем можно решать самые разнообразные задачи как вычислительного, так и не вычислительного характера.

Алфавит Лого, его объекты слова и списки.

Переменные.

В состав алфавита языка входят 2 6 логических прописных букв от А до Z и строчных от a. до z. С помощью этих букв записываются вся информация языка Лого. Команды могут записываться как прописными, так и строчными буквами. Режим русского алфавита можно использовать в текстах и комментариях, а также в именах переменных и процедур.

Для ввода и индикации чисел в алфавит Лого включены 10 арабских цифр (0,..,9) и разделительная точка.

С их помощью можно задать как целые числа (123 или 456) так и дробные (123.456). Знак минус используется как для указания знака (-123) так и для задания арифметической операции вычитания. Помимо букв и цифр в алфавит Лого входит ряд специальных знаков ?!=<>+*,/[] ( ) ;

:- указывает на то, что последующая за ним цепочка знаков есть имя переменной. Списки слов заключаются в квадратные скобки. Круглые скобки используются для задания двух параметров в командах.

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

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

Для обозначения переменных используется буквы латинского и русского алфавита. Имена переменных так же могут состоять из некоторого набора букв и цифр. Например, сочетание pereml также может служить именем переменной, однако любое имя переменной должно обязательно начинаться с буквы.

Числовые константы и переменные величины, объединенные знаками арифметических операций и круглыми скобками, образуют арифметические выражения.

При записи арифметических выражений следует учитывать, что:

1) Вычисление арифметических выражений производится с учетом старшинства операций. Сначала операции умножения и деления потом сложения и вычитания. Если в выражении встречаются несколько операций одинакового старшинства, то действия выполняются слева направо. Например: выражение X/A*Y означает X-Y X

-,но не -—, а выражение А-В+С означает (А-В)+С

A AY

но не А-(В+С).

2) Выражения, заключенные в круглые скобки, вычисляются в первую очередь. Если выражение содержащие скобки, само находится в круглых скобках, то вычисления производится, начиная с внутренних скобок. Например: А*(Х-В/(Х+С)).