ref-21368 (Выдающиеся личности в истории вычислительной техники. Августа Ада Лавлейс), страница 2

2016-07-31СтудИзба

Описание файла

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

Онлайн просмотр документа "ref-21368"

Текст 2 страницы из документа "ref-21368"

4. ОСНОВНЫЕ ИДЕИ РАБОТЫ АДЫ ЛАВЛЕЙС "ПРИМЕЧАНИЯ ПЕРЕВОДЧИКА"

Скромные по названию "Примечания переводчика" более чем вдвое превышают текст переведённой статьи (статья Менабреа занимает 20 страниц, а примечания – 50). Всего 8 примечаний, посвящённых, в основном, трём взаимосвязанным вопросам уточнения и пояснения для читателя некоторых принципов и особенностей работы аналитической машины; рассмотрение теоретических возможностей машины; программирование решения задач на этой машине.

В примечании А Лавлейс сравнивает две машины – разностную и аналитическую. Она отмечает, что вычислительная машина представляет собой совершенно иную область науки и техники и уделяет внимание выработке соответствующей терминологии. По определению Лавлейс, аналитическая машина представляет собой воплощение науки об операциях и сконструирована специально для действий над абстрактными числами как объектами этих операций. "Под словом операция, - пишет Лавлейс, - мы понимаем любой процесс, который изменят взаимное отношение двух или более вещей, какого рода эти отношения ни были бы. Это наиболее общее определение (охватывающее все предметы во Вселенной). … Операционный механизм может быть приведён в действие независимо от объекта, над которым производится операция. … Этот механизм может действовать не только над числами, но и над другими объектами, основные соотношения между которыми могут быть выражены с помощью абстрактной науки об операциях и которые могут быть приспособлены к действию операционных обозначений и механизма машины. Предположим, например, что соотношения между высотами звуков в гармонии и музыкальной композиции поддаются такой обработке; тогда машина сможет сочинять искусно составленные музыкальные произведения любой сложности или длительности"/2/.

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

Лавлейс по достоинству оценила значение изобретений, лежащих в основе ткацкого станка Жаккара (перфокарт и соответствующих механизмов) и применённых Бэббиджем для управления аналитической машины. Она образно описала значение перфокарт. "Карты только указывают сущность операций, которые должны быть совершены, и адреса переменных, на которые эти действия направлены. Можно сказать достаточно точно, что аналитическая машина ткёт алгебраические удары, как ткацкий станок Жаккара – цветы и листья"/2/.

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

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

Примечание D представляет существенный интерес для истории программирования. Здесь приведена программа машинного решения системы двух линейных уравнений с двумя неизвестными. Лавлейс впервые применяет термин "рабочая переменная", эквивалентный современному – "рабочая ячейка". Этот термин Лавлейс использует для обозначения трёх типов колонок памяти:

С заранее установленными данными,

Хранящими конечные результаты вычислений,

Содержащие промежуточные результаты вычислений.

Эти виды рабочих ячеек выделяются и в современных руководствах по программированию. Лавлейс предлагает при выполнении операции сложения её результат записывать на ту же колонку памяти, где до этого хранилось одно из слагаемых (делается для экономии памяти). Для обозначения такой операции она пользуется двумя формами записи. Более краткая форма Yn=Yp+Yn аналогична той, которая применялась в одном из алгоритмических языков – Фортране.

В примечании Е Лавлейс уточняет и развивает соображения Менабреа о возможности расчёта на аналитической машине функций вида: Y= a + bx , Y = A + BcosX. Здесь Лавлейс формулирует: "Многие лица, недостаточно знакомые с математикой, считают, что роль машины сводится к получению результатов в цифровой форме, а природа самой обработки данных должна быть арифметической и аналитической. Это заблуждение. Машина может обрабатывать и объединять цифровые величины точно так, как если бы они были буквами или любыми другими символами общего характера, и фактически она может выдать результаты в алгебраической форме" /2/. В этом же примечании Лавлейс впервые вводит понятие цикла операций, а также понятие цикла циклов.

В примечании F содержится, в частности, интересное замечание Лавлейс о возможностях аналитической машины получать решение такой задачи, которую из-за трудностей вычислений практически невозможно решить вручную. Здесь (устройство) машина рассматривается не как устройство, заменяющее человека, а как устройство, способное выполнять работу, превышающую практические возможности человека.

В заключительном примечании G дана программа вычисления чисел Бернулли, в которой Лавлейс продемонстрировала возможность программирования на аналитической машине.

Немалое значение для истории науки представляет вопрос: насколько точно и удачно Лавлейс реализовала свою идею – составление машинной программы для решения сравнительно сложной задачи? Проверить вручную подобную программу весьма затруднительно – желателен практический эксперимент на ЭВМ. Такой эксперимент был проведён в СССР в 1978 году на машине БЭСМ-6. Текст программы был закодирован на языке программирования Фортран в Дубне, отладка программы выявила одну ошибку и одну опечатку. И это вполне понятно, так как написать подобную работу без проверки на компьютере и без ошибок невозможно. Ещё один важный пункт – программа Лавлейс требует минимального количества перфокарт и обеспечивает экономию памяти.

Примечание G Интересно ещё и в другом отношении. Широкую известность получило высказанное Лавлейс мнение о принципиальных возможностях аналитической машины: ”Аналитическая машина не претендует на то, чтобы создавать что-то действительно новое. Машина может выполнить всё то, что мы умеем ей предписать. Она может следовать анализу. Но она не может предугадать какие-либо аналитические зависимости или истины. Функции машины заключаются в том, чтобы помочь нам получить то, с чем мы уже знакомы“ /2/.

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

5. ЗНАЧЕНИЕ РАБОТЫ АДЫ ЛАВЛЕЙС

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

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

Усвоив идеи Бэббиджа и обладая глубокими познаниями в математике, Лавлейс с большой энергией проповедует эти идеи, стремясь сделать их широко известными и понятными, стараясь заинтересовать учёных работами Бэббиджа. Она организовывает целую компанию по популяризации машины и достигает успехов: часть их "детища" была построена. Ада Лавлейс высказала ряд идей, получивших широкое применение только в настоящее время. Основной итог её работы – создание основ программирования на универсальных цифровых вычислительных машинах.

В память об Аде Лавлейс назван разработанный в 1980 году язык АДА – один универсальных языков программирования. Этот язык был широко распространён в США, и Министерство Обороны США даже утвердило название “Ада”, как имя единого языка программирования для американских вооруженных сил, а в дальнейшем и для всего НАТО.

6.ДЕЯНИЯ ГРЭЙС ХОППЕР

6.1. Грэйс Хопер

Грэйс Хоппер (Grace Hopper) родилась в 1906 году - на 91 год позже Ады. Ее карьера, хотя и нетипична для женщины, на первых порах не представляла ничего особенного - Вессарский колледж, степень доктора математики в Йельском университете в 28 лет, профессорская должность в Вассаре. Таланты умной девочки, казалось бы, раскрыылись, жизнь шла своим чередом, и ничто не предвещало бурных изменений.
Как и в случае с компанией Helwett Packard, для полной реализации потенциала Грэйспоторебоввалассь экстраоринарная ситуация. Ее создала Вторая мировая война. Грэйс, ужже тридцатисемилетняя дама-профессор, вступила в женскую добровольную организацию содействия ВМС США. Для того, чтобы кобразом изменить свою жизнь, человек должен иметь авантюрстическую жилку, и Грэйс обладала ей в полной мере. Однажды она так выразила свой основной жизненный принцип: "Если у вас возникла интересная идея, валяйте, делайте. Извиниться потом легче, чем заранее получить разрешение".

6.2. Mark-1 - воплощение Аналитической Машины

