Компьютерное программирование в Эпоха перфокарт

редактировать
Студенты-программисты в Высшей технической школе в Ахене, Германия, в 1970 году использовали IBM 026 нажатия клавиш. Перфокарта из программа Fortran.

С момента изобретения компьютеров языков программирования до середины 1970-х годов большинство компьютерных программистов создавали, редактировали и хранили свои программирует построчно на перфокартах.

Содержание
  • 1 Перфокарты
  • 2 Рабочая среда
  • 3 Идентификация и последовательность
  • 4 См. также
  • 5 Ссылки
  • 6 Внешние ссылки
  • 7 Галерея
Перфокарты

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

Часто программисты сначала записывали свою программу на специальных формах, называемых листами кодирования, стараясь отличить цифру ноль от буквы O, цифру один от буквы I, восемь от B, два от Z и т. Д. при использовании местных соглашений, таких как «с нулевой косой чертой ». Затем эти формы были взяты операторами клавишной панели, которые с помощью машины keypunch, такой как IBM 026 (позже IBM 029 ), пробили настоящую колоду. Часто другой ключевой оператор перфорации затем брал эту колоду и повторно перфорировал ее из кодовых листов - но с использованием «верификатора», такого как IBM 059, который просто проверял, что исходная перфорация не имела ошибок.

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

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

Рабочая среда

В приведенном ниже описании описывается магазин, полностью принадлежащий IBM ("магазин" на языке программистов для сайта программирования), но магазины, использующие мэйнфреймы других производителей (или миникомпьютеры ) будет иметь аналогичное оборудование, хотя из-за стоимости или доступности может иметь оборудование другого производителя, например магазин NCR, ICL, Hewlett-Packard (HP) или Control Data будет иметь NCR, ICL, HP или Control Data компьютеры, принтеры и так далее, но есть клавиши IBM 029. Огромные размеры и присутствие IBM в отрасли часто приводили к тому, что многие из их соглашений принимались другими поставщиками, поэтому приведенный ниже пример довольно похож на большинство мест, даже в магазинах, не принадлежащих IBM.

Типичная корпоративная или университетская компьютерная установка будет включать набор комнат с большой, с ограниченным доступом, комнатой с кондиционером для компьютера (похожей на сегодняшнюю серверную) и меньшей, более тихой смежной комнатой для подачи заявок. Рядом будет комната, полная машинок с клавишами для программистов. Бухгалтерская машина IBM 407 может быть настроена для включения в список вновь созданных или отредактированных программ (распечатанных на фальцованной бумаге ) для проверки. IBM 519 может быть предоставлен для воспроизведения программных дек для резервной копии или для ввода последовательных номеров в столбцах 73-80.

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

Во многих компьютерных установках в качестве «разделителей заданий» использовались карты с противоположным срезом по углу (иногда без среза по углам), чтобы оператор мог одновременно складывать несколько колод заданий в устройство чтения карт и иметь возможность быстро отделите деки вручную, когда они извлекли их из штабелеукладчика. Эти карточки (например, карточка JCL «JOB» для начала новой работы) часто предварительно перфорировались в большом количестве заранее. Это было особенно полезно, когда главный компьютер не считывал карты напрямую, а вместо этого считывал их изображения с магнитной ленты, которая была подготовлена ​​автономно меньшими компьютерами, такими как IBM 1401. После считывания карт оператор компьютера возвращал колоду карт - обычно в одно из набора отсеков, обозначенных в алфавитном порядке, в зависимости от последнего инициала программиста. Поскольку программы запускались в пакетном режиме обработки, может пройти значительное время, прежде чем любой печатный или перфорированный вывод будет произведен и помещен в те же самые маленькие отверстия - однако в малоиспользуемой системе это было возможно чтобы внести изменения и перезапустить программу менее чем за час.

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

Меньшие компьютеры, такие как, 1620 и 1130, и миникомпьютеры, такие как PDP-11, были дешевле и часто работали как «открытый магазин», где программисты в течение определенного периода времени получали эксклюзивное право на использование компьютера. Клавиатура обычно располагалась поблизости для быстрого исправления - хотя многие из этих небольших машин работали с перфоленты.

Идентификация и последовательность
Одна программная дека с отдельными подпрограммами, отмеченными. Маркировка показывает эффект редактирования, когда карточки заменяются или переупорядочиваются.

Многие ранние языки программирования, включая Fortran, Cobol и различные языки ассемблера IBM использовались только первые 72 столбца карты - традиция, восходящая к кард-ридеру IBM 711, который использовался в IBM 704/709/7090/7094 series (особенно IBM 704, первый компьютер массового производства с арифметическим оборудованием с плавающей запятой), который мог читать только 72 из 80 столбцов за один проход.

Столбцы 73-80 игнорировались компиляторами и могли использоваться для идентификации или порядкового номера, чтобы, если колода карт была отброшена, ее можно было восстановить в надлежащем порядке с помощью сортировщика карт. В зависимости от языка программирования, операторы вывода отладки могут быть быстро активированы и «закомментированы» с помощью карточек с такими операторами, в которых перфорирован символ комментария (например, 'C' в Фортране) в столбце 80 карточки; поворот карты встык бы поместил букву «C» в ведущий столбец, что преобразовало бы содержимое карты, перевернутой назад, в комментарий, оставив физическую карту на месте в колоде.

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

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

См. Также
Ссылки
Внешние ссылки
Галерея
Последняя правка сделана 2021-05-15 08:35:54
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте