Как создавался компьютер? Теоретические предпосылки

Реклама
Грандмастер

Желание автоматизировать сложные рутинные вычисления явилось «госзаказом» на создание электронно-вычислительной машины. Но практическому воплощению мечты человека по созданию «искусственного разума» предшествовала кропотливая теоретическая подготовка.

Одним из важных «попутных» открытий было то, что ЭВМ — хотя и названа электронно-ВЫЧИСЛИТЕЛЬНОЙ машиной (кстати, слово компьютер происходит от англ. compute — считать, подсчитывать; вычислять) — может не только вычислять, но и всячески обрабатывать" всевозможную информацию. Поэтому возможности компьютера намного превосходят возможности арифмометров и «куркуляторов»: фактически возможности компьютера ограничены нашим воображением (а возможности нашего воображения безграничны!).

Реклама

Работа над теоретическим обоснованием компьютера шла двумя параллельными потоками: обоснование аппаратной части и обоснование программной части. Но поскольку компьютер работает с информацией, для начала нужно было разобраться, что это такое — информация?

Один из создателей математической теории информации — амер. инженер и математик Шеннон Клод Элвуд (Claude Shannon; 1916−2001) — в 1948 г. опубликовал работу «Математическая теория связи», в которой представил свою унифицированную теорию передачи и обработки информации. По Шеннону, информация включает все виды сообщений, в том числе те, которые передаются по нервным волокнам в живых организмах. Шеннон предложил измерять информацию в математическом смысле, сводя ее к выбору между двумя значениями, или двоичными разрядами, — «да» или «нет» (1 или 0, истина или ложь, есть сигнал или нет сигнала, замкнута цепь или разомкнута).

Реклама

С подачи Шеннона в компьютерах используется двоичная система счисления, которая основана на двух цифрах, «0» и «1». Информация любого типа может быть закодирована с использованием этих двух цифр и помещена в оперативную или постоянную память компьютера. Использование двоичной системы счисления (впервые принцип двоичного счисления был сформулирован в XVII в. немецким математиком Готфридом Лейбницем) позволяет сделать устройство компьютера максимально простым.

Параллельно с Шенноном американский математик и философ Норберт Винер (Norbert Wiener; 1894−1964) работает над созданием кибернетики и теории искусственного интеллекта.

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

Реклама

В 1948 г. выходит книга Винера «Кибернетика, или Управление и связь в животном и машине».

Одним из первых отечественных ученых, оценивших значение кибернетики, был рос. математик А. А. Ляпунов (1911−1973). Под его руководством начались первые в нашей стране работы по кибернетике. В конце 1950-х гг. Ляпунов сформулировал основные направления развития кибернетики, на основе которых в последующие десятилетия получили развитие общие и математические основы кибернетики, вычислительные машины, программирование и другие направления науки, разработал математическую теорию управляющих систем. Ляпунов создал первые учебные курсы программирования и разработал операторный метод программирования. Заложил основы машинного перевода и математической лингвистики, биологической кибернетики и математических методов в биологии.

Реклама

В работах Шеннона и Винера давались общие толкования термина «информация». Количественные характеристики информации — энтропия и количество информации — стали математическими понятиями в работах российского математика А. Я. Хинчина (1894−1959).

В середине 50-х гг. XX в. общее определение количества информации в вероятностном смысле было дано в работах российского математика Колмогорова А. Н. (1903−1987).

***
При создании первых вычислительных машин, в 1945 г., американский математик и физик Джон фон Нейман (John von Neumann; 1903−1957) сформулировал требования, которые должны выполняться, чтобы компьютер стал универсальным и удобным устройством для обработки информации. Эти требования назвали «принципами фон-Неймана».

Реклама

1. Принцип программного управления
Этот принцип обеспечивает автоматизацию процессов вычислений на ЭВМ. Программа состоит из набора команд, которые выполняются процессором автоматически в определенной последовательности.

2. Принцип однородности памяти
Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатами вычислений. Компьютеру «безразлично», что хранится в данной ячейке памяти — команда программы или данные пользователя. Над командами можно выполнять такие же действия, как и над данными. Это очень удобно, иначе надо было бы хранить программы отдельно от пользовательских данных.

Реклама

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

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

Реклама

внешние устройства для ввода-вывода информации.

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

Шеннон развил эту тему: в статье «Надежные схемы из ненадежных реле» он не только разработал более эффективную систему (достаточное число требуемых элементов для соблюдения надежности всей схемы), но и открыл перспективное направление исследований оценки сложности подобных схем.

Дальнейшее развитие эта тема получила в трудах по математической логике и математическим вопросам кибернетики российского математика О. Б. Лупанова (р. 1932).

Реклама