-
В 1642 г. Блез Паскаль изобрел устройство, механически выполняющее сложение чисел.
Машина Паскаля представляла собой механическое устройство в виде ящичка с многочисленными связанными одна с другой шестерёнками. Складываемые числа вводились в машину при помощи соответствующего поворота наборных колёсиков. Машина Паскаля позволяла выполнять не только сложение, но и другие операции, но требовала при этом применения довольно неудобной процедуры повторных сложений. -
В 1673 г. Готфрид Вильгельм Лейбниц сконструировал арифмометр.
Арифмометр Лейбница позволял механически выполнять четыре арифметических действия. Сложение чисел выполнялось в десятичной системе счисления при помощи связанных друг с другом колёс. Добавленная в конструкцию движущаяся часть и специальная рукоятка, позволявшая крутить ступенчатое колесо, позволяли ускорить повторяющиеся операции сложения, при помощи которых выполнялось деление и перемножение чисел. Необходимое число повторных сложений выполнялось автоматически. -
В 1833г. Чарльз Бэббидж разработал проект универсальной цифровой вычислительной машины - прообраза ЭВМ.
Главное ее отличие универсальной цифровой вычислительной машины от разностной машины заключалось в том, что она была программируемой и могла выполнять любые заданные ей вычисления. Аналитическая машина стала прообразом современных компьютеров, так как включала их основные элементы: память, ячейки которой содержали бы числа, и арифметическое устройство, состоящее из рычагов и шестеренок. Бэббидж предусмотрел возможность вводить в машину инструкции при помощи перфокарт. -
В 1843г. Ада Лавлейс разработала первую программу для машины Бэббиджа.
Ада Лавлейс убедила Чарльза Бэббиджа в необходимости использования в универсальной цифровой вычислительной машине двоичной системы счисления вместо десятичной, разработала принципы программирования, предусматривающие повторение одной и той же последовательности команд при определенных условиях. Именно она предложила термины «рабочая ячейка» и «цикл». -
В 1854 г. английский математик Джордж Буль опубликовал книгу «Законы мышления», в которой развил алгебру высказываний --Булеву алгебру.
На основе булевой алгебры в начале 80-х гг. XIX в. построена теория релейно-контактных схем и конструирования сложных дискретных автоматов. В ХХ веке учёные воспользовались разработками английского математика для создания цифрового электронного компьютера. Сейчас Булева алгебра используется при программировании. -
В 1936 г. английский математик А. Тьюринг ввел понятие машины Тьюринга, как формального уточнения интуитивного понятия алгоритма.
Ученый показал, что любой алгоритм в некотором смысле может быть реализован на машине Тьюринга, а следовательно, доказывал возможность построения универсальной ЭВМ. -
В 1946 г. Г. Голдстайном и А. Берксом и Д. фон Нейман изложили свои принципы построения вычислительных машин.
В статье обосновывается использование двоичной системы для представления чисел. Авторы убедительно продемонстрировали преимущества двоичной системы для технической реализации, удобство и простоту выполнения в ней арифметических и логических операций. Также революционной идеей является предложенный Нейманом принцип “хранимой программы”, суть которой состояла в том, что программа может также храниться в виде набора нулей и единиц в той же самой памяти, что и обрабатываемые ею числа. -
В декабре 1948г. в СССР И.С. Брук и Б.И. Рамеев стали первыми авторами ЭВМ.
И.С. Брук и Б.И. Рамеев первыми в стране подошли к реализации принципа хранимой в памяти программы, подготовили более 50 заявок на изобретение различных узлов АЦВМ, многие из которых зарегистрированы авторскими свидетельствами. -
В 1951 г. Хоппер создала первый в мире компилятор и ввела сам этот термин.
Компилятор Хоппер осуществлял функцию объединения команд и в ходе трансляции производил организацию подпрограмм, выделение памяти компьютера, преобразование команд высокого уровня (в то время псевдокодов) в машинные команды. «Подпрограммы находятся в библиотеке (компьютера), а когда вы подбираете материал из библиотеки – это называется компиляцией» – так она объясняла происхождение введенного ею термина. -
В 1953 г. А.А.Ляпуновым был предложен операторный метод программирования.
Данный метод заключался в автоматизации программирования, а алгоритм решения задачи представлялся в виде совокупности операторов, образующих логическую схему задачи. -
В 1954 году группа под руководством Г. Хоппер разработала систему, включающую язык программирования и компилятор, которая в дальнейшем получила название Math-Matic.
Данная система получила название АТ-3 и продавалась компанией Remington Rand вместе с компьютером UNIVAC-I.
После удачного завершения работ по созданию MATH-MATIC Г. Хоппер и ее группа принялись за разработку нового языка и компилятора, который позволил бы пользователям программировать на языке, близком к обычному английскому. -
В 1961-1962 гг. Дж. Маккарти в Массачусетском технологическом институте был создан язык функционального программирования Лисп.
Лисп открыл в программировании одно из альтернативных направлений, предложенных Дж. фон Нейманом. Существенным свойством Лиспа состоит в том, что данные, про граммы и даже сам язык представляют собой списки символов в скобках. Хотя подобная структура и сложна для чтения, она позволяет не только писать программы, которые в свою очередь могут писать или модифицировать другие программы, но и получать программы или подпрограммы, способные обращаться сами к себе. -
В 1964г. Т. Курц и Дж. Камени создали язык программирования Basic.
В середине 60-х годов Томас Курц и Джон Камени (сотрудники математического факультета Дартмунтского колледжа) создали специализированный язык программирования, который состоял из простых слов английского языка. Новый язык назвали «универсальным символическим кодом для начинающих» (Beginner All-Purpose Symbolic Instruction Code, или, сокращенно, BASIC). Годом рождения нового языка можно считать 1964. -
В 1968-1971 годах Никлаусом Виртом создан язык Паскаль.
Язык программирования Pascal был разработан в Цюрихском институте информатики (Швейцария). Первоначальная цель разработки языка PASCAL - необходимость инструмента "для обучения программированию как систематической дисциплине". Однако скоро обнаружилась чрезвычайная эффективность языка PASCAL в самых разнообразных приложениях, от решения небольших задач вычислительного характера до разработки сложных программных систем - компиляторов, баз данных, операционных систем и т.д. -
В 1969-1973 годах был разработан язык программирования Си.
Язык программирования Си был разработан в лабораториях Bell Labs Деннисом Ритчи и Кеном Томпсоном в период с 1969 по 1973 годы. Сначала была создана часть компилятора С, затем она была использована для компиляции остальной части компилятора С и, наконец, полученный в результате компилятор был применен для компиляции UNIX.