Итак, младший лейтенант Грэйс Хоппер была направлена в Гарвардский университет, где к тому времени был установлен компьютер Mark-1.
В создании Mark-1 приняли участие силы - ВМС США, заказавшие универсальную счетную машину для расчетов баллистических таблиц: фирма IBM, президент которой Томас Уотсон в патриотическом порыве финансировал военную разработку и предоставил производственные мощности для создания необходимых деталей; и математик Говард Эйкен. А в основу Mark-1 было положено оставленное Бэббиджем описание его Аналитической Машины.
Полученное "чудовище" достигало 17 м в длину и 2,5 м в высоту. Провода, которыми соединялись его 750 тыс. деталей имели суммарную длину более 800 км. Программа вводилась с перфоленты, а данные с перфокарт (не зря же, в конце концов, перфораторы составляли львиную долю продукции IBM). Компьютер имел электромеханическое реле и работал по тем временам очень быстро - 0,3 с у него уходило на сложение и вычитание двух чисел и 3 с на умножение.
Учитывая интерес Грэйс к двум смежным областям - геометрии и механике,- она была идеальным кандидатом на работу с компьютерами типа Mark-1, когда любой программист (такого термина тогда еще не существовало, а должность Грэйс называлась словом "кодировщик") одновременно блестяще разбирался в механическом содержимиом громоздкой машины. "Интеллектуальным" обслуживанием машины, помимо профессора и младшего лейтенанта Грэйс Хоппер, занимались математики-мичманы Роберт Кэмпбел и Ричард Блок.
Существует легенда, что Грэйс принадлежит термин debugging (для программы - отладка; а буквально - изничтожение насекомых). История такова: однажды Mark-1 сломался из-за того, что в одном из реле покончил жизнь самоубийством крохотный мотылек (bug). Останки бедняги были аккуратно извлечены. Тогда-то якобы Грэйс впервые и употребила термин debugging, имея в виду ту самую работу, которой в данный момент была занята группа программистов, - очистку компьютера от насекомых. На самом деле слово bug в английском языке имело двойное значение (и насекомое, и техническая неисправность) задолго до Грэйс, так что мы имеем дело с очередным апокрифом компьютерного общества.
Но если Аде Лавлейс принадлежит право интеллектуальной собственности на циклы, то Грэйс и ее коллеги в 1944 году использовали эти принципы на практике. С точки зрения Грэйс, подпрограмами были сравнительно универсальные последовательности команд, которые моно было об'единять в более крупные блоки. Свои подпрограммы программисты хранили в блокнотах и при необходимости переписывали их друг у друга. При этом им приходилось каждый раз заново рассчитывать адреса переменных. Учитиывая, что текст записывался в кодах, а складывать программисты, как правило, не умеют, можно себе представить, как часто при переписыании возникали ошибки. Да и читать программы, даже снабжженные комментариями, оказывалось достаточно сложно.

6.3. От кодов к языку

