- •Общие сведения о языках программирования. Язык программирования Лого.
- •1. Компилятор или интерпретатор,
- •2. Простейший текстовый редактор, 3.Отладчик,
- •3) Нельзя ставить рядом два знака арифметических операций, а также нельзя опускать знак умножения. Графические средства языка Лого.
- •Рассмотрим основные команды
- •Системе координат.
- •Построение процедур.
- •Нельзя называть процедуру служебными словами, т.Е. Словами за которыми в Лого закреплено определенное значение (forward и т.Д.).
- •Название должно состоять из одного слова, а в качестве разделителя допустимо использование подчеркивания.
- •Процедуры с параметром.
- •Повторения и циклы.
Общие сведения о языках программирования. Язык программирования Лого.
Любая ЭВМ представляет собой программно-управляемое вычислительное устройство. Даже такие "невычислительные" операции, как обработка текстов или построение графиков, в ЭВМ сводятся к вычислениям. Так, буквы представлены числовыми кодами, графики разложены на точки, координаты и цвет которых также задаются соответствующими числовыми кодами. Процессор выполняет команды, записанные в машинных кодах. Чем выше частота процессора, тем больше он выполняет команд за единицу времени. Машинные коды представляют собой набор 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) Выражения, заключенные в круглые скобки, вычисляются в первую очередь. Если выражение содержащие скобки, само находится в круглых скобках, то вычисления производится, начиная с внутренних скобок. Например: А*(Х-В/(Х+С)).