Основи інформатики/Історія обчислювальної техніки

Основні етапи розвитку комп'ютерної техніки.

Розвитку сучасної обчислювальної техніки сприяв, з одного боку, розвиток пристосувань для рахунку, розвиток систем числення, методів обчислень, математичної логіки, що визначило логічну схему компютера, с іншого боку, розвиток науки та техніки у галузі електрики, електронної теорії, що визначило елементну базу сучасних компютерів'.


Застосування для лічби підручних засобів.

Первісні люди не знали чисел і використовували для запам'ятовування певної кількості предметів наочне уявлення – різні підручні засоби: мушлі, камінці тощо. Розвиток рахунку пішов значно швидше, коли людина здогададась звернутися до самого природного рахункового апарата — своїм пальцям. Від пальцевого рахунку бере початок п'ятіркова система числення (одна рука), десяткова (дві руки), двадцяткова (пальці рук і ніг). Деякі народи для запам'ятовування кількості предметів використовували зарубки. Наприклад, на дощечці зарубками відмічався борг, потім дощечка розламувалася навпіл упоперек всіх зарубок. Одна половина віддавалася боржнику, друга - господареві. Такі дощечки називалися "бірки". В Англії такий спосіб запису податків існував до кінця XVII ст. На Русі зарубки робилися на палиці, яка називалась носом («зарубити на носу»). Також існували рахункові мотузки. Перуанські рахункові мотузки називалися кіпу. Рахували на них за допомогою вузликів. А щоб не забути, що де рахувалось, кіпу фарбували в різні кольори. Подібний спосіб рахунку застосовували також стародавні індійці та китайці.


Пристосування для рахунку.

Найпоширенішим пристосуванням для рахунку був абак (або рахівниця). Найстародавніша рахівниця була знайдена при археологічних розкопках на одному з островів Егейського моря (знахідка відноситься до IV тис. до н.е.).

Абак (від грецького abax-дошка) – рахункова дошка, що широко застосовувалася в Древній Греції. Грецький абак являв собою дошку, на якій паралельні лінії позначали розряди одиниць, десятків, сотень і т.д. На лініях вміщували відповідне число жетонів (камінців, кісточок). У Древньому Римі на дошці для зручності робили для камінчиків жолобки. Це пристосування називалося "калькулі" ("калкулюс" - галька). У Китаї камінчики замінили на намистини, нанизані на прутики, які закріплювались на дерев'яній рамі. Кожний прутик був розділений на дві нерівні частини. У одній частині було 5 намистин, по кількості пальців на руці, а в другій – тільки 2, по кількості рук. Це пристосування називалося "суан-пан". Їм користувалися в Китаї вже в VI столітті. У Японії подібна конструкція набула назву "соробан".

У Західній Європі знайомство з абаком відбулося в Х столітті, коли після знайомства з індо-арабською системою числення Герберт (940-1003) (з 999 р. - Римський папа Сильвестр II) побудував рахункову дошку, на якій замінив певне число жетонів одним жетоном з апісом. У XVI віці абак розповсюдився і в Росії. У російському абаці на один прутик вміщували відразу 10 кісточок, по числу пальців на двох руках. Цей вид абака називався "русские счеты", або як говорили тоді "руські щоты" і користувалися їми аж до XVIII ст.

Логарифмічна лінійка. Іншим пристроєм для рахунку, що набув широке визнання, була логарифмічна лінійка, яка з'явилася в XVII в. Винахід логарифмів, що, за словами Лапласа, “скоротив праці астронома, подвоїло його життя”, послужило основою для винаходу чудового обчислювального інструмента, який понад 355 років був службовцем інженерів усього світу.

Поняття логарифму ввів шотландський математик Непер (Napier) Джон (1550-1617) в трактаті "Канонічний опис чудових логарифмів", що вийшов у 1614 році. Сам термін логарифм народився з поєднання грецьких слів logos (відношення) та arithos (число). Логарифми дуже спрощували ділення та множення. Значення логарифмів Непер записував на окремих паличках, маніпулюючи якими можна було набувати нових і нових значень. Ці палички увійшли в історію як "палички Непера".

