$30 off During Our Annual Pro Sale. View Details »

История автоматических вычислителей: программируемая механика

Anton
November 16, 2023

История автоматических вычислителей: программируемая механика

Лекция курса "Языки и методы программирования"
История автоматических вычислителей: программируемая механика
- Аль-Джазари
- Шарманки, музыкальные шкатулки, механическое пианино
- Граммофон
- Ткацкий станок на перфокартах - Бушон, Вокансон, Жаккард

4 октября 2023 (ранние версии: осень 2021, 2022)

Anton

November 16, 2023
Tweet

More Decks by Anton

Other Decks in Education

Transcript

  1. История автоматических
    вычислителей:
    механические вычислители на
    шестеренках,
    часть-2

    View Slide

  2. Программируемая механика:
    шарманка, граммофон,
    ткацкий станок Бушона/Жаккарда

    View Slide

  3. Разделение программы и
    исполнительного механизма,
    автоматизация вычислений

    View Slide

  4. Материалы

    Computing before computers, под редакцией
    William Aspray, 1990, в числе авторов Allan G.
    Bromley

    От абака до компьютера, Р. С. ГУТЕР
    Ю.Л.ПОЛУНОВ, 1981

    A History of Mechanical Inventions, Revised
    Edition, Abbott Payson Usher, 1954

    View Slide

  5. Ресурсы

    Archive.org

    Library Genesis (LibGen): libgen.is, libgen.lc
    (через VPN, любое зеркало)

    Скайхаб sci-hub.ru

    Google Books books.google.com

    Остальной интернет

    View Slide

  6. View Slide

  7. Арифмометр «Феликс»
    (отзыв пользователя)

    А вообще у нас был последний курс, у которого были лабораторные по математике с
    Феликсом. Следующий год уже был без арифмометра, только Минск-32 и Фортран.

    Все лабораторные не помню, но вот одна была вычисление определенного интеграла
    методом Лагранжа, что ли. И у меня всё время была ошибка, то в 32 знаке, то в 38,
    то в 40-м. И уже мне светила родная СА, когда товарищ мне дал совет : Вот тебе
    телефончик, ребята считают лабы на ЭВМ, 2 рубля за лабу.
    [...]

    Феликс нормальный, сложности были при вычислении корней. Пять раз в одну
    сторону, восемь обратно, сдвинуть на разряд, шесть раз крутануть, сдвинуть на
    разряд, но в другую сторону,и так триста раз.....Это для наперсточников, а не для
    инженеров. Хотя в 90-е могло пригодиться.

    interier, 1i7.livejournal.com/173231.html?thread=759471#t759471

    View Slide


  8. Арифметические счетные машины позволяют
    автоматизировать выполнение математических операций

    Это облегчает труд и уменьшает вероятность ошибиться,
    например, при работе с большими многоразрядными
    числами

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

    View Slide


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

    Как следствие: низкая производительность труда, высокая
    вероятность ошибиться

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

    View Slide


  10. Devices for the automatic control of mechanisms have a much
    longer history, leading back to the ancient Greek civilizations.

    Automatic mechanisms were extensively developed in the great
    astronomical clocks of the Renaissance and the automata of the
    eighteenth century.

    Two devices of particular importance to our story, the pin barrel
    music box and the punched card Jacquard loom, were well
    established by the early nineteenth century.

    Of considerable importance, but in a more abstract intellectual
    sense, was the development by Stephenson of the ball governor
    for the steam engine and the idea of feedback that it embodies.

    View Slide

  11. Программируемая механика

    View Slide

  12. Аль-Джазари

    механик-изобретатель, математик, астроном
    исламского возрождения (VIII-XIII век)

    В 1206 году написал трактат «Китаб фи марифат аль-
    хиял аль-хандасийя» (Книга знаний об остроумных
    механических устройствах),

    где описал конструкцию около 50 механизмов

    ru.wikipedia.org/wiki/Аль-Джазари

    en.wikipedia.org/wiki/Ismail_al-Jazari

    View Slide

  13. Группа «роботов»-музыкантов

    четыре человекоподобных робота, которых Аль-
    Джазари усадил в лодку и заставил играть на
    барабанах и цимбалах.

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

    Одна система, задействованная в этих устройствах,
    использовала зажимы и кулачки, помещённые в
    деревянный ящик в определённых местах, которые
    последовательно задействовали рычаги, которые,
    в свою очередь, управляли ударными инструментами.

    View Slide

  14. View Slide

  15. View Slide


  16. The Book of Knowledge of Ingenious Mechanical
    Devices, by Ibn al-Razzaz aI-Jazari

    Translated and annotated by Donald R. Hill
    Chartered Engineer, B.Sc., M.Litt., Ph.D., 2012

    archive.org/details/cover_20200113_2057/mode/2up

    archive.org/details/content_202101/mode/2up

    View Slide

  17. Шарманка,
    музыкальная шкатулка,
    механическое пианино

    View Slide

  18. View Slide

  19. View Slide

  20. View Slide

  21. View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. View Slide

  26. View Slide


  27. ru.wikipedia.org/wiki/Шарманка

    Созданный во Франции в XVII веке примитивный
    экземпляр мог воспроизводить только одну
    мелодию

    служил для обучения певчих птичек, и название
    было подходящее — «птичий органчик».

    Наверное, это первый экземпляр, сохранившийся и
    дошедший до нас.

    View Slide


  28. soundtimes.ru/starinnye-muzykalnye-instrumenty/sharmanka

    О применении кулачковых устройств, которые служат для
    образования звука в шарманке, было известно еще с
    античных времен.

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

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

    View Slide


  29. soundtimes.ru/starinnye-muzykalnye-instrumenty/sharmanka

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

    пневматический орган, изобретенный в III веке до рождества
    Христова знаменитым древнегреческим изобретателем
    Ктезибием, имел косвенное отношение к появлению шарманки.

    View Slide


  30. soundtimes.ru/starinnye-muzykalnye-
    instrumenty/sharmanka

    В эпоху Возрождения механизмы для извлечения
    звука продолжали совершенствоваться и для
    утехи знати уже создавались механические
    музыкальные инструменты, воспроизводящие
    мелодии:

    шарманки, музыкальные шкатулки и табакерки.

    View Slide

  31. View Slide

  32. View Slide

  33. View Slide

  34. View Slide

  35. View Slide

  36. View Slide

  37. View Slide

  38. View Slide

  39. View Slide

  40. View Slide

  41. View Slide

  42. Шкатулка с секретом

    Валик (барабан) с штырями

    Штыри оттягивают молоточки

    Молоточки бьют по колокольчикам

    Порядок расположения штырей на валике
    определяет мелодию

    Валик крутит пружина

    Чтобы завести пружину, нужен храповик («лишняя
    деталь» в сюжете мультика)

    View Slide

  43. View Slide

  44. View Slide

  45. View Slide

  46. View Slide

  47. View Slide

  48. View Slide

  49. View Slide

  50. View Slide

  51. View Slide

  52. View Slide

  53. Мир дикого запада

    Механическое пианино (в заставке и фон внутри серий)

    Отсылка-1: антураж времени

    Отсылка-2: философский подтекст

    Пианино — это программируемый автомат

    В контексте фильма — тоже робот, только из эпохи, в
    которую играют роботы будущего (которые тоже есть
    программируемые автоматы)

    (т. е. в некотором роде потомки этого пианино)

    View Slide


  54. Программа здесь: мелодия,
    последовательность нот (идея)

    Носитель программы: валик с штырями,
    бумажная лента с отверстиями (перфолента)
    — материальный объект

    Исполнительное устройство (механизм):
    остальная часть инструмента (молоточки,
    колокольчики, струны, меха, клапаны и т. п.)

    View Slide


  55. Носитель программы подключается к
    исполнительному устройству в качестве
    составной детали

    Изменять носитель программы легко,

    изменять исполнительное устройство
    целиком сложно

    View Slide

  56. Еще: граммофон

    View Slide

  57. View Slide

  58. View Slide

  59. View Slide

  60. View Slide

  61. View Slide

  62. View Slide

  63. View Slide

  64. Граммофон

    Патефон — портативный граммофон (по названию фирмы-
    производителя)

    Носитель «программы»: пластинка с канавками

    Рельеф канавок определяет колебания иголки,

    колебания иголки определяют колебания мембраны динамика
    (раструб — рупор усиливает звук)

    «Программа» не цифровая (о вычислениях речи не идет) и даже
    не дискретная (как в шарманке); можно назвать её
    непрерывной или аналоговой, пожалуй

    Ручка заводит пружину, кстати

    View Slide

  65. Ткацкие станки

    View Slide


  66. Первые конструкции — древние времена

    (Египет — 2000 до н.э., Древняя Греция, Древний
    Рим)

    Свидетельства о продвинутых конструкциях — 6-й
    век н.э.

    Станок, во-первых, должен сплести из ниток ткань

    Во-вторых, хорошо, если цветные нитки получится
    сплести так, что на ткани появится узор

    View Slide


  67. Чем сложнее узор, тем сложнее станок

    В частности, сложность узора определяется
    тем, каким количеством отдельных нитей
    станок может управлять

    Механика с ручным управлением

    Элементы конструкции: рычаги, педали, гири
    на отдельных нитках

    Формирование узора: вручную

    View Slide

  68. View Slide

  69. View Slide

  70. View Slide

  71. View Slide

  72. Базиль Бушон (Basile Bouchon)

    ru.wikipedia.org/wiki/Бушон%2C_Базиль

    Франция, Лион

    Ткач или торговец

    Даты жизни неизвестны

    Упоминается в 1725-м году как изобретатель
    ткацкого станка

    View Slide

  73. Жан-Батист Фалькон

    ru.wikipedia.org/wiki/Фалькон,_Жан-Батист

    Франция, Лион

    Ткач по шелку (master silk weaver)

    Упоминается в 1727 (1737?) году как
    ассистент Базиля Бушона

    Внес ряд улучшений в конструкцию Бушона

    View Slide


  74. 1725: Базиль Бушон (Basile Bouchon), приставка к
    ткацкому станку, значительно облегчавшая
    процесс формирования узора

    Жан-Батист Фалькон (Falcon, ткач по шелку),
    подключился к работе в 1737 (в 1727?)

    Доработали конструкцию вместе

    Вариант Бушона: перфолента (бумага с
    отверстиями)

    Вариант Фалькона: перфокарты (картонки с
    отверстиями)

    View Slide


  75. в 1755-м году проекту порезали
    государственное финансирование

    Но нашли (по линии Фалькона) немного
    частных денег

    В 1762-м году завершили, опять получили
    поддержку правительства

    Оборудовали около 40 станков в течение
    нескольких лет

    View Slide

  76. View Slide

  77. View Slide


  78. Главное экономическое преимущество лежит в
    упрощении процесса смены шаблона рисунка на
    ткацком станке

    Механизм выбора узора управлялся
    последовательностью карт

    Один и тот же станок можно было перенастроить
    на производство ткани с новым узором простой
    вставкой нового набора перфорированных карт
    (перфокарт)
    (перевод с англ.)

    View Slide

  79. Жак де Вокансон (1709 — 1782)

    ru.wikipedia.org/wiki/Вокансон,_Жак_де

    Франция, Гренобль — Париж

    Механик и изобретатель

    Конструировал механические игрушки —
    аниматроников (механическая утка)

    (этим, в основном, прославился)

    View Slide


  80. При том, что устройство Бушона и Фалькона
    было, в целом, работоспособное, у него был ряд
    конструкционных недостатков, которые мешали
    его внедрить совсем массово

    В 1747-м году Жак де Вакансон предложил ряд
    значимых улучшений в рамках своей работы
    над механизмами шелковой промышленности

    Однако и его предложения остались в статусе
    проектов и прототипов, законченное улучшенное
    устройство не было построено

    View Slide

  81. Жаккардовый ткацкий станок,
    жаккардова ткань

    View Slide

  82. Жозе́ф Мари́ Жакка́р,
    1752 — 1834

    ru.wikipedia.org/wiki/Жаккар,_Жозеф_
    Мари

    Франция, Лион

    Торговец, ткач, изобретатель

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

    View Slide

  83. Ткацкий станок Жаккара

    Начал работать в 1800-м

    Получил поддержку от республиканского правительства

    Первая рабочая модель — 1804-й год

    Основана на конструкциях Вакансона и Фалькона (значит и
    Бушона?)

    Даёт возможность раздельно управлять каждой нитью
    основы или небольшой их группой, создавая тем самым
    узоры на ткани

    Для формирования узора использует сменные перфокарты

    View Slide

  84. View Slide

  85. View Slide

  86. View Slide

  87. View Slide

  88. View Slide

  89. View Slide

  90. View Slide

  91. View Slide

  92. View Slide

  93. View Slide

  94. View Slide

  95. View Slide

  96. View Slide

  97. View Slide

  98. View Slide

  99. View Slide

  100. Принцип работы

    Отверстие в перфокарте пропускает иголку-спицу, если
    отверстия нет — иголка упирается в картон

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

    Между поднятыми и неподнятыми нитями пропускается
    перпендикулярная нитка, как при обычной операции
    плетения на ткацком станке

    Конфигурация поднятых-неподнятых нитей на каждом шаге
    определяет узор

    View Slide

  101. Итак

    View Slide


  102. Ткацкие станки — не простое развлечение (как в случае с
    шарманкой)

    Текстильная промышленность — важная часть экономики

    Один из двигателей промышленной революции

    Автоматизация, массовое производство, рынки сырья,
    рынки сбыта, мировая торговля

    Повышение производительности труда здесь даёт эффект
    в масштабах мировой экономики

    (к примеру, может обеспечивать экономический фундамент
    для сохранения или уничтожения института рабовладения)

    View Slide


  103. Перфокарта — это носитель информации

    Подключается к исполнительному механизму
    (ткацкому станку) в качестве составной детали

    Определяет то, как будет работать станок (какой
    узор сплетёт)

    Программа здесь — последовательность действий
    для получения желаемого узора (идея),
    закодированная (сформулированная на
    специальном языке) в отверстиях перфокарты
    (записанная на материальный носитель)

    View Slide


  104. Станки с перфокартным управлением —
    программируемые станки, станки с программным
    управлением

    Но это НЕ числовое управление, т. к. речь идет об
    управлении, но не о вычислениях

    Программа из отверстий на карте дискретна — это
    делает её похожей на двоичный код современных
    вычислителей, но речи о двоичной логике (булевой
    алгебре), здесь всё еще не идёт

    (от логики есть «да»/«нет», операций «и»/«или» нет)

    View Slide


  105. Ткацкие станки Бушона/Жаккара иногда называют первыми
    программируемыми компьютерами (вычислительными
    устройствами)

    Скорее всего потому, что в нашем мире сейчас
    программируемая техника ассоциируется с
    программируемыми вычислениями

    Но, конечно, это не так

    Станки не производили математических операций, поэтому
    это не вычислительные устройства

    Но они управлялись программой, поэтому это был
    программируемый механизм

    View Slide


  106. Первые устройства с программным управлением: аниматроники,
    шарманки — развлечения

    Далее ткацкий станок с программным управлением (станок с ПУ), но
    без вычислений — это сразу промышленность и массовое
    производство

    Механические вычисления уже были, но до программируемых
    вычислителей еще достаточно долго

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

    (механические куклы — аниматроники на числовом программном
    управлении тоже появились, см. Бостон Динамикс, которые сначала
    сделали ходячих кукол, но еще толком не придумали, куда применить)

    View Slide

  107. У нас есть

    Технология вычислений на механике (арифмометры)

    Технология программирования: неизменяемый
    исполнительный механизм (сложно изменять,
    производится один раз) + носитель программы (легко
    изменять, создаётся множество вариаций),
    соединяются вместе, работают как единое
    устройство

    Осталось всего-навсего это всё соединить и получить
    программируемое вычислительное устройство...

    View Slide

  108. Далее:
    разностная и аналитическая
    машины Чарльза Бэббиджа
    ...

    View Slide