В 1940 году, Конрад Цузе разработал серию телефонно-ретрансляционных машин, в программировании которых использовался двоичный код. Использование двойного кода позволило упростить схему машины и повысить ее стабильность. Поэтому Z3 - первый работающий компьютер, управляемый программой. В большинстве случаев Z3 была похожа на современную машину, в первую очередь, представив ряд нововведений, таких как арифметика с плавающей запятой. Первые электронные компьютеры использовали вакуумные лампы и были огромными и сложными. Первой работающей архитектурной машиной фон Неймана была Манчестерская малая экспериментальная машина, построенная в 1948 году; За ним в 1949 году последовал компьютер Manchester Mark I, который представлял собой законченную систему с трубками и магнитным барабаном для памяти и индексными регистрами. Первым универсальным электронным компьютером был ENIAC. Он использовал тысячи вакуумных ламп, кристаллических диодов, реле, резисторов и конденсаторов. Первый универсальный программируемый компьютер континентальной Европы был Z4 Конрад Цузе, который был построен в Сентябре 1950 г. В ноябре 1950 года группа исследователей Киевского электротехнического института СССР Сергея Александровича Лебедева разработала устройство, которое называлось «малой электронной машиной». Машина способна была выполнять примерно 3 000 операций в минуту. Первая советская серийная ЭВМ была «Стрела», выпускавшаяся в 1953 году. Компьютер обладал быстродействием от 2000 до 3000 операций в минуту. Мэри Уилкс в 1955 году изобретает принцип микропрограммирования. Микропрограммирование дает возможность определять или расширять основной набор команд, используя встроенные программы. В 1956 году IBM впервые продала устройство для хранения информации на магнитных дисках — RAMAC. В нем используется 50 металлических дисков диаметром 24 дюйма со 100 дорожками на каждой стороне. Устройство хранило до 5 МБ данных и стоило 10 000 долларов за МБ.