У XVI і XVII ст. у Європі з'явилася безліч модифікацій паличок Непера. У 1668 р. вюртембергский єзуїт Каспар Шотт запропонував замінити палички Непера циліндрами, на поверхні яких уздовж утворюючих нанесені ті ж, що і на паличках, числа. Циліндри містилися паралельно один одному в шухлядці, де могли обертатися на минаючих через них осях.

У 1678 р. П'єр Пти, французький математик і фізик, друг Паскаля, наклеїв смужки папера з накресленими “паличками” на картонні стрічки і змусив їх рухатися уздовж осі циліндра. Пристрій одержав назву барабана Пти. У 1727 р. німецький механік Якоб Леопольд видозмінив барабан Пти, додавши йому прямокутну форму.

Прародителькою сучасної логарифмічної лінійки вважається логарифмічна шкала, відома за назвою шкала Гюнтера. Ця шкала являє собою прямолінійний відрізок, на якому відкладалися логарифми чисел тригонометричних величин. Кілька таких шкал наносилося на дерев'яну чи мідну пластинку паралельно. Циркулі-вимірники використовувалися для вирахування відрізків уздовж ліній шкали, що у відповідності з властивостями логарифмів дозволяло знаходити добуток чи частку. Винахідниками перших логарифмічних лінійок вважають Вільяма Отреда і Ричарда Деламейна. Англійські спочатку в 1654 р. Роберт Биссакер, а потім у 1657 р. Сет Патридж — запропонували конструкцію прямокутної логарифмічної лінійки, що складалася з трьох самшитових планок. Мідне оправлення утримувало дві зовнішні планки, між якими вільно сковзала третя — движок лінійки. На обох сторонах лінійки і на движку малися шкали. Довжина такого типу лінійки складала біля 60 см. Винахідником же першої універсальної логарифмічної лінійки, мабуть, варто вважати видатного англійського механіка Дж.Уатта. У 1779 р. він сконструював лінійку, придатну для виконання будь-яких інженерних розрахунків. Дж.Уатт у своїй лінійці розташував ряд шкал дуже розумним чином, їх градуїровка була виконана з великою точністю, що дозволило привернути увагу до неї широких кіл.

Принципово нову шкалу для лінійки запропонував П.М.Пиці. Він на движок лінійки наніс звичайну логарифмічну шкалу, а на нерухому частину лінійки — шкалу повторного логарифма, тобто log log N. У силу логарифмічних співвідношень лінійка Пиці дозволяла при одному переміщенні движка одержати результат зведення в ступінь одного числа в інше.

Ідея важливого елемента лінійки — бігунка була уперше висловлена великим Ньютоном. Логарифмічна лінійка, найбільш схожа на сучасну, була сконструйована в 1850 р. 19-літнім французьким офіцером Амедеєм Маннхеймом. Дозволяючи робити розрахунки з двома-трьома точними цифрами, логарифмічна лінійка довго залишилася одним з основних рахункових приладів інженера.

Музиканти рідко володіють математикою. Але зустрічаються з нею частіше, ніж самі це підозрюють. Дуже часто вони зустрічаються з логарифмами. Фізик Ейхенвальд згадував: "Товарищ мой по гимназии любил играть на рояле, но не любил математику.Он даже говорил с оттенком пренебрежения, что музыка и математика не имеют ничего общего. Представьте же себе, как неприятно был поражен мой товарищ, когда я доказал ему, что, играя по клавишам современного рояля, он играет, собственно говоря, на логарифмах."
І справді, так звані ступені  темперованої гамми (12-звукової) частот звукових коливань являють собою логарифми. Тільки основа цих логарифмів дорівнює 2 (а не 10, як прийнято в інших випадках).

Механічні обчислювальні машин.

Машина Леонарда да Вінчі.

У рукописах видатного італійського живописця, скульптора, вченого, інженера Леонардо да Вінчі (1452-1519), які виявили в 1967 р., є проект механічної тринадцятирозрядної обчислювальної машини, що будувалась на основі десятизубцевих коліс.

Машина Вільгельма Шиккарда. У листах і спогадах сучасників збереглися відомості про машину Вільгельма Шиккарда (1592-1636), виготовлену в 1623 р. Це була 6-розрядна машина, яка могла додавати та віднімати числа. Ця машина являла собою як би палички Непера, згорнені в барабан, мабуть тому вона ще отримала назви “Годинник для обчислювань”. На жаль машина Шиккарда згоріла під час пожежі, а креслення були загублені. Несподівано у 1935 р. креслення були знайдені, але під час Другої Світової війни знову були загублені. Лише в 1956 р. креслення були знайдені знову! У 1960 р. машину Шиккарда було побудовано, щоб переконатися, що вона працює.

Машина Паскаля. Не дивлячись на існування більш ранніх розробок, першою механічною машиною вважається 5-розрядний (потім 8-розрядний) підсумовуючий автомат, побудований в 1642 р. (за іншим даними в 1641 р.) французьким математиком Б.Паскалем (1623-1662). Машина створювалася для полегшення роботи батька, якому доводилося виконувати багато підрахунків, займаючи посаду королівського інтенданта Нормандії. Вперше конструкція Паскаля була виставлена для загального огляду в Люксембурзькому парку в Парижі. Ця машина виконувала додавання та віднімання над шестизначними числами. У "паскаліні" десяткові цифри задавалися поворотами коліщаток з десятьма зубцями, на яких були цифрові ділення, а результат прочитувався у віконцях. Колеса були механічно пов'язані, щоб враховувати перенесення одиниці в наступний розряд. Збереглося сім примірників машини Паскаля, один з них знаходиться в Музеї мистецтв та ремесел у Парижі.

Машина Лейбніца. Перша машина, що виконує всі арифметичні дії і піднесення до степіня, була розроблена в 1673 році німецьким вченим Лейбніцем Г.В. (1646-1716), яку сконстуювала людина за імям Олівер із Парижу. .Це був “покроковий обчислювач”. Машина мала жваву каретку та виконувала множення за принципом шкільного алгоритму "множення в стовпчик". Це був перший арифмометр (від грецького arithmos-число та метр) - настільна механічна рахункова машина для виконання складання, віднімання, множення, ділення, в якій установлення чисел і приведення рахункового механізму в дію здійснюються вручну.

Машина Беббіджа. У 1822 р. Ч.Беббідж (1791-1871), що очолював кафедру математики Кембріджського університету, розробив проект великої машини для обчислення та друку таблиць математичних функцій. Він побудував робочу модель, що заслужила схвалення та фінансову підтримку Лондонського Королівського Товариства. У 1823 р. Беббідж приступив до роботи, розраховуючи закінчити її за три роки. Але роботу вчасно не довелось зробити, тому що в той час ще не було точного обладнання для виготовлення деталей, не було розроблено теорію механізмів. До того ж в ході виготовлення машини Беббідж продовжував її вдосконалювати, знаходив нові рішення розширення її можливостей, постійно вносив зміни в креслення та переробляв вже виготовлені вузли. У 1833 р. Беббіж припинив роботи над великою машиною, витрачавши 17 тис. фунтів стерлінгів урядових коштів та 13 тис. власних і виконавши при цьому лише частину проекту. Але треба відмітити, що працююча частина машини мала значно більшу швидкодію, ніж було обіцяно, і забезпечувала заявлену точність. У процесі створення машини у Беббіджа виникла ідея про створення універсальної обчислювальної машини, названої згодом аналітичною. Її логічна схема була настільки ясною та простою, що він міг описати її словами, не вдаючись до креслень.

Аналітична машина, за задумом Беббіджа, повинна була

  • 1. виконувати прості арифметичні дії;
  • 2. запам'ятовувати початкові та проміжні дані, результати обчислень;
  • 3. запам'ятовувати групу команд, по яких йде розв'язання задачі;
  • 4. виводити результати обчислень;
  • 5. автоматично припиняти обчислення після виконання задачі;
  • 6. повторювати цикл обчислень.

У новій машині передбачався пристрій – "млин", який виконував всі арифметичні дії. Початкові дані, проміжні результати запам'ятовувалися на регістрах, об'єднаних в єдиний пристрій – "склад". Керування переміщенням чисел зі "складу" на "млин" і зворотно, а також керування діями "млина" здійснювалося "конторою" за допомогою перфокарт по типу раніше застосованих для ткацького станка французом Ж.М.Жаккаром. Послідовність карт складала (як ми б тепер назвали) програму. Але в аналітичній машині Беббіджа ще була відсутня сучасна “концепція зберігаємої програми”.

Останні 37 років свого життя Беббідж присвятив удосконаленню своєї аналітичної машини. У 1871 році він створив прототипи процесора та пристрою для друку. Помер він так і не закінчивши свою основну працю. Його машина набагато випереджала технічні можливості свого часу, і довести її до кінця було практично неможливо. Аналітичну машину Ч.Беббіджа вважають прообразом ЕОМ. Примітки: Генрі Беббідж, син Чарльза Беббіджа, у 1906 році при підтримці фірми R.W. Munro побудував процесор батьківської аналітичної машини. Процесор працював бездоганно, але цілком аналітична машина так і не була побудована.

У цих роботах Беббіджу допомагала математик Ада Лавлейс (1815-1852). Вона створила для машини Беббіджа декілька програм, які зберігалися на спеціальних перфорованих картах. Вона довела, що машина здатна не тільки вирішувати задачі числового характеру, але й виконувати операції над словами. “Машина - не Творець. Вона - лише слуга, слухняний наказам добродія” (Ада Лавлейс) Роботи Ади Лавлейс в цій галузі були надруковані в 1843 році. Однак, в той час вважалося непристойним для жінки видавати твори під своїм ім'ям, тому на титульному листі стояли лише її ініціали. Одна з основних наукових праць Ади Лавлейс - переклад статті Менабриа "Елементи аналітичної машини Беббіджа" та примітки до неї. Саме ці декілька сторінок і містили, на думку багатьох фахівців, зразок “першої в історії комп'ютерної програми”. У тексті приміток до статті Менабреа була прихована струнка теорія програмування.

Заслуги Чарльза Беббіджа і його учениці та помічниці Ади Лавлей важко переоцінити.

  • По-перше, це ідея програмного управління процесом обчислень.
  • По-друге, пропозиція використати перфокарти для введення і виведення даних, для управління, а також для обміну та передачі чисел в самій машині.
  • По-третє, винахід системи попереднього перенесення для прискорення розрахунків.
  • По-четверте, застосування способу зміни ходу обчислень, що отримав надалі назву умовного переходу.
  • По-п'яте, введення поняття циклів операцій і робочих осередків.

У матеріалах Беббіджа і коментарях Лавлейс намічені такі поняття, як підпрограма та бібліотека підпрограм, модифікація команд та індексний регістр, які стали вживатися тільки в 50-х роках ХХ століття. Сам термін бібліотека був уперше введений Беббіджем, а терміни робочий осередок і цикл запропонувала Ада Лавлейс.

Примітки: В 1975 году в недрах Министерства обороны США было принято решение о начале разработки универсального языка программирования. Министр прочитал подготовленный секретарями исторический экскурс и без колебаний одобрил и сам проект, и предполагаемое название для будущего языка - "Ада".

Табулятор Холлеріта. Герман Холлеріт (1860-1929), син німецьких емігрантів в США, сконструював в 1884 році табулятор – електричну рахункову машину, що автоматизує процес обробки даних при проведенні перепису населення. Вперше машина Холлеріта була випробувана в 1887 році. А в 1890 році вона перемогла в конкурсі машин для обробки даних перепису населення США. У цій машині використовувалися перфокарти як носії інформації. Заснована Холлерітом в 1887 р. фірма спеціалізувалася по випуску перфораторів. Ця фірма сьогодні носить назву IBM та є найбільшим в світі виробником комп'ютерів.