Разумный глаз (Грегори) - страница 104

Прежде чем приступить к поискам ответа, постараемся поточнее представить себе различие между двумя названными типами ЭВМ. Любопытно, что инженеры- электронщики, по-видимому, уделяют гораздо меньше внимания уточнению этих различий, чем, скажем, философы, занятые разграничением индукции и дедукции. Различие между машинами обычно определяется на языке конструкторов; однако мне кажется, что за терминами этого языка скрывается нечто, гораздо более принципиальное и важное для нас, и потому стоит как можно точнее выяснить суть этих терминов.

Иногда говорят: "Аналоговые машины работают в непрерывном режиме, а цифровые - дискретно" (отдельными шагами). Это - различие инженерного типа. Совершенно ясно, что такое различие нельзя принять в качестве определяющего. Возьмем, к примеру, логарифмическую линейку, представляющую собой подобие аналоговой машины. Движок линейки скользит вдоль набора параллельных шкал; ответ прочитывается на связке двух шкал, заданной определенным положением риски движка. Перемещения движка плавные; его риску можно поместить против любого места одной шкалы и прочесть ответ на другой. Но предположим, что мы делаем ряд пружинных "защелок" и выделяем таким образом некоторые "привилегированные" величины для каких-то специальных целей. Что же мы получили теперь? Цифровую машину? Это звучит в высшей степени нелепо. Обратим внимание на длину шагов на шкалах линейки (или любой другой вычислительной машины). Никакой механизм не работает совершенно гладко, тем не менее ясно, что малые нарушения ритма работы вряд ли превратят "аналоговую" систему в "цифровую". Дело состоит, конечно же, в том, что шаги цифровых машин соответствуют чему-то вполне определенному. Они соответствуют логическим операциям.

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

Аналоговые устройства работают очень быстро, поскольку ответ достигается прямым путем. Точность их невелика, но и грубые ошибки они совершают очень редко. Цифровые же машины могут работать с любой наперед заданной точностью, но результата они достигают медленно, если сравнить эту скорость со скоростью выполнения промежуточных операций, и, кроме того, результат может содержать значительную ошибку. Что важнее всего - цифровые машины нуждаются в аналитических схемах (своего рода "калькулюсах") и в наборах формальных правил работы, то есть в алгоритмах. Но цифровую машину можно ведь запрограммировать и на аналоговый режим работы. Поэтому разница между обоими типами машин состоит главным образом не в конструктивных, а в логических категориях. Практически существуют некоторые конструктивные особенности, отличающие машины, предназначенные для работы в цифровом либо в аналоговом режимах, но эти различия, по существу, отражают только некоторые преимущества инженерных решений для машин разного назначения.