• Авторизация


Грейс Хоппер 19-06-2025 11:56 к комментариям - к полной версии - понравилось!


Информатика, Программирование

Глеб Погудин

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

grace_hopper_fig1_600 (560x700, 131Kb)

Грейс Хоппер (1906–1992)

Компьютер или калькулятор?

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

О человеке, который сделал первые шаги в этом направлении, мы и расскажем. Её звали Грейс Хоппер, однако в разные времена она была известна как «удивительная Грейс» (Amazing Grace) и «бабушка Кобол» (Grandma COBOL). Интересно, что «Amazing Grace» — вообще-то название популярного христианского гимна, известного с 1779 года.

Занятия математикой и первый компьютер

Родилась Грейс в 1906 году в Нью-Йорке. Свою научную карьеру начала как чистой воды математик — в  1930 году получила степень магистра в Йельском университете и там же написала под руководством известного математика Ойстина Оре диссертацию по алгебре. С 1931 г. начала преподавать математику.

grace_hopper_fig2_900 (700x346, 99Kb)

Компьютер «Мark I»

Всё изменилось со вступлением США во вторую мировую войну. Грейс пошла служить добровольцем на флот. В звании младшего лейтенанта её направили в вычислительную лабораторию флота при Гарвардском университете. Там и произошло её первое знакомство с компьютерами, точнее говоря — с  компьютером «Мark I». О нём хотелось бы сказать особо. Эта громадина весила четыре с половиной тонны и занимала площадь в несколько десятков квадратных метров. Несмотря на столь внушительный размер, по возможностям «Мark I» уступал некоторым современным калькуляторам: в памяти он мог хранить 72 числа и делать три операции сложения или вычитания за секунду. Чтобы перемножить два числа, ему требовалось уже шесть секунд.

grace_hopper_fig3_756 (584x700, 109Kb)

Работа с компьютером «Мark I»

С тех пор всю жизнь Грейс Хоппер была связана с военно-морским флотом США. Со временем она достигла чина контр-адмирала, и на большинстве фотографий мы видим её в мундире с внушительным, кстати, количеством наград.

grace_hopper_fig4_1280 (700x464, 81Kb)

Миноносец «Amazing Grace» назван в честь Грейс Хоппер

Первый компилятор

grace_hopper_fig9_300 (300x388, 94Kb)

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

После войны, в 1949 году, Грейс Хоппер попала в группу разработчиков компьютера «UNIVAC I» в компании «Eckert-Mauchly Computer Corporation». Он был гораздо более «сообразительным»  — сложение выполнялось примерно за 500 микросекунд, а умножение — за 0,002 секунды. Для него Грейс Хоппер и написала в 1952 году первый в мире компилятор A-0. Он был устроен предельно просто: Грейс записала часто используемые ею подпрограммы (например, возведение числа в степень) в виде машинного кода на кассету (тогда основными носителями информации были они, а не диски или флешки), присвоив каждой свой уникальный номер.

Теперь в основной программе можно было, всего лишь указывая номер, вызывать соответствующую подпрограмму с кассеты. Это не только сократило программы, но и ввело в программирование принципиально новый шаг: сначала ты пишешь программу на своем языке (в данном случае — используя номера подпрограмм), а потом специальная программа — собственно компилятор — превращает этот текст в машинный код. Грейс Хоппер хотела, чтобы «работа программиста стала ближе деятельности математика», недаром одна из последующих версий этого компилятора получила название MATH-MATIC.

grace_hopper_fig5_300 (300x348, 87Kb)

Премия имени Грейс Хоппер от ассоциации вычислительной техники (ACM) впервые была присуждена в 1971 году Дональду Кнуту→

С точки зрения современного человека, создав A-0, Грейс Хоппер совершила одно из важнейших открытий в вычислительной технике. Однако, как нередко случается, современники не придавали её деятельности особого значения. Она писала позже: «У меня был работающий компилятор, и никто им не пользовался. Мне говорили, что компьютер может выполнять только арифметические операции». Однако довольно скоро Грейс Хоппер убедила руководство в перспективности такого подхода к программированию и в 1954 году возглавила отдел автоматизации программирования.

Do you speak English?

Под её руководством был создан язык FLOWMATIC, к которому руководство также поначалу относилось скептически. Это был первый в мире язык программирования, программы на котором состояли из слов английского языка. С точки зрения удобства это был очень важный шаг — если вы знаете английский, то даже вам, не знакомым с языком FLOW-MATIC, примерно понятно, что делает эта программа.

grace_hopper_fig6_600 (600x474, 69Kb)

На лекции

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

grace_hopper_fig10_600 (600x212, 62Kb)

Фрагмент программы, написанной на языке COBOL

Поэтому самый известный язык, созданный Грейс Хоппер, назывался «COBOL». Его название является аббревиатурой от «COmmon Business Oriented Language» — общий язык для бизнеса или, если перевести более вольно, всеобщий язык для деланья дел. Он оказался очень продуманным — поддерживался и развивался в течение сорока лет, изменения вносились в COBOL вплоть до 2002 года. Это весьма солидный возраст для компьютерной технологии.

«Главное открытие»

grace_hopper_fig7_740 (700x551, 158Kb)

Процесс удаления этого мотылька Грейс назвала «debugging»

Многие в шутку говорят, что главным достижением Грейс Хоппер было не написание первого компилятора, а то, что она придумала термин «debugging» (на русский это обычно переводится как отладка, хотя иногда пишут просто «дебаг»). Он означает поиск ошибок в программе. Дело в том, что во время работы Грейс и её коллег на компьютере «Mark II» в Гарварде в 1947 году одна из неисправностей была связана с тем, что внутри компьютера застрял мотылёк.

grace_hopper_fig8_300 (300x421, 89Kb)

Грейс Хоппер похоронена на Арлингтонском национальном кладбище

С тех пор и повелось называть поиск ошибок словом «debugging» (буквально на русский это переводится примерно как «дезинсекция» или «разжучивание»). Сам же «герой» оказался вклеен в лабораторный журнал, который теперь хранится в Национальном музее американской истории в Вашингтоне.

«Бабушка Кобол»

Кроме весьма удачной карьеры программиста Грейс Хоппер много лет посвятила популяризации программирования, в частности языка COBOL, и обучению ему. Она была известна как интересный и эмоциональный рассказчик. Например, она часто приходила на лекцию с тридцатисантиметровой веревочкой, поясняя, что столько свет проходит за одну наносекунду и именно поэтому сигнал со  спутников идет так долго, а компьютерам лучше быть маленькими.

Вот такой была эта воистину удивительная Грейс Хоппер!

elementy.ru

i (2) (150x150, 4Kb)

вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник Грейс Хоппер | stewardess0202 - Дневник stewardess0202 | Лента друзей stewardess0202 / Полная версия Добавить в друзья Страницы: раньше»