Первая попытка облегчить участь программистов была сделана в 1948 году. Алан Тьюринг и Макс Нейман в Манчестере (Англия) вели работы по созданию компьютера, аналогичного американскому и, кстати, получившему то же название - Mark-1. Для него была создана так называемая система "сокращенного кодирования" - первый язык высокого уровня. Изначально задуманные 32 машинные команды - длинной пять байтов каждая - для удобства получали буквенные обозначения. Однако затем длина команд была увеличена до шести байтов, и в результате многие преимущества новой системы были сведены на нет: каждая команда обозначалась уже двумя символами, но для сокращения избыточности второй из них одновременно оказывался началом следующей команды. С помощью телетайпа производилось двоичное кодирование и создавалась перфолента.
Следующим шагом было "короткое кодирование". У Джона Мочли, работающего над созданием компьютера UNIVAC, возникла идея научить компьютер воспринимать алгебраические уравнения в их традиционном виде. Затем специальная программа-интерпретатор переводила уравнение на язык нулей и единиц. В полной мере реализовать этот замысел не удалось, потому что знаки математических действий по-прежнему приходилось заменять на их численные коды. Интерпретаторы стали первой попыткой сделать компьютер более дружественным, но интерпретирующая программа пожирала и без того скудные ресурсы памяти и замедляла выполнение программ. Да и целесообразность интерпретации введенной с перфокарт программы выглядит, вообще, говоря, сомнительно.
Вот этот "интерпретатор" и навел Грэйс Хоппер (которая работала в фирме Джона Мочли на мысль, что для общения человека с компьютером есть более приятный способ, чем кодирование. Однако нужно ли было такое "очеловечивание" компьютера? В какой-то момент Грэйс заметила, что программисты постепенно изолируют себя от остального человечества и начинают мыслить в тех же терминах, что и счетные машины. Толчком, как утверждают, послужили собственные проблемы Грэйс при подведении баланса ее банковского счета: по привычке она попыталась произвести сложение и вычитание в восьмеричной системе исчисления, и очень удивилась, когда ее итог не совпал с тем, что получилось у банка.
К 1952 году из "сокращенного кодирования" вырос первый компилятор - язык Autocod, созданный Алексом Гленном.
Хотя программисты, олберегая свое исключительное положение при вычислительной машине, всячески сопротивлялись распространению языков типа Autocod, фирмы-производители, пытавшиеся вывести компьютеры за пределы военных и униерситетских лабораторий, вкладывали в создание новых языков значительные средства.
Компания Raimington Rand, купившая права на UNIVAC, натолкнулась на нехватку "жрецов в блых халатах", свободно "чирикающих" на двоичном коде, поэотму процесс общения с машиной надо было облегчить и включить в поставку компьютера программное обеспечение. Возникла идея создания библиотеки подпрограмм, из которой программа-компоновщик (компилятор) выбирала бы необходимые блоки и автоматически устанавливала нужную адресацию. В 1951 г. Гhэйс Хоппер было поручено создать такую библиотеку. Несколько лет спустя, когда ею была реализована уже четвертая версия компилятора A (версия A-3), из маркетинговых соображений он был преименован в Math-Matic.
Пятидесятые годы были периодом активной разработки машинно-зависимых языков высокого уровня. В 1953 году вышли в свет два из них - Speedcoding фирмы IBM, который она разумно представила со своим новым компьютером IBM 701, и Vortex, созданный в Массачусетском институте. Vortex был первым языком, в котором символы вводилиь в их естественном виде. Он, однако, не был коммерческой разработкой и практически не распространился за пределы МТИ.
Основным признаком таких языков была краткость инструкций - пара символов либо цифровой код, так что по-прежнему для работы с машиной нужно было изучать "дельфиний" язык.
Использовать полноценные английские слова догадалась Грэйс Хоппер. Для того, чтобы облегчить компьютеру работу, в качестве базиса было принято, что все инструкции обладают значимыми превым и третьим символом. Остальные символы при анализе игнорировались. Грэйс, видя перспективность этого подхода к языкам программ, действовала на свой страх и риск. Когда в 1956 году компилятор B-0 был готов, ей оставалось извиниться за самоуправство и задним числом убедить начальника в перспективности нового подхода. Для пущей наглядности она преобразовала компилятор в трехязычный, заставив его понимать инструкции на английском, французском и немецком языках. Этим она полоило начало одному порочному направлению в программировании - переводу инструкций языка на программирования на национальные языки (забегая вперед, скажем, что впоследствии появились самые разнообразные версии языка Cobol - вплоть до китайской, где инструкции записывались с помощью иероглифов).
Как бы то ни было, после такой демонстрации цель - убедить начальство, что компьютер может понимать нормальные слова - была достигнута, и B-0, в миру Flow-Matic, был одобрен для коммерческой реализации.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее