Чтение онлайн

на главную - закладки

Жанры

Цвет сверхдержавы - красный 4 Восхождение. часть 2
Шрифт:

Джон Маккарти в 1958 г разработал язык LISP, предназначенный для обработки списков данных, применяемый до настоящего времени (например, в AutoCAD), а в 1959-м группа разработчиков под руководством Грейс Хоппер создала язык COBOL, до сих пор широко используемый в обработке финансовых операций.

Вторым основным направлением была алгоритмизация. К 1958 году оформилось представление о логических и прочих нематематических возможностях ЭВМ. В 1958 году международная группа опубликовала начальную версию нового языка программирования ALGOL, основной идеей которого было дать как можно более естественную форму для выражения алгоритмов, прежде всего, вычислительной математики. Его название тоже было

сокращением от algoritmic language (Алгоритмический язык). В Алголе появилось представление о программе не как о свободной последовательности команд, а как о блочной структуре, состоящей из чётко описанных и отделённых друг от друга частей.

Опираясь на версию ALGOL-58, Андрей Петрович Ершов вместе с Геннадием Кожухиным и Дмитрием Янковым решили разработать свой язык, внеся в него то, что было бы удобно вычислителям, в частности, возможность оперировать с векторами, матрицами и многомерными объектами. (источник

На тот момент уже был решён вопрос о переезде Ершова с коллективом разработчиков в Новосибирский филиал Академии Наук СССР. Поэтому разрабатываемое ими расширение языка ALGOL первоначально получило название «Сибирский». Работа началась в конце 1959 года, а к началу 1960-го язык был вчерне разработан. Летом 1960 г была проведена работа по унификации стилистики разрабатываемого языка с ALGOL-60. Получившееся расширение «АЛГОЛа» получило скромное наименование «Входной язык». В декабре 1960 г. Геннадий Исаакович Кожухин выступил на рабочей конференции по АЛГОЛу с предварительным сообщением о проекте программирующей программы.

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

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

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

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

Найти пути решения этой задачи взялись Сергей Алексеевич Лебедев и Алексей Андреевич Ляпунов. (АИ) Собравшись в начале 1959 года, они обсудили варианты и сошлись на том, что задачу управления манипулятором, а также, в будущем, управление различными робототехническими комплексами, надо решать при помощи электронной системы, способной если не самообучаться, то хотя бы легко объединять предварительно описанные элементарные

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

— Смотрите, Сергей Алексеич, вот, скажем, надо взять заготовку с лотка. Пусть даже лоток у нас наклонный и вибрирующий, и манипулятор берёт заготовку каждый раз с одного и того же места, — взялся объяснить свою идею Ляпунов. — То есть, манипулятору надо повернуться в определённое положение, опустить захват до нужной высоты, и схватить заготовку. Потом снова повернуться, вытянуть «руку» к станку, повернуть захват с заготовкой на заданный угол. То есть, нам нужен язык программирования, в котором, примерно как в АЛГОЛе, можно описать элементарные действия в виде подпрограмм, вызывая которые с параметрами значений углов поворота, можно составить основную управляющую программу. Желательно, чтобы она легко читалась человеком, то есть выглядела примерно так:

СНЯТЬ С ТОКАРНОГО СТАНКА ДЕТАЛЬ

ПОСТАВИТЬ ДЕТАЛЬ НА ФРЕЗЕРНЫЙ СТАНОК

ВЗЯТЬ ЗАГОТОВКУ

ПОСТАВИТЬ ЗАГОТОВКУ НА ТОКАРНЫЙ СТАНОК.

— И так далее. Понимаете? Чтобы такую программу понимал и мог составить каждый технолог, не имеющий понятия о всех этих чёртовых машинных кодах!

— Конечно, — согласился Лебедев. — Но на АЛГОЛе такую программу реализовать будет сложно.

— Тут нужен особый язык, которого ещё нет. Его ещё предстоит разработать.

Лебедев задумался, вспоминая. Что-то крутилось в памяти, он чувствовал, что решение есть, оно было прислано из 2012 года в составе полученного массива информации.

— Алексей Андреевич, а вот у вас толковый аспирант был, Ершов. Он перед аспирантурой у нас работал. Он сейчас где? — спросил академик.

— Ершов? Он сейчас заведует отделом автоматизации программирования в Вычислительном центре АН СССР.

— Дайте мне его телефончик, пожалуйста, — попросил Лебедев. — Я думаю, это тот человек, который нам нужен.

Сергей Алексеевич нашёл то, что искал. Александр Веденеев прислал вполне приличную подборку литературы по нескольким перспективным языкам, а также часть репозитория, содержащую не только бинарные пакеты, но и исходные коды. По ним в ИТМиВТ под руководством Лебедева уже переписали в машинных кодах ядро операционной системы (АИ, см. гл. 03-15). Сейчас перед учёными стояла похожая задача.

Андрей Петрович Ершов приехал к Лебедеву в ИТМиВТ через пару дней. Академик коротко пересказал ему свою недавнюю беседу с Ляпуновым.

— Вы ведь сейчас занимаетесь разработкой расширения АЛГОЛа? — спросил Лебедев.

— Не то что бы занимаемся... Пока это только предварительные намётки, — признался Ершов. — Идеи такие есть, но они, если честно, ещё не оформились во что-то конкретное.

— Сейчас правительство поставило перед нами задачу автоматизации производств, разработки программного обеспечения для робототехники. Есть одна зарубежная разработка, судя по всему, из числа закрытых, — сказал Лебедев. — Никакой открытой информации по ней нет, но чекисты постарались. Вот смотрите.

Он слегка повернул к Ершову стоящий у него на столе монитор терминала, и залогинился в БЭСМ-1М. Ершов с интересом смотрел на зелёные буквы и цифры, светящиеся на экране — ему обычно приходилось работать с машиной через телетайп, читая её ответы на бумажной ленте.

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

— Ого! То есть, программа не транслируется, а выполняется в режиме интерпретации, но со скоростью транслируемой программы? — тут же уточнил Ершов.

Поделиться:
Популярные книги

Пипец Котенку! 2

Майерс Александр
2. РОС: Пипец Котенку!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Пипец Котенку! 2

Кодекс Охотника. Книга IX

Винокуров Юрий
9. Кодекс Охотника
Фантастика:
боевая фантастика
городское фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга IX

Измена. Избранная для дракона

Солт Елена
Любовные романы:
любовно-фантастические романы
3.40
рейтинг книги
Измена. Избранная для дракона

Академия

Кондакова Анна
2. Клан Волка
Фантастика:
боевая фантастика
5.40
рейтинг книги
Академия

Цеховик. Книга 2. Движение к цели

Ромов Дмитрий
2. Цеховик
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Цеховик. Книга 2. Движение к цели

Убивать чтобы жить 4

Бор Жорж
4. УЧЖ
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 4

Последнее желание

Сапковский Анджей
1. Ведьмак
Фантастика:
фэнтези
9.43
рейтинг книги
Последнее желание

Босс для Несмеяны

Амурская Алёна
11. Семеро боссов корпорации SEVEN
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Босс для Несмеяны

На границе империй. Том 7. Часть 3

INDIGO
9. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.40
рейтинг книги
На границе империй. Том 7. Часть 3

Лишняя дочь

Nata Zzika
Любовные романы:
любовно-фантастические романы
8.22
рейтинг книги
Лишняя дочь

Кротовский, побойтесь бога

Парсиев Дмитрий
6. РОС: Изнанка Империи
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Кротовский, побойтесь бога

Совок

Агарев Вадим
1. Совок
Фантастика:
фэнтези
детективная фантастика
попаданцы
8.13
рейтинг книги
Совок

Попаданка

Ахминеева Нина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Попаданка

Кодекс Охотника. Книга XVIII

Винокуров Юрий
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVIII