Изобретение бумаги позволило человечеству фиксировать знания в гораздо более удобном виде, чем при использовании глины, дерева или других носителей. Однако, если в голову приходят только свитки и книги, то это довольно узкое представление. Бумага породила не только книгопечатание, информационные технологии также воспользовались бумагой для хранения информации.
Докомпьютерная эра
На этот раз захотелось поднять исторический аспект в информационных технологиях. Еще до начала компьютерной эры хоть для какой-то автоматизации рутинного бухгалтерского труда фирма IBM предложила широкий набор механических и электромеханических устройств. Расшифорвка IBM так и говорит: "международные машины для бизнеса".
Главной задачей калькуляторов того времени было сложение чисел (долларов и центов, главным образом). Для сохранности данных и автоматизации счетных процессов начали применяться картонные карточки строго определенной формы с выбитыми отверстиями (с перфорацией). Положение отверстий показывало какая именно информация была сохранена.
Для определенности давайте возьмем один из самых распространенных форматов и посмотрим каким образом перфорация карточек закладывала ту или иную информацию.
Прежде всего нужно отметить, что на карточке явно отмечены 10 рядов с порядковыми номерами от 0 до 9. В каждом ряду 80 позиций. Так вот, для для сохранения чисел в десятичной системе счисления достаточно было выбить отверстие в столбце в соответствующем ряду. Таким образом, одна карточка могла хранить 80 подряд идущих цифр или запись, состоящую из нескольких чисел. Например, 1028 880 10. Это всего лишь 9 цифр, однако они могут означать - порядковый номер сотрудника 1028, зарплата 880 долларов 10 центов. Свободными остаются еще 71 столбец.
Такой формат представления чисел очень хорошо подходит как для чтения человеком, так и для вычисления механическим калькулятором. Механизмы хорошо входят в зацеп с отверстиями и кроме того числа могут быть считаны при помощи света и фотоэлементов.
Появление компьютеров
Как только появилась возможность обрабатывать не только числа, но и текстовую информацию, принятый уже к тому времени стандарт карточек и порядка их перфорации был дополнен весьма гениальным способом обозначения букв алфавита и других вспомогательных знаков.
Чтобы закодировать не только цифры, но и буквы потребовалось использование еще двух дополнительных рядов выше нулевого. Они получили номера 11 и 12. Такая нелогичность обычно является признаком попыток уместить новые требования в старые рамки и ограничения.
Для сохранения десятичных чисел и для совместимости со старыми порядками по-прежнему происходила перфорация в необходимом ряду (отверстие выделено красным).
Перфорация в ряду плюс комбинация отверстий в дополнительных рядах (11,12) позволяла кодировать большое количество дополнительных символов (отверстия выделены зеленым). Например, для записи символа A необходимо выбыть отверстия в 1 и 12 ряду столбца одновременно. Символ M требует наличие отверстий в 4 и 11 ряду.
Знак вопроса (?) при этом требует наличия отверстий аж в трех рядах столбца (выделено синим) - 0,7,8.
Пишем программу
Только представьте как выглядел исходный код программы на высокоуровневом языке программирования. Одна карточка способна содержать не более 80 символов и это была всего лишь одна строка теста.
Поскольку у картона довольно значительная толщина, то и толщина всей стопки перфокарт, составляющих исходный код программы могла быть довольно внушительной.
Эхо стандарта
Продвинутые аппараты перфорации карточек (Puncher) прописывали сверху содержимое в удобном человеку представлении. Если выложить карточки с исходным кодом с уступом сверху друг на друга, то пропечатанный текст сложится в исходный код. Именно с этого времени началось измерение эффективности работы программистов в строках в час. Строки = карточки. К настоящему моменту ориентироваться на такие показатели практически совершенно бессмысленно, но это же наша история, поэтому стыдно не знать)
Говорят, что размер экрана первых персональных компьютеров фирмы IBM был привязан к количеству помещающихся знаков по горизонтали. В одну строку помещалось лишь 80 знаков (текстовый режим 80х25).
О бинарных способах хранения информации, архитектуре первых компьютеров и многих других древностях, повлиявших на наш сегодняшний мир информационных технологий смотрите в следующих выпусках по ретро-тематике.
Весьма большое количество пользователей Дзена еще застали перфокарты в рабочем состоянии, поэтому будет хорошо если они смогут в чем-то поправить и дополнить этот небольшой обзор.
Поддержите статью лайком если понравилось и подпишитесь чтобы ничего не пропускать.
Также не обойдите вниманием канал на YouTube. Подписки и лайки будут приятным ответом от аудитории.