От перфокарт до Python

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

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

Все изменилось в 1952 году с Компилятор A-0серия спецификаций, которая автоматически переводит языки высокого уровня, такие как английский, в машиночитаемый двоичный код.

Компилятор, теперь Веха IEEEбыл разработан Грейс Хопперкоторый работал старшим математиком в Корпорация Eckert-Mauchly Computer.теперь часть Unisysв Филадельфии.

Инновация IEEE Fellows позволила программистам писать код быстрее и проще, используя английские команды. Однако для нее самым важным результатом стало влияние, которое она оказала на развитие современных языков программирования, сделав написание кода более доступным для всех, согласно Статья в Penn Engineering Today.

Церемония открытия компилятора A-0 в качестве важной вехи IEEE состоялась в Филадельфии 7 мая. Университет ПенсильванииИменно здесь зародилась компания Eckert-Mauchly Computer Corp.

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

Устранение системы перфокарт

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

Система перфокарт была трудоемкой; выполнение задачи могло занять несколько дней. Карты нельзя было использовать даже с небольшим дефектом, например, с загнутым углом. Метод также имел высокий риск человеческой ошибки.

После руководства разработкой Электронный числовой интегратор и компьютер (ENIAC) в Пенсильвании, специалисты по информатике Дж. Преспер Экерт и Джон В. Мочли приступили к созданию замены перфокартам. ENIAC был построен для повышения точности артиллерии США во время Второй мировой войны, но эти двое хотели разработать компьютеры для коммерческих приложений, согласно Статья в Пенсильванском центре книги.

Read more:  62-миллионная ископаемые ископаемые решает историю эволюции млекопитающих после динозавров

Разработанная ими машина стала первым известным крупномасштабным электронным компьютером. Универсальный автомат, или UNIVAC И. Хоппер входил в команду разработчиков.

UNIVAC I использовал 6103 вакуумных трубки и занимал комнату площадью 33 квадратных метра. Машина имела блок памяти. Вместо перфокарт компьютер использовал магнитную ленту для ввода данных. Ленты, которые могли содержать аудио, видео и письменные данные, были длиной до 457 метров. В отличие от предыдущих компьютеров, UNIVAC I имел клавиатуру, чтобы оператор мог вводить команды, согласно статье Pennsylvania Center for the Book.

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

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

Этот трудоемкий процесс привел к ошибкам, поскольку «программисты — плохие копировщики», — сказал Хоппер. сказал в своей речи для Ассоциация вычислительной техники«Удивительно, как часто цифра 4 превращалась в дельту, которая была нашим символом космоса, или в букву А. Даже буква В превращалась в 13».

По словам Статья о скрытых герояхУ Хоппера возникла идея упростить программирование: заставить компьютер переводить английский язык в машинный код.

Ее вдохновил компьютерный ученый Бетти ХолбертонГенератор сортировки/слияния и короткий код Мочли. Холбертон — одна из шести женщин, запрограммировавших ENIAC на расчет траекторий артиллерии за считанные секунды, и она работала вместе с Хоппер над UNIVAC I. Ее программа сортировки/слияния, изобретенная в 1951 году для UNIVAC I, обрабатывала большие файлы данных, хранящиеся на магнитных лентах. Хоппер определила программу сортировки/слияния как первую версию виртуальной памяти, поскольку она автоматически использовала наложения без указания программиста, согласно Презентация Стэнфорда о языках программирования. Короткий код, разработанный в 1940-х годах, позволил техникам писать программы, используя короткие последовательности английских слов, которые напрямую соответствовали инструкциям машинного кода. Он перекинул мост между кодом, читаемым человеком, и инструкциями, исполняемыми машиной.

Read more:  Азия должна открыться - до Трампа невозможно вернуться к Трампу: вождь АБР

«Я думаю, что первым шагом, который показал нам, что мы действительно можем использовать компьютер для написания программ, был генератор сортировки/слияния», — сказал Хоппер в презентации. «И Short Code был первым шагом в движении к чему-то, что давало программисту фактическую возможность писать программы на языке, который не имел никакого сходства с исходным машинным кодом».

Член IEEE Грейс Хоппер вводит номера вызовов в Universal Automatic (UNIVAC I), что позволяет компьютеру находить правильные инструкции для завершения. Компилятор A-0 переводит английские инструкции в машиночитаемый двоичный код.Музей истории компьютеров

Более простое, быстрое и точное программирование

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

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

Такой библиотеки не существовало, поэтому Хоппер создала свою собственную. Она включала ленты, которые содержали часто используемые инструкции для задач, которые она называла подпрограммами. Каждая лента хранила одну подпрограмму, которой был назначен трехзначный позывной, чтобы UNIVAC I мог найти нужную ленту. Числа представляли собой наборы из трех адресов памяти: один для расположения подпрограммы в памяти, другой для расположения данных в памяти и третий для расположения выходных данных, согласно презентации в Стэнфорде.

«Все, что мне нужно было сделать, это записать набор телефонных номеров, позволить компьютеру найти их на ленте и выполнить сложение», — сказала она в Статья Центра истории вычислений. «Это был первый компилятор».

Система получила название компилятора A-0, поскольку код был написан на одном языке, который затем «компилировался» в машинный язык.

То, на что раньше требовался месяц ручной работы, кодирование Теперь это можно сделать за пять минут, согласно Статья от Cockroach Labs.

Read more:  Примечание от Stoic - Towerborne прибывает на Xbox сегодня

Хоппер представил A-0 руководителям Eckert-Mauchly Computer. Однако вместо того, чтобы воодушевиться, они заявили, что не верят, что компьютер может писать свои собственные программы, говорится в статье.

«У меня был работающий компилятор, и никто не хотел его трогать, потому что они осторожно говорили мне, что компьютеры могут только выполнять арифметические операции; они не могут создавать программы», — сказал Хоппер. «Это была работа по продаже, чтобы заставить людей попробовать это. Я думаю, что с любой новой идеей, поскольку люди испытывают аллергию на изменения, вы должны выйти и продать идею».

Руководству компании потребовалось два года, чтобы принять A-0.

В 1954 году Хоппер была повышена до директора по автоматическому программированию в подразделении UNIVAC. Она продолжила создавать первые языки программирования на основе компиляторов, включая Flow-Maticпервый англоязычный компилятор обработки данных. Он использовался для программирования машин UNIVAC I и II.

Хоппер также принимал участие в разработке КОБОЛодин из самых ранних стандартизированных языков программирования. Он позволил компьютерам реагировать на слова в дополнение к числам, и он до сих пор используется в бизнесе, финансах и административных системах. Flow-Matic Хоппера лег в основу COBOL, первые спецификации которого были опубликованы в 1959 году.

Мемориальная доска, посвященная A-0, теперь выставлена в Университете Пенсильвании. На ней написано:

В 1951–1952 годах Грейс Хоппер изобрела компилятор A-0, серию спецификаций, которые функционировали как компоновщик/загрузчик. Это было пионерское достижение автоматического программирования, а также пионерская утилита для управления подпрограммами. Компилятор A-0 повлиял на развитие арифметических и бизнес-языков программирования. Это привело к тому, что COBOL (Common Business-Oriented Language) стал доминирующим языком высокого уровня для бизнес-приложений.

The Филадельфийская секция IEEE выступил спонсором номинации.

Управляется Центр истории IEEE и при поддержке доноров программа Milestone отмечает выдающиеся технические разработки во всем мире.

2024-09-13 18:00:03


1726301361
#От #перфокарт #до #Python

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.