История языков программирования
Языки программирования принято делить на пять поколений. В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет. Это был первый язык ассемблера, созданный по принципу «одна инструкция — одна строка».
Лейбниц, Готфрид Вильгельм
Лейбниц также описал двоичную систему счисления с цифрами 0 и 1. Современная двоичная система была полностью описана им в работе "Explication de l’Arithmétique Binaire". Как человек, увлекающийся китайской культурой, Лейбниц знал о Книге Перемен и заметил, что гексаграммы соответствуют двоичным числам от 0 до 111111; он восхищался тем, что это отображение является свидетельством крупных китайских достижений в философской математике того времени. Лейбниц, возможно, был первым программистом и информационным теоретиком. Он обнаружил, что если записывать определённые группы двоичных чисел одно под другим, то нули и единицы в вертикальных столбцах будут регулярно повторяться, и это открытие навело его на мысль, что существуют совершенно новые законы математики. Лейбниц понял, что двоичный код оптимален для системы механики, которая может работать на основе перемежающихся активных и пассивных простых циклов. Он пытался применить двоичный код в механике и даже сделал чертёж вычислительной машины, работавшей на основе его новой математики, но вскоре понял, что технологические возможности его времени не позволяют создать такую машину. Проект вычислительной машины, работающей в двоичной системе, в которой использовался прообраз перфокарты, Лейбниц изложил в труде, написанном ещё в 1679 году (до того, как он подробно описал двоичную арифметику в трактате 1703 года "Explication de l’Arithmétique Binaire"). Единицы и нули в воображаемой машине были представлены соответственно открытыми или закрытыми отверстиями в перемещающейся банке, через которую предполагалось пропускать шарики, падающие в желоба под ней. Лейбниц писал также о возможности машинного моделирования функций человеческого мозга.