История на изчислителната техника

Историята на изчислителната техника е тясно свързана с човешкото развитие от древността до днес и обхваща развитието на методите за изчисление и на техническите средства от първите най-прости устройства за пресмятане до съвременните най-модерни компютърни системи.

До 20 век повечето изчисления са правени на ръка. За по-сложни научни изчисления се използват предимно постиженията в областта на математиката. Първите механични инструменти за изчисления са различни сметачни машини, които еволюират до познатите днес калкулатори (на френски: calcul – изчисление). Съвременните електронноизчислителни машини, вече по-популярни с името компютър (на английски: computer) работят със съответен софтуер, и имат голямо бързодействие при изчисленията.

В началото машините за автоматично изчисление са механични и е необходим човек, който да въведе началните стойности и да настрои машината така, че да пресметне резултата. По-късно се преминава към аналогови изчислителни устройства, където информацията се представя в удобен вид (разстояние по скала, ротация на обект, напрежение и т.н.). Разработените конструкции позволяват директното задаване и отчитане на резултата с цифри, а машината е автоматична. С механичните решения значително се увеличава скоростта на обработка на данните и точността на резултатите. Серия от технически открития, особено прилагането на булева алгебра (Bulean algebra) към извършването на двоични операции, прави възможно въвеждането на електронни лампи и към 1960-те години те бързо заменят механичните уреди. Бързото развитие на компютрите е обусловено от по-нататъшните открития в областта на електрониката от средата на ХХ век– полупроводниковите дискретни елементи, интегралните схеми, както и новите схемни решения в областта на миниатюризацията на цели електронни блокове– микропроцесори, регистри, памети и др. Новите технологии и създадените градивни елементи създават предпоставки за бурното развитие не само на изчислителната техника, но и на средствата за телекомуникация, радио и телевизионни предавания и автоматизация на различни процеси.

В древността

При разменната търговия в древността е било необходимо да се определи обема или количеството на разменния продукт. Едно от първите открития е тегловният еквивалент, за което са използвани прости балансирани везни. Използването на помощни средства за изчисление се използва отдавна, например чрез пръстите на ръцете. Най-старото сметачно устройство най-вероятно е вариант на онагледяване с пръчки или клечки на някакво множество от предмети. По-нови начини за помощ при изчисление и пазене на информация са глинени сферички, конуси и др., пазени в глинени съдове, които представят броя на различни неща, най-вероятно добитък или някакви количества зърно. Пример за това са и пресмятанията с преброяване на пръчки, съхранявани като символи за количества. Един от най-ранните инструменти за пресмятане е сметалото, запазено и до днес. При него количеството на пресмятаните предмети и крайният резултат съответстват на преместени в определен ред сфери. Това, което днес се нарича Римско сметало, е използвано във Вавилония около 2400 г. пр. Хр. От тогава са измислени много други подобни дъски и таблици за смятане.

В древността и през средновековието за астрономически пресмятания се използват аналогови сметачни механизми. Такъв е откритият в Гърция антиките́рски механи́зъм (на гръцки Μηχανισμός των Αντικυθήρων), механично устройство и астролабия датиран към 205 г. пр. Хр. Приема се, че това е най-ранното механично сметачно устройство. Херон Александрийски (10– 70 г. сл. Хр.) е направил много на брой сложни механични устройства. Други механични устройства са измислени от Абу Райхан ал-Бируни (1000 г.) или универсалната астролабия, която не се влияе от надморската височина, измислена от Абу-Исхак Ибрахим ал-Заркали (1015 г.); астрономическите аналогови сметачни уреди на други ислямски астрономи и инженери; астрономическата кула-часовник на Су-Сонг (1090г.) по време на династията Сонг.

Шотландският математик и физик Джон Непер открива, че умножението и деленето на числа може да се сведе до събиране и изваждане на техните логаритми. Докато работел върху първите логаритмични таблици, на Непер му се налага да извърши много еднообразни и сложни умножения. Точно тогава той изобретил „пръчиците на Непер“, устройство, подобно на сметало, което много опростява операциите умножение и делене.

Малко след публикуването на работата на Непер, през 1620 г. е създадена логаритмичната линийка. Тя позволява операциите умножение и деление да бъдат извършвани много по-бързо. Едмунд Гюнтер измислил изчислително устройство с една единствена логаритмична скала в университета Оксфорд. Неговото изобретение улеснило до голяма степен различни аритметични операции, включително и умножение и деление. Уилям Отред допълнително усъвършенства линията на Гюнтер и така се стига до логаритмичната сметачна линийка, която използват поколения инженери чак до 20 век.

Сметачни машини

Уилям Шикард, немски енциклопедист, проектира през 1623 г. изчисляващ часовник, който използва механизмите на Неперовите пръчици и може да умножава и дели седемцифрени числа. Друг пионер в машинните пресмятания е младият Блез Паскал, който през 1642 г. създава калкулатор на Паскал (Паскалина), който извършва събиране и изваждане, а умножението и делението се свеждат към първите две.

През 1672 г. Готфрид Лайбниц изобретява цифрова механична сметачна машина с барабанен механизъм, наречена Stepped Reckoner. Той искал да създаде машина, която може да извършва не само събиране и изваждане, но и по-сложни операции, но не успял. Той обаче въвежда двоичната бройна система, залегнала в основата на всички модерни компютри.

Аритмометърът е първата автоматична сметачна машина за масова употреба, създадена от Чарлс Ксавиер Томас де Колмар през 1820г. и продължила да съществува до края на 19 век. Той може да събира, изважда, умножава чрез метода на калкулатора на Лайбниц, а при помощ от страна на човека може и да извършва деление. Машините от този тип и конструкция, които заемат цяло бюро, се продават в продължение на 90 години.

През 20 век механичните калкулатори продължават да се използват масово до към 1960-те години, когато биват изместени от електронни калкулатори.

Табулиращи машини

В края на 1880-те американецът Херман Холерит разработва метод за записване на данни върху перфокарти, които след това могат да се четат машинно. За обработката им той изобретява табулираща машина с механични релета и броячи. Методът му е използван при преброяването на населението в САЩ през 1890г. и резултатът е така впечатляващ, че Холерит основава Tabulation Machine Company, която става основа на създаването на бъдещата IBM.

До 1920 г. електромеханичните табулиращи машини могат да събират, изваждат и да отпечатват получения резултат. Те се програмират чрез свързващи проводници към подвижен контролен панел.

През 1930-те години американски компании като Friden, Marchant Calculator и Monroe и европейски компании като германските Mercedes-Euklid, Rheinmetall, Archimedes, по-късно Diehl, и швейцарската Madas произвеждат настолни механични калкулатори, които събират, изваждат, умножават и делят. Когато през 1935 г. САЩ въвеждат социално-осигурителните номера, данните на 26 милиона работника са записани с перфокарти. Те стават основно средство за администрация и счетоводство в индустрията и държавните служби. Такива машини са използвани по време на Втората световна война за криптографска статистическа обработка, както и за административни цели.

През 20 век навлиза електричеството и механичните калкулатори, касови апарати и сметачни машини са преработени да използват електродвигатели със зъбна предавка. Възприема се думата „компютър“ (изчислител) като название на длъжността, при която хора извършват математически изчисления с помощта на технически средства. През 1920-те години британецът Ричардсън предлага използването на такива хора и числени анализи за метеорологични прогнози. Прогнозите на времето се извършват от мощни компютри и съответни компютърни симулации (например с помощта на Уравненията на Навие-Стокс.)

Първият в света изцяло електронен калкулатор е ANITA на британската фирма Bell Punch, пуснат на пазара през 1961. Той използва в своите схеми електронни лампи (декатрони) и има дисплей от 12 разряда, изпълнен с газоразрядни лампи. ANITA се продава добре, тъй като е единственият продаван електронен настолен калкулатор и е тих и бърз. Технологията на катодните лампи е заменена през 1964, когато почти едновременно няколко фирми пускат на пазара изцяло транзисторни електронни калкулатори: американските Friden и Mathatronocs, италианската IME, японската Sharp. През следващата 1965 г., когато все повече фирми представят своите електронни калкулатори, между които е усъвършенстваният програмируем калкулатор Olivetti Programma 101, и България показва своя първи транзисторен електронен калкулатор Елка-6521, един от първите с клавиш за директно извличане на квадратен корен, макар че серийното производство се бави още няколко години.

В началото на 19 век Чарлз Бабидж, английски инженер-механик и енциклопедист, изобретява концепцията за универсална изчислителна машина, контролирана чрез набор от инструкции (програма) или първата изчислителна машина с общо предназначение– устройството, познато в наши дни като „компютър“. През 1822 г. той създава революционна (Диференциална машина), предназначена за автоматично изчисление на математически таблици (логаритмични, за приливите и отливите, астрономически). След това Бабидж проектира (без в крайна сметка да получи възможност за практическото ѝ реализиране) универсална конструкция, наречена Аналитична машина. Въвеждането на инструкции и данни в нея става с перфокарти, по подобие на жакардовия стан. За извеждане на резултата машината има принтер и звънец. Машината също така можела да поставя номера на картите, за да се четат по-късно. Тя използва десетична бройна система и числа с фиксирана запетая.

Списъкът с инструкции е на практика програмен език, който е близък до съвременните асемблерни езици. В него са възможни циклични и условни разклонения и затова според по-късното определение на Алън Тюринг), той е Тюрингов език. За програмиране се използват три различни типа перфокарти: една за аритметични операции, една за числени константи и една за операции по зареждане и складиране на информация и прехвърляне от хранилището към аритметичното устройство или обратно. За трите вида карти има три отделни четци.

По съвременни оценки, машината изпреварва своето време с около един век. През 1823 г. английското правителство отпуска субсидия за изработката на „Аналитична машина на Бабидж“. Работата по проекта обаче е забавено поради различни проблеми, включително спорове с главния механик, тъй като всички части се изработват на ръка, а те са хиляди. В крайна сметка изработката продължава десет години, конструкцията все повече се усложнява и през 1833 г. финансирането е прекратено.

Графиня Ада Лъвлейс познава Бабидж и е запалена от идеите му. Когато през 1842 г. италианският математик и инженер Луиджи Менабрия публикува статията „Елементи от аналитичната машина на Чарлз Бабидж“, основана на лекции на Бабидж в Торино, тя я превежда на английски и добавя свои бележки. Това е първата публикация, описваща процес на програмиране.

Ирландският счетоводител Пърси Лъдгейт, без да е запознат с работата на Бабидж, проектира свой вариант на Аналитична машина през 1909 г.

Аналогови изчислителни уреди

През първата половина на 20 век мнозина смятат аналоговите устройства за бъдещето на изчислителните машини. Те могат да отчитат промяната във физични величини (електрически, механични или хидравлични), така че да се вземат предвид при изчисленията. Стойностите на тези величини са непрекъснати и поради това по принцип изчисленията не могат да се повторят със същата точност, за разлика от цифровите изчислителни машини, при които променливите са кодирани в цифров вид.

Първият аналогов изчислителен уред е машината за предвиждане на приливите и отливите, изобретена от сър Уилям Томсън (лорд Келвин) през 1872 г. Тя използва няколко макари и тел за автоматично прогнозиране на очакваните нива на приливите и отливите за даден период на кое да е място, и е била от огромна полза при навигация в плитки води.

Друг механичен аналогов уред за изчисление е диференциалният анализатор, създаден през 1876 за решаване на диференциални уравнения чрез интеграли, използвайки механизъм тип „барабан и диск“. Концепцията за него принадлежи на Джеймс Томсън, по-голям брат на Уилям Томсън. Джеймс проучвал възможностите за създаването на подобна машина, но не искал да ползва по-бавния тип „сфера и диск“. При диференциалните анализатори, изходният сигнал на интеграторите предизвиквал въвеждането на следващия интегратор.

