Слово «компьютер» впервые было использовано в 1613 году для описания человека, который выполнял вычисления или вычисления. Определение оставалось неизменным до конца 19-го века, когда технологическая индустрия породила машины, основной задачей которых был расчет.
Нет простого ответа на вопрос «когда был изобретен первый компьютер?» Из-за множества различных классификаций компьютеров. Первая механическая вычислительная машина была изобретена Чарльзом Бэббиджем в 1822 году. Однако на самом деле она не очень похожа на то, что большинство людей считают компьютером в настоящее время.
Есть много вещей, которые мы не знаем о быстром прогрессе компьютерных разработок, плюс вклад многих ученых, которые не были упомянуты в наших учебниках.
Чтобы заполнить вас всеми необходимыми компьютерными знаниями, мы собрали несколько заметных изобретений в области компьютерных наук, от первой машины до эпохи микрочипов.
25. Первый компьютер: «Разностный двигатель» — 1821
Чарльз Бэббидж (также известный как «Отец компьютера») начал работать над механизмом различий, который основан на принципе конечных различий. Он использует только арифметическое сложение и устраняет необходимость в умножении и делении, которые сложнее реализовать механически. Он был строго разработан для расчета и табулирования полиномиальной функции.
Проект был заказан британским правительством, но из-за высокой себестоимости финансирование было остановлено в середине, и машина так и не была завершена.
24. Первый компьютер общего назначения: аналитический двигатель — 1834
Чарльз Бэббидж задумал более амбициозную машину, первый универсальный программируемый вычислительный движок, позже названый Analytical Engine. У этого есть много существенных особенностей, найденных в современном цифровом компьютере.
Машина программировалась с использованием перфокарт, в двигателе был «Магазин», в котором можно было хранить числа и промежуточные результаты, и отдельная «Мельница», где выполнялись арифметические операции.
Движок также был способен выполнять прямое умножение и деление, параллельную обработку, микропрограммирование, итерацию, фиксацию, условное ветвление, плюс-формирование, хотя Бэббидж никогда не использовал эти термины. К сожалению, как и Difference Engine, эта машина также не была доработана.
23. Первая компьютерная программа — 1841
Первая в мире компьютерная программистка Ада Лавлейс начала переводить записи Луиджи Менабреа (итальянский математик) на аналитическом движке Бэббиджа в 1841 году. Она поняла, как заставить это делать то, что делают компьютеры, и предложила ввести данные, которые позволят программировать машину для вычисления чисел Бернулли.
Ада была дальновидной математикой — она знала, что числа можно использовать для представления не только величин. Она предсказала, что такие машины, как Analytical Engine, могут быть использованы для создания графики, сочинения музыки и полезны для науки.
22. Табуляционная машина — 1884
Герман Холлерит работал над своей идеей машинного удара и подсчета карт в конце 19 века. Он придумал машину, которая может записывать статистику, электрически считывая и сортируя перфокарты.
Холлерит создал компанию Табулирования в 1896 году в Нью-Йорке, которая позже переросла в IBM. Машина имела успех в США, но привлекла еще больше внимания в Европе, где она широко применялась для различных статистических целей.
21. Первый аналоговый компьютер: дифференциальный анализатор — 1930
Первый современный аналоговый компьютер был разработан инженером MIT Ванневаром Бушем. Фактически, это был аналоговый калькулятор, который мог решать какой-то конкретный набор дифференциальных уравнений, которые чаще всего используются в физических и технических приложениях. Машина производила приблизительные, хотя и практичные решения.
В этой машине движение вала представляло переменные, а умножение и сложение выполнялись путем подачи значений в шестерни. Интегрирующую часть выполняло вращающееся на разных радиусах на круглом столе колесо с острием ножа. И для решения дифференциальных уравнений различные механические интеграторы были связаны между собой.
20. Первый работающий программируемый компьютер: Z3 — 1941
Конрад Цузе (изобретатель и компьютерный пионер) разработал первый серьезный компьютер Z в 1936 году. Z1 был полностью механическим и работал всего несколько минут за один раз. Работает на булевых операциях и шлепанцах на основе вакуумных трубок. Использование различных технологий в ближайшие десятилетия привело к Z2 и в конечном итоге к Z3.
Z3 был построен с 2000 реле с 22-битной длиной. Постоянные данные и программный код хранились на перфорированной пленке, поэтому для смены программ не требовалось перепрограммирования.
Z3 был секретным проектом правительства Германии, который был использован Немецким институтом авиационных исследований для статистического анализа трепетания крыльев. Оригинальная машина была уничтожена в 1943 году во время бомбардировки союзников Берлина.
19. Первый электронный компьютер: ABC — 1942
Компьютер Atanasoff-Berry (ABC) был разработан и построен Джоном Винсентом Атанасоффом и его помощником Клиффордом Э. Берри. Это была первая машина, которая использовала конденсаторы для хранения (как в текущей оперативной памяти) и была способна выполнять 30 одновременных операций.
Азбука была разработана для решения систем линейных уравнений и была способна решать системы с 29 неизвестными. Компьютер не был программируемым, однако он был пионером в некоторых важных элементах современных вычислений, включая двоичные арифметические и электронные переключающие элементы.
18. Первый программируемый компьютер: Колосс — 1943
Colossus был первым в мире электронным программируемым компьютером, созданным Томми Флауэрсом. Британцы использовали его для чтения секретных немецких сообщений (зашифрованных шифром Лоренца) во время Второй мировой войны.
Колосс не должен был расшифровывать все сообщения. Он только что нашел близкие настройки для машин Лоренца. Идея состояла в том, что частоты букв и цифр в немецком сообщении дадут начало переводу самого сообщения.
До 1970-х годов эти компьютеры были очень секретными. После войны весь Колосс был разбит на куски, а конструкции разрушены. Никто не знал первых людей, которые сделали Колосса. В 2007 году инженеры сделали рабочий прототип Colossus.
17. Первая компьютерная сеть — 1940
Между 1940 и 1946 годами Джордж Стибиц и его команда разработали серию машин с телефонными технологиями — с использованием электромеханических реле. Эти машины обслуживали более одного пользователя. Вскоре они устарели, потому что основывались на медленных механических реле, а не на электронных выключателях.
Сегодня доминирующей основой передачи данных является пакетная коммутация: ARPANET (Сеть Агентства перспективных исследовательских проектов) была сетью ранней коммутации пакетов и первой сетью, которая внедрила набор протоколов TCP / IP (в 1982 году). Оба стали технической основой Интернета.
16. Первый трекбол — 1941/1952
Связанное остроконечное устройство под названием трекбол было изобретено в 1941 году Ральфом Бенджамином для системы построения радиолокационных карт управления пожарами под названием «Комплексная система отображения» (CDS). Предыдущий проект Бенджамина использовал аналоговые компьютеры для измерения будущего местоположения самолета-мишени на основе различных точек ввода, введенных пользователем с помощью джойстика.
Он понял, что нужно более эффективное устройство ввода, поэтому он изобрел для этой цели то, что они называли роликовым мячом. Это новое устройство имело шар для управления координатами XY курсора на экране. Он был запатентован в 1947 году и хранился как военная тайна.
Другой ранний трекбол, DATAR, был построен в 1952 году британским инженером-электриком Кенионом Тейлором вместе со своими коллегами Фредом Лонгстаффом и Томом Крэнстоном. По концепции он был похож на устройство Бенджамина.
Трекбол использовал 4 диска, чтобы уловить движение, по 2 для координат X и Y. Цифровой компьютер рассчитал треки и передал полученные данные другим кораблям в целевой группе, используя радиосигналы с импульсной кодовой модуляцией. Дизайн не был запатентован, так как это был секретный военный проект.
15. Первый программируемый электронный компьютер общего назначения: ENIAC — 1946
Электронный числовой интегратор и компьютер (ENIAC) представлял собой полную по Тьюрингу цифровую машину, способную решать широкий спектр численных задач посредством перепрограммирования. Он в основном использовался для расчета таблиц артиллерийского обстрела и помогал с расчетами по возможности термоядерного оружия.
К концу своей работы (1955 г.) ENIAC содержал 7200 кристаллических диодов, 17468 вакуумных ламп, 10000 конденсаторов, 70000 резисторов и более 5 миллионов паяных соединений. Он был размером примерно 8x3x100 футов, весил 30 тонн и потреблял 150 кВт электроэнергии.
Он использовал кард-ридеры для ввода и перфокарты для вывода. Компьютер имел скорость примерно в тысячу раз быстрее, чем у электромеханических машин.
14. Первый полный язык высокого уровня: Plankalkül — 1948
Немецкий ученый-компьютерщик Конрад Цузе, создатель первого релейного компьютера, начал работать над языком программирования высокого уровня в 1941 году. Он разработал идеи о том, как его машины (компьютер Z4) могут быть запрограммированы мощным способом.
Plankalkül — это типизированный высокоуровневый императивный язык программирования с широким спектром функций, таких как нерекурсивные функции, локальные переменные, операция присваивания, условный оператор, конструкция WHILE для итерации, логическая операция, фундаментальные типы данных и многое другое. Планкалкюль был в конечном итоге всесторонне опубликован в статье 1972 года, а первый компилятор для него был построен еще в 1998 году.
13. Первый запрограммированный компьютер Электронный цифровой: SSEM-1948
SSEM (небольшая экспериментальная машина Манчестера) по кличке Бейби выполнила свою первую программу 21 июня 1948 года. Программа была написана Томом Килберном, который на самом деле создал этот компьютер, и разработал его наставник Фредерик Уильямс. Это была первая рабочая машина, которая содержала все модули, необходимые для современного компьютера.
SSEM содержал 32-битную длину слова, код порядка в формате одного адреса, память в 32 слова и скорость вычисления около 1,2 миллисекунды на инструкцию. Бит был сохранен в виде заряда на люминофоре ЭЛТ, который мог управляться электронным лучом для записи 1 или 0. Все арифметические операции были реализованы в программном обеспечении, кроме вычитания и отрицания.
12. Первый Ассемблер: Первоначальные Заказы — 1949
Ассемблер интерпретирует программы, написанные на ассемблере, в машинный код и инструкции, которые могут быть выполнены компьютером. Первый ассемблер был разработан для EDSAC (электронный калькулятор с задержкой хранения).
Первоначальные заказы (написанные Дэвидом Уилером) содержали 31 инструкцию, жестко запрограммированную для одноплатных устройств — механическую память только для чтения. Вторая версия первоначальных заказов занимала все 41 слово постоянной памяти и включала средства для перемещения (или координации) для облегчения использования подпрограмм.
11. Первый персональный компьютер: Саймон — 1950
Simon Эдмунда Беркли был релейным компьютером, разработанным для образовательной цели демонстрации концепции цифрового компьютера. Пользователи вводили данные с помощью перфорированной бумаги или 5 клавиш на передней панели, и программа запускалась со стандартной бумажной ленты. АЛУ и регистры хранят только 2 бита, и поэтому его нельзя использовать для каких-либо значительных практических вычислений.
Наряду с вводом данных, перфолента служит для хранения памяти. Все инструкции были выполнены последовательно, так как машина считывала их с ленты. Он может выполнять 4 операции: сложение, большее, отрицание и выбор. Выход был обеспечен пятью лампами.
10. Первый компьютер с графическим дисплеем в режиме реального времени: AN / FSQ-7 — 1951
AN / FSQ-7, разработанный IBM, был безусловно самым большим из когда-либо созданных компьютеров. Он состоял из 2 компьютеров Whirlwind II, установленных в 4-х этажном здании.
Это была система управления и командования, используемая в сети ПВО. Он рассчитал одну или несколько прогнозируемых точек перехвата для назначения самолетов или ракет CIM-10 Bomarc для перехвата злоумышленника с использованием алгоритма ATABE (автоматическая оценка цели и батареи).
Он имел более 60 000 вакуумных трубок, использовал 3000 киловатт электроэнергии, выполняя 74 000 инструкций в секунду для сетевых региональных радаров. Каждая машина поддерживала более 100 пользователей. IBM использовала один блок в рабочем состоянии, а другой в режиме горячего резервирования, что приводило к увеличению времени безотказной работы (около 99%).
9. Первый компилятор для электронного компьютера: система A-0 — 1951
Компилятор — это специальная программа, которая преобразует язык высокого уровня в машинный код. Грейс Хоппер написала версию арифметического языка 0 (или систему A-0) для UNIVAC I, целью которой является преобразование последовательности подпрограмм и аргументов в машинный код.
Подпрограммы были идентифицированы с помощью числового кода, а аргументы были интегрированы непосредственно после каждого кода подпрограммы. A-0 превратил эти спецификации в машинный язык, который можно было ввести во второй раз для выполнения указанной программы.
8. Первое программное обеспечение с открытым исходным кодом: система A-2 — 1953
Система A-0 позже превратилась в A-2, выпущенную как ARITH-MATIC. Он был разработан в отделении UNIVAC Remington Rand и выпущен клиентам к концу 1953 года. Пользователям был предоставлен исходный код для A-2 и предложено отправить свои усовершенствования обратно в UNIVAC.
7. Первый автокод: автокод Гленни — 1952
В 1960-х годах термин «автокод» использовался более широко для обозначения любого языка программирования высокого уровня, использующего компилятор. Алик Гленни разработал первый автокод для компьютера Mark 1 в университете Манчестера. Он считается первым скомпилированным языком программирования.
Основная цель Гленни состояла в том, чтобы сделать понятный код машины Марка 1 понятным. Хотя полученный язык был намного более организованным и более четким, чем машинный код, он все еще сильно зависел от машины.
Второй автокод для Mark 1 был разработан RA Brooker в 1955 году. В отличие от первого, он был почти независим от машины и имел арифметику с плавающей точкой. Однако он допускал только одну операцию на строку и не мог определять пользовательские подпрограммы.
6. Первый популярный язык высокого уровня: ФОРТРАН — 1957
FORTRAN (FORmula TRANslator) был создан командой во главе с Джоном Бакусом из IBM. С самого начала он стал доминировать в области программирования и более полувека использовался в таких областях науки и техники, как вычислительная гидродинамика, анализ методом конечных элементов, вычислительная химия и вычислительная физика.
Задача при разработке Fortran состояла в том, чтобы создать язык, который был бы легок в изучении, машинно-независимым, подходящим для различных приложений и позволял бы формулировать сложные математические выражения так же, как обычные алгебраические обозначения.
Поскольку программировать было проще, программисты могли писать код в 5 раз быстрее, чем раньше, однако эффективность выполнения снизилась на 20 процентов.
5. Первая компьютерная мышь — 1964
Сегодня мы знаем, что компьютерная мышь была изобретена Дугласом Энгельбартом при содействии Билла Инглиша и запатентована 17 ноября 1970 года. Это был всего лишь крошечный кусочек гораздо более крупного проекта, направленного на увеличение человеческого интеллекта.
Энгельбарт требовал умения взаимодействовать с информационным дисплеем, используя какой-то аппарат для перемещения курсора на экране. Тогда уже использовались разные устройства, включая лампочку и джойстики. Однако он искал наиболее эффективное устройство.
Первый прототип мыши был сделан для использования с графическим интерфейсом Windows. Он назывался «Индикатор положения XY для системы отображения» и впервые использовался с компьютерной системой Xerox Alto в 1973 году.
Довольно странно, что изобретатель одного из самых популярных устройств с компьютерным интерфейсом не получил гонорар за изобретение мыши. Он получил патент как правопреемник SRI, и SRI лицензировала его Apple примерно за 40 000 долларов, что было нелепо. Дуглас ничего не получил!
4. Первый сенсорный экран — 1965
Э. А. Джонсон описал свою работу над емкостным сенсорным экраном (без чувствительности к давлению) в статье «Сенсорный дисплей — новое устройство ввода / вывода для компьютеров». В этой статье была схема, описывающая концепцию сенсорного экрана, которая используется до сих пор.
Пару лет спустя Джонсон подробно изложил эти концепции с помощью фотографий и диаграмм в «Сенсорных дисплеях: запрограммированный человеко-машинный интерфейс», который был опубликован в журнале Ergonomics в 1967 году.
Идея была принята для использования авиадиспетчерами в Великобритании до 1990-х годов. Кроме того, первый резистивный сенсорный экран был разработан Джорджем Сэмюэлем Херстом (американский новатор), который получил патент США № 3911215 в 1975 году.
3. Первый коммерческий персональный компьютер: программа 101 — 1965
Программа 101 может выполнять четыре основные арифметические функции (сложение, вычитание, деление умножения), вычислять абсолютное значение, квадратный корень и дробную часть. Он состоял из регистров памяти и имел 16 инструкций условного перехода, алфавитно-цифровой язык программирования и внутреннюю память.
Магнитные карты и процедуры могут быть использованы без знания программирования. Машина печатает программы и результаты на рулоне бумажной ленты, аналогично бумаге для кассового аппарата и калькулятору.
Раньше компьютеры были дорогими и могли использоваться только экспертами. Тем не менее P101 был экономичным и простым. Он был оценен в 32 000 долларов, и ему удалось продать более 44 000 единиц.
2. Первый объектно-ориентированный язык программирования: Simula — 1967
Simula разработана Ole-Johan Dahl и Kristen Nygaard в Норвежском вычислительном центре. Он сохраняет дух языка программирования ALGOL 60. Simula — это название двух языков симуляции — Simula I и Simula 67.
Simula 67 представила объекты, классы, подклассы, наследование, виртуальные процедуры, сопрограммы и функцию сбора мусора. Он использовался в широком спектре приложений, включая моделирование процессов, алгоритмы, проектирование СБИС и компьютерную графику. Концепция Simula 67 переопределена в C ++, C #, Pascal, Java и других.
1. Первый микропроцессор: Intel 4004 — 1971
Проектирование чипа было начато в апреле 1970 года, и оно было завершено под руководством Федерико Фаггина в январе 1971 года. Меньший по размеру человеческий эскиз, 4-разрядный регистр с тактовой частотой 740 кГц, имел 2300 транзисторов с 10-микронным интервалом способен выполнять 60 000 операций в секунду и стоит 200 долл. при такой же вычислительной мощности, что и компьютер ENIAC. Busicom Calculator 141-PF был первым коммерческим продуктом, использующим микропроцессор.
Intel 4004 использует отдельное хранилище программ и данных (в отличие от архитектуры Гарварда), одну мультиплексную 4-битную шину для передачи 12-битного адреса, 8-битной инструкции и 4-битного слова данных. Он способен напрямую адресовать 5120 бит ОЗУ, 32768 бит ПЗУ и поддерживает 3-уровневый глубокий внутренний стек подпрограмм.