Дисциплине введение в специальность. Основные понятия и виды языков программирования, страница 2

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

ЛОГО ориентирован на обучение программированию младших школьников. Тот факт, что этот язык не умер (как случилось с многими искусственными языками), а уже треть века живет  и продолжает развиваться, свидетельствует, что выбранная предметная область (раннее обучение детей информатике) и предложенные разработчиками языка средства удачно сочетаются друг с другом.

В ЛОГО удачно сочетаются возможности «учебного» и производственного языка. Интересную интеграцию различных областей применения этого языка продемонстрировал созданный профессором М. Виве научный центр во французском городе Ле-Мане. Здесь одновременно проводили обучение программированию в начальной школе; подготовку специализирующихся в информатике студентов университета; переподготовку квалифицируемых рабочих  на промышленных предприятиях региона, где широко использовались станки с числовым программным управлением; исследования психологов, изучавших влияние информационных технологий на мышление и деятельность людей. ЛОГО оказался эффективным инструментом для пользователей с разными уровнями развития и разных сфер деятельности.

За годы развития Черепашка Пайперта и управляющий ею язык ЛОГО обросли многими новыми возможностями. Сначала появились средства управления цветом. Позднее Черепашка «научилась» воспроизводить мелодии. Ещё интереснее стало работать на ЛОГО, когда появилась возможность в одной программе управлять одновременно несколькими исполнителями.

Язык ЛОГО не только отображал в своём инструментарии средства для обслуживания новых возможностей Черепашки, но и развивался автономно, позволяя обучать программируемый исполнителем новым «умениям».

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

            2.2 Машинный код

Самым распространенным способом дрессуры домашних животных является обучение их ограниченному набору команд, например «сидеть», «лежать» и т.д. Центральное устройство в компьютере — процессор — также имеет свой собственный язык. Сделать так, чтобы компьютер стал понимать программиста, весьма сложная задача. Команды для некоторого вымышленного процессора надо как-то закодировать, например представить в числовой форме: 1 может означать сложение, 2— умножение, 3— деление и т.д. Помимо команд процессору предоставляются и данные, необходимые для выполнения тех или иных операций. Тогда программа нахождения среднего арифметического двух чисел расположенных в ячейках 1 и 2, выглядит так:

01 01 01 01 02 01 03 03 01 03 00 03 01 03.

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

            2.3. Ассемблер

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

В 1952г. американка Грейс М. Хоппер создала первый в мире мнемонический (т.е. «удобный для запоминания») язык программирования Ассемблер. Его название происходит от английского слова assemble — «собирать», «компоновать». Он включал в себя мнемоническую систему команд ( список команд), библиотеки процедур и специальную программу для перевода текста программы в машинный код. Такая процедура получения машинного кода называется компиляцией (от англ. сompile — «составлять», «собирать»), а программа, ее осуществляющая, — компилятором, который также придуман Грейс М. Хоппер.

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

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

            2.4. Fortran

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

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