Важна стъпка в развитието на аналоговите изчислителни уреди е разработката на първите системи за контрол на стрелбата при насочването на далекобойните оръжия на някои кораби. Когато през 19 в. далекобойността на оръжията се увеличава драстично и изчислението на точната точка за прицел става трудно. Затова няколко наблюдатели предават на централна станция информация относно разстоянието до вражеските кораби, скоростта и посоката им на движение, както и метеорологичните условия. Екипи по насочването на оръдията въвеждат тази информация в аналогов изчислителен уред и взимайки предвид всички фактори, както и Кориолисовите сили, изчисляват най-добрата траектория за стрелба. През 1912 г. британският инженер Артър Полън разработва първия електрически аналогов изчислителен уред (наричан Argo Clock). Този уред е използван от Руския Императорски флот през Първата световна война. През 1916 г. британският флот започва да ползва в допълнение на уреда таблиците на Дрейер (на английски: Dreyer Fire Control Table) за по-добра координация при залп с няколко оръдия.

Механични устройства са използвани и от военновъздушните сили с цел подобряване на точността при бомбардировка. Първият такъв уред, разработен от Хари Уимперис през 1916 г. за английските Кралски военновъздушни сили, е Drift Sight. Този уред измерва скоростта на вятъра и изчислява възможното влияние на вятъра върху траекторията на бомбата. По-късно системата е подобрена със създаването на Course Setting Bomb Sight, и достига достига върха на възможностите си през Втората световна война с уредите Mark XIV bomb sight (Великобритания) И „Norden“ (САЩ).

Механичните аналогови уреди достигат своя връх с диференциалния анализатор, построен от Х.Л.Хейзън и Ваневар Буш в Масачузетския технологичен институт през 1928– 1931.. Той надгражда съществуващите механичен интегратор на Джеймс Томсън и усилватели на въртящ момент на Х. У. Нийман. Произведени са около дузина от тези устройства, след което става ясно, че технологията е морално остаряла. Най-мощният уред е разработен в Мурската школа към Пенсилванския университет, където по-късно е създаден ENIAC.

Напълно електронен аналогов компютър е разработен от Хелмут Хьолцер през 1941 г. във военния научноизследователски център в Пенемюнде, Германия.

Към края на 1950-те цифровите компютри започват да изместват аналоговите, но хибридни аналогови компютри, контролирани с цифрова електроника, се използват през 1960-те и по-късно за някои специални цели. Например в България е запазена като музеен експонат аналогова изчислителна машина, използвана за моделиране на физически процеси.

За разлика от аналоговите компютри, в които данните са непрекъснати величини, свързани с действието на физически закони или взаимни връзки между физически величини, в цифровите машини информацията се съхранява във вид на числа. В съвременните компютри числата са представени в двоична система (във вид на 0 и 1).

Математическа теория

През 1879 г. Готлоб Фреге дефинира логическите изрази в книгата “Begriffsschrift“. Те са в основата на цифровата техника и до днес.

През 1900 г. Давид Хилберт дефинира 23 математически задачи, известни като Хилбертови проблеми. През 1902 г. допълва списъка с още една задача. През 1928 г. Хилберт перифразира 10-та задача за диофантовите уравнения и дефинира задачата за решимостта (на немски: Entscheidungsproblem).

През 1931 г. Курт Гьодел предлага решение на 2-ра задача на Хилберт с две теореми за непълнота. Това решение на Гьодел е оспорвано, защото доказва непълнота за аритметика на Пеано от първи ред. Гьодел доказва, че нито един логически израз не може да гарантира сам за себе си, че е „истина“ или „неистина“ и е необходим външен наблюдател. При доказателството си на всеки логически израз Гьодел съпоставя число, което на практика представлява кодиране на инструкциите. Тези числа се наричат числа на Гьодел, а обектният код, който процесорът на компютъра изпълнява, е последователност от числа на Гьодел.

През 1933 г. Гьодел полага основите на теорията на изчислимостта като доказва, че двоичните системи могат да изпълняват само най-простите аритметични операции – събиране, изваждане и преместване – а всички останали операции (умножение, деление, повдигане на степен, корен квадратен и т.н.) се изпълняват с рекурсивни функции. Казано простичко– събираш, преместваш, повтаряш. Това е основният цикъл на всички изчислителни устройства с двоична бройна система, независимо дали са механични, електромеханични или електронни.

