Редактирование: Программирование в 1900-х годах
Материал из Documentation.
Перейти к:
навигация
,
поиск
История программирования в 1900-х годах — это, по сути, история о том, как с помощью коммутационной панели табуляторов Германа Холлерита определялась логика обработки данных. В эпоху отсутствия электронных компьютеров, именно эта панель являлась основным инструментом, позволявшим «программировать» электромеханическую машину для выполнения различных задач, связанных, прежде всего, с обработкой результатов переписи населения США 1900 года. Рассмотрим компоненты табулятора, игравшие ключевую роль в процессе «программирования». Перфокарта представляла собой носитель информации, где данные кодировались в виде отверстий, расположенных в определенных позициях. Каждая позиция соответствовала конкретному атрибуту, например, полу, возрасту, месту рождения или профессии. Считывающее устройство, оснащённое множеством металлических контактов (игл), определяло наличие или отсутствие отверстия в каждой позиции перфокарты. Сигналы от этих контактов поступали на коммутационную панель (plugboard), которая и определяла дальнейшую обработку данных. Коммутационная панель представляла собой матрицу разъёмов, расположенных на лицевой стороне табулятора. Каждый разъём соответствовал определенной позиции на перфокарте или определённому счётчику. «Программирование» заключалось в соединении этих разъёмов между собой с помощью специальных проводов, создавая электрические цепи, определяющие логику работы машины. Представим несколько гипотетических сценариев обработки данных переписи 1900 года и соответствующие конфигурации коммутационной панели: * Сценарий 1: Подсчёт количества мужчин в возрасте от 20 до 30 лет. Для этого необходимо было соединить контакты, соответствующие позиции «пол» (мужской) и позициям, соответствующим возрасту от 20 до 30 лет, с одним и тем же счётчиком. Таким образом, каждый раз, когда машина считывала перфокарту с отверстиями, указывающими на мужской пол и возраст в указанном диапазоне, этот счётчик увеличивался на единицу. * Сценарий 2: Определение среднего размера семьи в штате [[Нью-Йорк (штат)|Нью-Йорк]]. Для этого требовалось сначала подсчитать общее количество людей, проживающих в штате Нью-Йорк (соединив контакты, соответствующие позиции «штат» с кодом штата Нью-Йорк, со счётчиком). Затем, необходимо было подсчитать общее количество семей в штате Нью-Йорк (используя аналогичную конфигурацию). Разделив первое число на второе (операция, которую табулятор сам по себе выполнить не мог, и требовалось выполнять вручную на основании полученных результатов подсчёта), можно было получить средний размер семьи. * Сценарий 3: Определение наиболее распространенной профессии среди иммигрантов. Для этого требовалось соединить контакты, соответствующие позиции «иммигрант» с контактами, соответствующими различным профессиям. При этом каждый счётчик соответствовал определённой профессии. После обработки всех перфокарт, оператор анализировал показания счётчиков и определял профессию, которой соответствовал самый большой счётчик. «Программирование» табуляторов в 1900-х годах было крайне примитивным. Отсутствовали какие-либо возможности для реализации логических условий (например, «если…то…») или циклов (повторения определённой последовательности действий). Невозможно было создавать подпрограммы или использовать повторно код. Каждая задача требовала уникальной конфигурации коммутационной панели, и для сложных вычислений требовалось огромное количество ручного труда. Отладка «программ» также была непростой задачей, поскольку приходилось вручную проверять все соединения на коммутационной панели. Операторы табуляторов играли ключевую роль в процессе обработки данных. Они должны были обладать глубоким пониманием принципов работы машины, уметь читать и интерпретировать данные на перфокартах, а также тщательно и аккуратно настраивать коммутационную панель. Обучение операторов занимало значительное время, и опытные операторы были очень востребованы. Несмотря на свои ограничения, «программирование» табуляторов Холлерита стало важным шагом на пути к созданию современных компьютеров и языков программирования. Оно продемонстрировало возможность автоматизации обработки данных и заложило основу для будущих разработок в этой области. Коммутационная панель, по сути, была ранней формой интерфейса, позволявшей человеку взаимодействовать с машиной и определять ее поведение. Этот опыт послужил стимулом для дальнейших исследований в области создания более гибких и мощных вычислительных устройств. {{История программирования}} [[Категория:Программирование в 1900-х годах| ]]
Описание изменений:
Отменить
|
Справка по редактированию
(в новом окне)
Шаблоны, использованные на текущей версии страницы:
Шаблон:История программирования
Просмотры
Статья
Обсуждение
Править
История
Личные инструменты
Представиться системе
Навигация
Заглавная страница
Случайная статья
Инструменты
Ссылки сюда
Связанные правки
Загрузить файл
Спецстраницы