Выбрать главу

Он пишет, что первое преимущество аналитической машины состоит в использовании перфокарт, вторая «наиболее замечательная черта конструкции машины связана с принципом зацепления» [85, с. 334]. Сам Ч. Бэбидж считал механизм зацепления «наиболее выдающейся частью машины» [85, с. 53]. Это устройство дало возможность обходиться в различных случаях механически простой комбинацией рычагов, которая обеспечивала соединение и разъединение привода с любой желаемой колонкой в процессе выполнения команд программы.

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

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

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

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

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

При сложении чисел в автоматической машине они передаются вначале из памяти в арифметическое устройство. Уменьшение числа до нуля на одной колонке заставляет поворачиваться другую на такую же величину: таким образом происходит сложение чисел на обеих колонках. Если предположить, что на каждом колесе укреплен диск с цифрами от 0 до 9 и перед колонкой имеется экран с окном для каждого диска, то во время процесса сложения цифры по одному будут проходить перед окном до тех пор, пока не получится сумма; таким образом, если 5 складывается с 7, то последовательность цифр в окне будет соответствовать 8, 9, 0, 1 и затем 2. В момент, когда 9 переходит в 0, будет сдвинут рычаг, означающий необходимость записи переноса к старшему разряду; сам перенос производится впоследствии.

В арифметическом устройстве для ускорения вычисления Бэбиджем был предложен и введен в машину механизм, названный им механизмом предварительного переноса. Бэбидж считал его одной из наиболее важных частей аналитической машины и нарисовал около 30 различных вариантов его конструкций. В настоящее время ясно, что эта составная часть машины отнюдь не одна из главных. Но устройство имеет действительно большое значение, так как в случае последовательного переноса, если он, например, имеет место во всех 50 разрядах числа, время, затрачиваемое на эту операцию, может намного превышать время основного цикла — сложения. С помощью же механизма предварительного (фактически — параллельного) переноса время цикла сложения разбивается следующим образом: 90% на чистое сложение и 10% — на перенос.

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