През 1934 г. Алонсо Чърч формулира своя Тезис на Чърч за природата на ефективно изчислимите функции чрез рекурсия. Почти по същото време Алън Тюринг публикува своята статия „Върху изчислимите числа, с приложение върху задачата за решимост“ („On Computable Numbers, with an Application to the Entscheidungsproblem“ (1936 г.) Той преформулира тезиса на Чърч, като замества универсалния формален език на Чърч (на английски: functional programming) с математически модел на императивен език, наречен „Тюринг изчислимост“. Тюринг дефинира и едно абстрактно изчислително устройство със запаметена програма с кодирани инструкции (т.е. последователност от числа на Гьодел), основана на аритметиката, което може да извършва действия с произволни числа и по-късно получава името машина на Тюринг. Той доказва, че такава машина може да изпълни всяка математическа операция, стига тя да бъде представена чрез алгоритъм.

Тюринг въвежда и идеята за „универсална машина“ (днес позната като Универсална машина на Тюринг), която би могла да изпълни задачите на всяка друга универсална машина на Тюринг чрез изпълнение на програма, написана върху магнитна лента, позволявайки програмиране на машината. Фон Нойман признава, че главната идея в неговата концепция за съвременния компютър идва точно от работата на Тюринг. Ако се няма предвид крайната компютърна памет, съвременните компютри се считат за цялостни по Тюринг т.е. те имат възможността да изпълнят всичко, което би могла една Универсална машина на Тюринг.

Електромеханични компютри

Ерата на съвременните изчислителни машини започва със значителните успехи в разработките, постигнати преди и по време на Втората световна война. Повечето сметачни машини през този период са електромеханични – пресмятането се извършва от механични релета с електрическо захранване. Те са бавни и в крайна сметка са заместени от много по-бързите изцяло електронни машини, първоначално основани на вакуумни лампи.

Един от първите примери за електромеханичен компютър е Z2, създаден от немския инженер Конрад Цузе през 1939 г. Той е подобрение на предходния модел Z1 – бинарен, електромеханичен калкулатор с ограничена програмируемост и механична памет, четящ инструкции от перфолента, защото цялата алгоритмична логика е заменена с електрически релета.

По време на Втората световна война британски криптолози използват в Блечли Парк електромеханични машини, наричани „Бомба“, за криптоанализ на кода на немската роторна шифровъчна машина Енигма. Оригиналният им дизайн е полски от 1939 г., но е доусъвършенстван в Блечли Парк от Алън Тюринг и Гордън Уелшман. Те тестват възможните настройки на роторите на Енигма чрез серия от логически дедукции, пресъздадени с електрически вериги. Повечето възможности водели до несъответствия, а малкото останали можели да се тестват на ръка. С „Бомбата“ англичаните стигат до успех в разкодирането на немския шифър.

Следващият модел на Цузе Z3 е първият електромеханичен, напълно автоматичен цифров компютър с програма (1941 г.). Компютърът Z3 наподобява стъклена витрина, малко по-висока от човешки ръст, пълна с уреди: има 2000 релета, можел да обработва 22 битови думи и работи с тактова честота от 5– 10 Hz. Програмата и информацията се съхраняват на перфориран целулоиден филм. Машината прилича на съвременните по много неща, сред тях по възможността да работи с числа с плаваща запетая. Трудно приложимата десетична бройна система (използвана по-рано от Чарлз Бабидж) е заменена с двоична. Това прави машините на Цузе по-лесни за изработка и по-надеждни. В свои патенти от 1936 г. Цузе предвижда възможност за съхранение на програмните инструкции в главното хранилище за информация – основна характеристика на архитектурата на фон Нойман, която за пръв път е приложена на практика в английската Манчестърска дребномащабна машина през 1948г.

Поради войната работата на Цузе е затруднена, а Z3 e унищожена при бомбардировките на Съюзниците. Работата му става известна във Великобритания и САЩ доста по-късно. След войната компанията IBM не само се запознава с нея, но и купува някои от патентите му, като така финансира стартиращата компания на Цузе.

През 1944 г. Хауърд Айкен от IBM създава компютъра Марк I, но въпреки приликите със Z3, той не е така цялостен по Тюринг.

Цифрови изчисления

Машинното представяне на цифрите и изчисленията с тях се основава на Булевата алгебра, развита от британския математик Джордж Бул в монографията му Законите на мисълта, публикувана през 1954г. Булевата алгебра е доразвита от Уилям Джевънс и Чарлз Сандърс Пърс, и представена систематизирано от Ернст Шрьодер и Алфред Норт Уайтхед.

През 1930-те американският електронен инженер Клод Шанън и съветският логик Виктор Шестаков, работейки отделно, стигат до извода, че Булевата логика и определени електрически вериги, днес познати като логически елементи, си съответстват съвсем точно. Те показват, че изразите на Булевата алгебра могат да се реализират с електронни релета и ключове. В основата на съвременното проектиране на цифрови електронни схеми стои главната идея именно на техните дисертации.

Навлизане на електронни елементи

За навлизането на електронни елементи в изчисленията имат значение следните изобретения:

В периода 1938– 1939 г. IBM и NCR работят по създаване на електронни акумулатори (процесорни регистри). Те изпълняват операцията събиране и натрупване с управление на преноса. Това е основният цикъл на всички аритметични операции, включително и тези, които се изпълняват рекурсивно– умножение, деление, извличане на корен квадратен, повдигане на степен и т.н. През януари 1940 г. IBM патентова счетоводния апарат на Дикинсон, през март 1940 г. NCR патентова изчислителната машина на Деш и Мумма. Тези електронни изчислителни машини броят и не използват логически изрази. При броенето Дикинсон използва преместващ регистър, Деш и Мумма използват двоични броячи на Уин-Уилямс. Счетоводната машина на Дикинсон е първото изчислително устройство, в което данните се въвеждат от електро-механична клавиатура, обработват се електронно и резултатът се изобразява на електронно-лъчева тръба– така, както работят съвременните компютри. Счетоводната машина на Дикинсон и изчислителната машина на Деш и Мумма не са автоматични, а всяка операция се изпълнява след натискане на клавиш. През войната се използват в криптоанализа.

В периода 1939– 1942 г. Джон Атанасов и Клифърд Бери от Щатския университет в Айова разработват и тестват компютъра на Атанасов–Бери (ABC), чийто прототип е завършен през 1942 г. Това е първата електронна цифрова изчислителна машина с регенеративна памет, реализирана с кондензатори, разположени върху два въртящи се барабана. Всеки барабан съхранява 30 думи по 50 бита (плюс 2 думи резерва), т.е. всеки барабан съхранява 1600 бита. Данните, представени в десетичен формат, се въвеждат чрез перфокарти от перфочетец и преди обработка се преобразуват в двоичен формат. Машината използва около 300 вакуумни лампи. Компютърът ABC е специализиран да решава системи от линейни уравнения с до 29 неизвестни и няма възможност да се препрограмира. Изпълнява знакови аритметични операции (на английски: signed arithmetic) събиране, изваждане, преместване, умножение, деление. Макар че електрониката функционира добре, компютърът като цяло не е надежден поради грешки при четенето на въвежданата информация.

В периода 1939– 1942 г. Bell Telephone Laboratories работи върху електронен компютър, който е продължение на електромеханичния компютър на Джордж Стибиц (George Stibitz) и през август 1942 г. Самуел Уилямс (Samuel B. Williams) го патентова. Компютърът на Уилямс изпълнява знакови аритметични операции събиране, изваждане, преместване, умножение, деление и корен квадратен. Електромеханичният компютър на Джордж Стибиц е предназначен да изпълнява операции върху комплексни числа и е първият компютър с отдалечен достъп (на английски: remote access). Данните се въвеждат от телексна машина и резултатите се изписват също на телексната машина.

Електронните вакуумни лампи са ненадеждни. Дори в 1945 г. средното време между отказите (на английски: Mean Time Between Failure, MTBF) на ENIAC e 8 часа, т.е. на всеки 8 часа се налага ремонт на машината. При този ремонт са сменяли по 50 лампи. Ниската надеждност на вакуумните лампи принуждава големите фирми производители на изчислителни устройства да използват релета. Релетата са бавни и шумни, но през 1930-те години са с по-висока надеждност. Затова електронните лампи се налагат бавно (повече от 40 години) и изчислителните машини от 30-те години и началото на 40-те години са електромеханични. Вакумните лампи се използват в изчислителната техника сравнително кратко време и към 1965 г. излизат от употреба.

По същото време цифровите изчисления изместват аналоговите. Първите електронни машини с вакуумни лампи са ръчно изработени независимо една от друга, съдържат вериги с релета и вакуумни лампи, и често използват перфокарти или перфолента като метод за въвеждане на информация, както и като основно място за записване на резултата. Сред първите електронни машини са Colossus в Англия, компютърът на Атанасов–Бери, ENIAC в САЩ и Z3 в Германия.

В Англия Томас Флауърс работи в пощите от 1926г. и през 1930-те започва да проучва използването на електронни елементи в телефонните централи. През 1934 г. изработва експериментално оборудване, което превръща част от телефонна централа в система за електронна обработка, използваща хиляди вакуумни лампи. Набраният от Флауърс опит е използван по-късно при изработката на Colossus в Блечли парк.

Програмируеми електронни машини

По време на Втората световна война изчислителната техника се прилага предимно за военни цели и съответно са разработени тясно специализирани машини с конкретни задачи, като дешифриране на съобщения и изчисления на балистични таблици. Поради секретния характер на работата информацията за тях на времето е ограничена и става известна доста по-късно.

В Блечли парк през 1941 г. е създаден Colossus, един от първите в света електронни цифрови компютри, предназначен за криптоанализ, който тества възможни комбинации от букви и може да се програмира чрез ключове и панел с щепсели.

По същото време САЩ създават ENIAC (Electronic Numerical Integrator and Computer), също програмируема електронна машина. Въпреки че ENIAC е сходен на Colossus, той е много по-бърз и по-лесно приспособим. Той можел да реши всеки проблем, написан като програма, която може да се събере в паметта му. Както при Colossus, „програмата“ при ENIAC се дефинира от състоянието на свързващите проводници и релета. Програмата трябва да бъде механично зададена в машината с ръчно настройване на щепсели и релета.

Машината комбинира високата скорост на електрониката с възможността да се програмира за много сложни изчисления. Може да събира и изважда 5000 пъти в секунда, 1000 пъти по-бързо от която и да е друга машина. Също така има модули за умножение, деление и коренуване. Високоскоростната памет е ограничена до 20 „думи“ (около 80 бита). Създадена е под ръководството на Джон Мокли и Преспър Екърт в Пенсилванския университет между 1943г. и 1945 г. Машината тежи 30 тона, консумира 200 kW мощност и съдържа над 18 000 вакуумни лампи, 1500 релета и стотици хиляди резистори, кондензатори и индуктори. Една от най-трудните задачи за инженерите е да намалят броя на дефектиралите вакуумни лампи. Машината се използва почти постоянно в следващите 10 години.

Първите изчислителни машини изпълняват определена задача. Например калкулаторът може да прави основни математически изчисления, но не може да бъде използван за текстообработка или за конзолни игри. За да се промени задачата се изисква преинсталиране, преструктуриране или промяна в дизайна. При първите изчислителни уреди се набляга много повече на дизайна, отколкото на програмирането. Препрограмирането, когато и ако е възможно, е труден процес, основан на блок-схеми, подробен технически чертеж и преинсталация.

Теория

Ситуацията се променя със създаването на теория за машина, която съхранява в паметта си различни програми за различни изчисления (компютър със запаметена програма). Основите на теоретичната информатика са положени от Алън Тюринг в неговата статия върху изчислимостта от 1936 „On Computable Numbers“. През 1945 Тюринг постъпва в Националната физическа лаборатория, НФЛ (Великобритания), където започва проект за електронен компютър със запаметена програма. В доклад, озаглавен „Предложение за електронен изчислител“ (на английски: Proposed Electronic Calculator), се споменава за първи път за такова устройство, а през 1946 г. Тюринг представя пред директорския борд на НФЛ подробен доклад за първия сравнително завършен модел на компютър със запаметена програма: Automatic Computing Engine (ACE). Поради следвоенната атмосфера на секретност обаче този доклад не е публичен, макар че е построен пилотен модел, пуснат в действие на 10 май 1950. Според Тюринг скоростта и размерът на компютърната памет са от изключителна важност за работата и той предлага да се използва високоскоростна памет (25 КВ при днешните стандарти), при скорост от 1 MHz. ACE изпълнява програмни команди и използва съкратени компютърни инструкции, които са ранна форма на програмиране.

Също през 1945 г. в школата Мур към Пенсилванския университет е създаден ENIAC по поръчка на армията, който демонстрира голяма скорост на изчисления и доказва полезността на концепцията. Въпреки това той още не съхранява програмните инструкции в паметта си, а се програмира ръчно от оператори. Затова е замислен подобрен модел EDVAC. Джон фон Нойман е вече влиятелна фигура, работи като консултант по втория проект и неговите записки „First Draft of a Report on the EDVAC“ (1945), независимо от незавършения си вид и секретния си характер, получават значително повече публичност от работата на Тюринг. Основният напредък е въвеждането на понятието за съхранение на програмните инструкции в паметта. Така описаната компютърна архитектура става популярна като архитектура на фон Нойман.

Манчестърски компютри

Манчестърската дребномащабна експериментална машина (на английски: Manchester Small-Scale Experimental Machine, SSEM, известна и като Manchester Baby) е първият в света компютър със запаметена в паметта програма. Конструиран е в Манчестърския университет от Фредерик Уилямс, Том Килбърн и Джоф Тутил, а първата програма е пусната в действие на 21 юни 1948.

Машината е предназначена основно за тестване на вид двоична компютърна памет, реализирана със запаметяващи тръби на Уилямс (електроннолъчеви тръби, при които се използва разликата в моментните електрични заряди, генерирани при вторична електронна емисия). Manchester Baby работи с 32 битова машинна дума и има памет от общо 32 думи. Тъй като нарочно е създаден опростен, единствените вградени в хардуера аритметични функции са изваждане и отрицание, а останалите се изпълняват от софтуера. Въпреки че Manchester Baby е смятан за малък и примитивен дори от съвременниците, това е първата работеща изчислителна машина, която съдържа всички основни елементи на модерния компютър. Веднага щом е доказана приложимостта на основните принципи, стартира проектът за усъвършенстван вариант Манчестър Марк 1 (Manchester Mark 1). Тази машина търси Мерсеновите прости числа в продължение на девет часа без да направи грешка. Успешната дейност на машината е широко отразена в британската преса, като за да я опишат, вестниците използват фразата „електронен мозък“.

Новото при Манчестър Марк 1 са индексните регистри, служещи за автоматично изменение на адреса на операнда по време на изпълнение на програмата. Много от идеите в тази разработка са използвани впоследствие при следващото поколение машини като IBM 701 и 702 и Ferranti Mark 1– първият в света търговски компютър с общо предназначение, пуснат в действие през 1949 г. През 1951 главните конструктори на Марк 1 Уилямс и Килбърн започват работа по наследник на Марк 1 – Мег, която включва изчисления с плаваща запетая.

Другият компютър, считан за един от първите модерни електронни програмируеми компютри е Electronic Delay Storage Automatic Calculator (EDSAC), създаден от екипа на Морис Уилкс в Математическата лаборатория към Университета Кеймбридж през 1949 г. Идеята за машината е повлияна от труда на Джон фон Нойман „Чернова на доклад за EDVAC“ (на английски: First Draft of a Report on the EDVAC). Пуснат е на 6 май 1949г. и може да изчислява квадрати на числа, както и да съставя списъци от прости числа.

EDVAC

Още преди окончателното завършване на ENIAC неговите създатели предлагат подобрен модел– EDVAC (Electronic Discrete Variable Automatic Computer), който е също електронен, но съдържа редица важни логически и архитектурни подобрения (например високоскоростен достъп до паметта, двоична, а не десетична система) и е компютър със запаметена програма. Екерт и Мокли обаче напускат Университета на Пенсилвания и не завършват проекта. Те основават своя компания Eckert–Mauchly Computer Corporation, която по-късно преминава към Remington Rand която на свой ред става Sperry Rand, а днес съществува като Unisys.

През 1949 г. EDVAC е закупен от Лабораторията за балистични изследвания към армията, но поради редица проблеми, сред които и патентни спорове с Екерт и Мокли, компютърът влиза в действие едва през 1951г. като дори тогава се използва само ограничено.

Компютри за масова употреба

В края на 1940-те и началото на 1950-те се утвърждава понятието компютър в днешното му значение. Първоначално фразата „изчислителна машина“ (на английски: computing machine) се съчетава с прилагателното „електронна“ или „цифрова“ но постепенно се налага по-краткото „компютър“.

Първият компютър за масова употреба е Феранти Марк 1 на английската компания Феранти, доставен на Манчестърския университет през 1951. Той се основава на Манчестър Марк 1, като основните подобрения са размерът на основната памет, наличие на второстепенна памет (използваща магнитен барабан), по-бързо умножение и допълнителни команди. Изпълнението на основните процеси отнема 1,2 милисекунди, а умножение може да бъде извършено за 2,16 милисекунди. Втори такъв компютър е закупен отУниверситета в Торонто, а от усъвършенстваната версия Марк 1 Стар между 1953 и 1957 са продадени общо седем машини, включително на лабораториите на Shell в Амстердам.

През 1951г. се появява първият компютър, предназначен за офис употреба, наречен Лео 1. Основна роля за създаването му имат J. Lyons & Company, британска компания, известна с магазините си за чай, но със засилващ се интерес към новите офис мениджмънт технологии. На 17 ноември компанията J. Lyons започва да извършва седмични оценки на работата на пекарна, използвайки LEO (Lyons Electronic Office). Това е първата употреба на компютър със запаметена програма за бизнес цели.

Първият широко разпространен компютър е UNIVAC I (Universal Automatic Computer). Компанията Remington Rand разпространява 46 от тези машини за по повече от 1 милион долара всяка, като с такъв компютър се сдобива и Бюрото за преброяване на населението на САЩ. UNIVAC 1 консумира 125 kW електроенергия. Основната памет е съставена от серия от живачни закъснителни линии, има възможност за съхранение на 1000 машинни думи от 11 десетични цифри плюс знак (72-битови думи).

През 1954 IBM представя по-малък и по-достъпен компютър, който става много популярен. Магнитният барабан за съхраняване на данни на IBM 650 се върти с 12 500 оборота в минута и позволява много по-бърз достъп до записаните данни, отколкото обикновените барабани. Неговата памет първоначално е ограничена до 2000 десетбуквени думи, но впоследствие е увеличена на 4000, като тези параметри доминират и през следващите години. Теглото на IВМ 650 е около 900 кг като прикрепеният захранващ блок е с тегло 1350 кг и са монтирани в отделни шкафове с размери 1,5 х 0,9 х 1,8 m. Стойността му е US $ 500 000.

Микропрограмиране

Идеята, че централният процесор може да бъде контролиран от малка, но силно специализирана компютърна програма, разположена в бързодействаща памет ROM, принадлежи на Морис Уилкс. Такова микропрограмиране позволява основният набор от инструкции да се дефинира или разшири чрез вградени програми (наричани днес микрокод или фърмуер). Тази концепция значително улеснява развитието на централния процесор. Уилкс описва за първи път идеята си по време на годишната компютърна конференция на Манчестърския университет през 1951 и по-късно публикува разширен вариант в списанието IEEE Spectrum през 1955.

Микропрограмирането се използва широко при процесорите на мейнфрейм и други компютри; осъществено е за първи път в EDSAC 2, който също използва множество идентични „секции“ (на английски: bit slices), за да се опрости конструкцията.

Компютърна памет

Оперативната памет в първите машини е изработена от електронни лампи, например Манчестърските компютри използват електростатична памет, изработена от електронно-лъчеви тръби на Уилямс. В други лампите са запълнени с живачни пари, наречени „закъснителни линии“, в които се използва ефектът на забавяне на акустичните сигнали, затова този тип памет се нарича акустична. Информацията се кодира като последователност от импулси и се преобразува от звуков в електрически сигнал с помощта на кварцови кристали. Такава памет е използвана в EDSAC, SEAC, ACE и EDVAC. Недостатък на този тип памет е последователният достъп и дългото време, необходимо да извличане на инструкциите. В опит да се минимизира това време се налага специален вид програмиране (на английски: optimum coding).

Първите успешни опити за разработване на магнитна памет са барабанните памети, които съхраняват информацията като намагнитени области върху метален цилиндър (барабан). Изобретението е на Густав Тошек от Австрия от 1932, но според други автори принос има и Екерт Магнитните барабани се използват като компютърна памет няколко десетилетия докъм 1960-те.

Основна характеристика на американската UNIVAC (1951) е включването на новооткрития вид памет с магнитна лента и високоскоростно записващо устройство за постоянно съхранение. Магнитните ленти все още се използват като средство за съхранение на големи обеми от данни. През 1952 IBM представя IBM 701, първа машина от успешната им серия 700/7000 и първият мощен компютър. IBM 704 (1954) използва феритна памет и се превръща в образец за всички големи машини.

През 1953г. IBM създава твърди дискове за компютъра RAMAC – технология, комбинираща предимствата на феритната памет и на магнитния барабан. Те имат 50 магнитни плочи с диаметър 60 cm с общ капацитет 5 MB. Скоростта на въртене на плочите тогава е само 120 rpm, което означава средна скорост на достъп около 1 секунда.

Характеристики на някои от първите компютри

Според активните компоненти и вида и характеристиките на пасивните компоненти на компютъра е приета следната класификация :

Компютри на транзистори

Най-забележимият напредък в технологиите настъпва с изобретяването на двуполюсния транзистор през 1947 г. От 1955 нататък транзисторите заменят вакуумните лампи в конструкцията на компютрите, давайки тласък на „второто поколение“ компютри. Те имат много предимства пред лампите: малки са и се нуждаят от много по-малко енергия, затова излъчват и по-малко топлина. Транзисторите са много по-надеждни и работят много по-дълго. Поради малките им размери компютрите могат да са изградени от десетки хиляди двоични логически схеми, разположени в много малко пространство. Така се намаляват размерите, началната цена и експлоатационните разходи. Най-често, второто поколение компютри са изградени от голям брой печатни платки (например „IBM Standard Modular System“), всяка от които има от един до четири логически елемента.

Първият компютър изцяло с транзистори е английският Harwell CADET (1955), построен в Института за изследване на атомната енергия в Харуел. Той има за памет 64-килобайтов магнитен барабан с множество движещи се глави, проектиран в Националната физична лаборатория. Машината работи с ниска тактова честота от само 58 kHZ, за да се избегне нуждата от вакуумни лампи.

В CADET са използвани 324 транзистора с точков контакт на британската компания Standard Telephones and Cables и 76 биполярни транзистора за четене на информация от барабана. От август 1956 CADET работи редовно, като често изчисленията продължават над 80 часа непрекъснато. Средното времето на прекъсване е около 90 минути поради проблеми с надеждността на ранните партиди транзистори, но новите биполярни транзистори са много по-надеждни.

Дизайнът на транзисторния CADET е внедрен от Metropolitan-Vickers в първия търговски модел в Англия Metrovick 950. Произведени са шест компютъра, като първият е завършен през 1956. Те са успешно използвани в различни отдели в компанията в продължение на около пет години.

В Америка второто поколение компютри е представено от серията 1400 на IBM (1959). IBM 1401 превзема една трета от световния пазар, като между 1960 и 1964 са инсталирани над десет хиляди машини.

Транзисторни периферни устройства

Транзисторната електроника подобрява не само централния процесор, но и периферните устройства. Второто поколение запаметяващи устройства с магнитен запис може да съхранява десетки милиони знаци. След оперативната памет, реализирана като твърд диск, фиксиран към централния процесор за бърз пренос на данни, се появяват подвижни дискове като периферни устройства. Чрез сменяеми дискови пакети се постига бърза взаимозаменяемост и почти неограничен капацитет за съхранение на данни. Освен на дискове, информацията се съхранява и на магнитна лента, която е по-евтина от диска.

Много от компютрите от второ поколение използват вторични (комуникационни) процесори за работа с периферните устройства. Например докато комуникационният процесор контролира четенето и обработката на перфокарти, главният процесор изпълнява инструкции за двоични изчисления. Пренасянето на данни между процесорите, паметта и периферните устройства се осъществява с помощта на компютърни шини и то с определен ритъм, наречен тактова честота. Изпълнението на поредица от инструкции се нарича цикъл. Например на PDP-1 времето на основния цикъл е 5 микросекунди; следователно повечето аритметични инструкции се изпълняват за 10 микросекунди (което е равносилно на 100 000 операции в секунда), защото за изпълнение на повечето операции са необходими поне два цикъла: един за четене на инструкциите и един за опериране с данните.

Въпреки намаляването на размерите на отделните устройства и компоненти, компютрите все още са с внушителни размери (мейнфрейм компютри), скъпи са и затова са разположени в големи изчислителни центрове в университети, държавни учреждения и частни компании. През периода от 60-те до началото на 80-те безспорен лидер на пазара е IBM System/360. Нейни клонинги са се правили в много страни, в това число и социалистическите (серия ЕС ЕИМ).

По време на второто поколение компютри силно нараства отдалеченото ползване на терминални устройства. За това спомагат подобрените телекомуникации, които осигуряват достатъчна скорост и позволяват работа от голямо разстояние. Поставя се началото на компютърните мрежи, които в крайна сметка ще се обединят в една взаимно свързана „мрежа от мрежи“– Интернет.

Суперкомпютри

В началото на 1960-те се появяват суперкомпютрите. Суперкомпютърът Атлас е съвместна разработка между Манчестърския университет, Ferranti и Plessey, инсталиран е в университета и официално започва работа през 1962 като един от първите суперкомпютри в света, считан за един от най-мощните за онова време. Той е машина от второ поколение, която използва дискретни германиеви транзистори. Атлас е пионер и с въвеждането на Atlas Supervisor, считан от много за първата модерна операционна система.

В САЩ Сеймор Крей от Control Data Corporation (CDC) проектира серия от компютри за иновативни проекти и паралелни изчисления, с конкретна цел постигане на по-висока изчислителна мощност. CDC 6600 е пуснат през 1964 и също се счита за един от първите суперкомпютри. CDC 6600 е по-добър от предишния IBM 7030 Stretch с коефициент около три пъти. С производителност от 1 megaFLOPS, CDC 6600 е най-бързият компютър от 1964 до 1969 г., след което отстъпва първенството на наследника си CDC 7600.

Интегрална схема

Следващият голям скок в изчислителната мощ настъпва с разработката на интегралните схеми. Идеята принадлежи на англичанина Джефри Дъмър от Royal Radar Establishment към Министерството на отбраната, който първи описва публично концепцията на симпозиум във Вашингтон на 7 май 1952:

Заслугата за първите осъществени на практика интегрални схеми принадлежи на американците Джак Килби от Texas Instruments и Робърт Нойс от Fairchild Semiconductor. Килби описва своите първоначални идеи през юли 1958, демонстрирайки първия работещ прототип на 12 септември 1958. В патентната си заявка от 6 февруари 1958, Килби описва новия уред като „тяло от полупроводникови материали … в което всички компоненти на електронната верига са напълно интегрирани“. Първият клиент на това изобретение са Военновъздушните сили на САЩ.

Нойс също предлага идея за интегрирана верига половин година по-късно. Неговият чип разрешава много практически проблеми, които чипът на Килби не може. Произведен във Fairchild Semiconductor, той е направен от силиций, докато чипът на Килби е направен от германий.

След 1960-те

След изобретяването на ИС настъпва взривообразно усъвършенстване и производство на компютри от трето поколение, макар че през 1960-те години има значително припокриване в технологиите от второ и трето поколение. През 1964 IBM въвежда модулите IBM Solid Logic Technology в хибридни схеми за System/360. Компанията Sperry Univac продължава производството на второ поколение машини, като UNIVAC 494, чак до 1975 г. Миникомпютрите навлизат в промишлеността, бизнеса и университетите, създават се компютърни центрове. Това пък обуславя възможността за широки приложения, например да се симулират аналогови схеми. Такава е SPICE (1971), програма за автоматизация на проектирането в електрониката (EDA).

Докато първите чипове съдържат само централния процесор, развитието на планарната технология води естествено до миниатюризация и микропроцесори, както и чипове, съдържащи повечето или всички електронни компоненти на компютъра. До голяма степен е безспорно, че първият едночипов микропроцесор е Intel 4004, проектиран и реализиран от Тед Хоф, Федерико Фагин и Станли Мазор от Интел през 1971.

През 1970-те години микропроцесорът довежда до появата на микрокомпютри. Това са малки, евтини компютри, които вече могат да бъдат притежавани от частни лица и малки предприятия и през 1980-те те години стават масови. Все още е въпрос на дебат коя система е първият микрокомпютър, тъй като са разработени няколко любителски системи въз основа на Intel 4004 и неговия наследник Intel 8008, то е общоприето, че първият търговски достъпен компютър е Altair 8800, представен през януари 1975 в уводната статия на Popular Electronics. Той също е с процесор Intel 8080, но и е доста ограничена система: има само 256 байта динамична памет с произволен достъп (DRAM), светодиоден дисплей и панел с превключватели вместо клавиатура. Въпреки това, той става изненадващо популярен, с няколкостотин продажби през първата година. Няколко доставчика веднага започват да предлагат допълнителни платки хардуер за Altair 8800, които могат да се свързват с компютърна шина S-100.

През април 1975 г. на Хановерския панаир, Оливети представя първата в света персонална компютърна система P6060, която прилича на електрическа пишеща машина. Централният процесор е реализиран на две платки с TTL компоненти, а не с микропроцесор. Той се предлага с едно или две 8″ флопи дискови устройства и 80-колонен графичен термопринтер, 48 Kb RAM, и език за програмиране BASIC. Тежи 40 кг и цената на минималната конфигурация е 7950 долара Olivetti P6060. // Посетен на 11 ноември.. Като цялостна система, той е значителна стъпка напред в сравнение с Altair, макар и да не постига същия успех. Той се състезавал с подобен продукт на IBMкойто имал външно флопи.

От 1975 до 1977 г. микрокомпютри като Altair 8800 и някои версии на Apple I се продават като комплекти за направи-си-сам. Предварително сглобените системи нямат голяма популярност, докато през 1977 не излиза Apple II и подобните на него Tandy TRS-80 и Commodore PET. С тези достъпни домашни системи започва ерата на персоналните компютри, често наричана „революция“. Тя е неразривно свързана с основаването на Apple Inc. (1976) от Стийв Возняк и Стийв Джобс, както и с програмните продукти на Майкрософт (1975) и Бил Гейтс.

Компютърът NeXT притежава обектно-ориентирани инструменти за разработка на библиотеки и Тим Бърнърс-Лий и Робер Кайо от Европейска организация за ядрени изследвания го използват, за да разработят първия в света софтуер за уеб сървър, да напишат първия уеб браузър и да положат основите на Уеб. Тези факти, заедно с тясната връзка на NeXT със Стив Джобс, му осигуряват място в историята на най-значимите компютри.

Сложни системи като компютрите изискват много висока надеждност при работа. Например ENIAC работи в продължение на осем години непрекъснато (от 1947 до 1955), защото дефектиралите вакуумни лампи е можело да се сменят без спиране на системата. С тази проста стратегия сривовете драстично намалели. Полупроводниковите памети обичайно не дават дефекти при работа, макар че някои операционни системи като Unix тестват паметта при всяко стартиране на системата, за да открият евентуални проблеми. Днес, когато сървърните ферми са много често избраните платформи за доставка, изискването за надеждна работа е още по-строго.

Докато през 1960-те полупроводниковите технологии се разработват само в САЩ, с течение на времето производството на ИС и други компютърни компоненти се превръща в глобална индустрия и днес водещите производители имат производство в цял свят. Например Intel има фабрики в САШ, Европа и Азия. Технологията се усъвършенства, плътността на елементите расте, а единичните размери намаляват според закона на Мур. През 21 век вече масово се предлагат многоядрени процесори. Постиженията позволяват компютрите да навлязат във всички сфери на производството и бита, да заемат различни форми– от вградени системи през мобилни телефони до сателитни системи. През 2006 г. от общата консумация на електроенергия в САЩ 1.5% се пада на сървърите

Беше ли полезна тази статия?

Оцени я!

Среден рейтинг / 5. Брой гласове:

Ако намираш статията за полезна...

Последвай ни в социалните мрежи!

Съжаляваме, че тази статия не ти беше полезна!

Помогни ни да променим това!