Логарифмічна лінійка
На відміну від абаку, на логарифмічній лінійці представляється не цифровий запис числа, а деякий його фізичний аналог. Такі аналоги є безперервними фізичними величинами (аналоговими значеннями), тому представлення завжди не точне, а наближене, оскільки неможливо точно виставити рушій лінійки на цифру, та і самі шкали мають деяку похибку. Таким чином, логарифмічна лінійка є простим прикладом аналогової обчислювальної машини.
Винахід Непера не відкрив нову епоху, а лише закрив стару – на зміну «пальцьовому двигуну» вже йшли перші механічні пристрої на основі зубчастих коліс. Ці пристрої на основі шестерень і зубчатиих коліс були здатні виконувати вже не дві, а чотири арифметичні дії і називалися «арифмометрами».
Цифрові (дискретні) та аналогові обчислення – це дві постійно співіснуючі та конкуруючі гілки математики. Математика стародавнього світу була переважно пов’язана з аналоговими (геометричними) побудовами. Строго кажучи, циркуль та лінійка – це теж якнайдавніша аналогова обчислювальна машина.
З винаходом символічних алгоритмів арифметики роль аналогових обчислень стала слабшати, оскільки цифрові методи здатні забезпечити вищу точність обчислень. Проте не завжди і не скрізь потрібна астрономічна точність, тому, паралельно з цифровою, розвивалася і аналогова обчислювальна техніка. У XIX та XX століттях для аналогових обчислень використовувалися різноманітні фізичні процеси: механічні, гідравлічні, а після винаходу радіоламп та транзисторів – електронні. Так, у 1930 р. професор Массачусетського технологічного інституту (МТІ) Ванневар Буш (1890-1974) побудував “диференціальний аналізатор” – велику механічну аналогову машину для розв’язку диференціальних рівнянь. Обов’язки оператора на цій машині виконував молодий аспірант Клод Шеннон – майбутній автор теорії інформації. З тих пір МТІ став найбільшим центром досліджень в області обчислювальної техніки та інформатики.
Ще у 1960-х роках популярність аналогових електронних обчислювальних машин була порівнянна з цифровими, їх вивчення було обов’язковим на всіх технічних факультетах. Проте після винаходу мікропроцесорів (1970-і роки), коли цифрові ЕОМ різко зменшилися за габаритами, подешевшали і стали більш потужними, аналогові ЕОМ сильно поступились у конкурентній боротьбі з ними. Стало простіше переводити аналоговий сигнал у цифрову форму, виконувати необхідні обчислення, а на виході перетворювати результат обчислень у фізичну (аналогову) величину. Таким шляхом, наприклад, пішли звукозапис та телебачення.
Ми так детально зупинилися на аналогових обчислювальних машинах для того, щоб до цієї теми більше не повертатися. Весь подальший матеріал буде присвячений проблемам інформатики та цифрових машин – їх минулому, сьогоденню та майбутньому.
Перший у світі ескізний малюнок 13-розрядного десяткового пристрою додавання на основі коліс з десятьма зубцями належить Леонардо да Вінчі. Він був описаний в одному з його щоденників.
На початку XVII сторіччя, коли математика стала відігравати ключову роль в науці, все гостріше відчувалася необхідність у винаході рахункової машини. До цього часу відноситься створення у 1623 роціВільгельмом Шикардом рахуючого годинника – першого механічного калькулятора, який міг виконувати чотири арифметичні дії. Рахуючим годинником пристрій був названий через те, що як і у справжньому годиннику робота механізму була заснована на використанні зірочок та шестерінок. Практичне застосування цей винахід знайшов в руках друга Шикарда, філософа та астронома Іоганна Кеплера.
Але все ж таки першим справжним механічним рахунковим пристроєм, який існував не на папері, а працював, була побудована у 1642 році молодим французьким математиком і фізиком Блезом Паскалем у віці 19 років (1623-1662) рахункова машина (арифмометр), яка була названа Паскаліной і виконувала операції додавання та віднімання.
Головний недолік абака при виконанні розрахунків – необхідність ручного перенесення одиниці переносу у старший розряд в разі переповнення попереднього. Після довгих роздумів Паскаль винайшов 10-ти зубчасте колесо з нанесеними цифрами від 0 до 9. Поворот колеса на один зубець відповідає збільшенню значення розряду на одиницю, а при повному оберті колеса спеціальний, досить складний, механізм передачі десятків повертає наступне колесо рівно на один зубець. Кількість коліс визначала кількість розрядів – так, два колеса дозволяли рахувати до 99, три – вже до 999, а п’ять коліс робили машину такою, що «знає» навіть такі великі числа як 99999. Кажучи сучасною мовою, Паскаль винайшов богаторозрядний десятковий механічний лічильник обертів, який і дотепер використовується у спідометрах автомобілів, електролічильниках і т.і. Більш того, лічильник Паскаля з деякими вдосконаленнями став центральним пристроєм – суматором усіх подальших механічних та електромеханічних обчислювальних машин аж до середини ХХ століття, поки не стала застосовуватись двійкова система числення.
У 1670 – 1680 роках німецький математик Готфрід Лейбніц (1646-1716) сконструював рахункову машину, яка виконувала всі чотири арифметичні дії. Ввівши один раз перший множник, можна багато разів вводити його із зсувом у лічильнику, проводячи операцію множення. Операція ділення виконувалася аналогічно, шляхом повторного віднімання з діленого, для чого рукоятку приладу слід крутити в інший бік. Арифметична машина Лейбніца удосконалювалася у деталях, але не в принципі, впродовж XVIII, а потім і XIX століть, вона отримала назву арифмометра і стала виготовлятися багатьма фірмами.
Приблизно у 1820 році Charles Xavier Thomas створив перший вдалий механічний, який серійно випускався, калькулятор – Арифмометр Томаса, який міг додавати, віднімати, множити та ділити. В основному, він був заснований на роботі Лейбніца. Протягом наступних двохсот років було знайдено та побудовано ще декілька подібних рахункових пристроїв, які через низку недоліків не набули широкого розповсюдження.
Лише у 1878 році російський учений П. Чебишев сконструював рахункову машину, яка виконувала додавання та віднімання багатозначних чисел. Найширшого розповсюдження у той час набуварифмометр, який був сконструйований петербурзьким інженером Однером у 1874 році. Головною деталлю пристрою було колесо Однера із змінною кількістю зубців. Конструкція приладу виявилася вельми вдалою, оскільки дозволяла досить швидко виконувати всі чотири арифметичні дії.
Після еміграції Однера до Швеції у 1917 р. його арифмометри досконалішої конструкції випускалися на заводі ім. Дзержінського під маркою «Фелікс». У 1969 р. їх було вироблено 300 000 шт.
Ці рахункові пристрої застосовувалися декілька десятиліть і були основним технічним засобом, що полегшував працю людей, які були пов’язані з обробкою великих об’ємів числової інформації. На них виконували навіть дуже складні розрахунки, наприклад, розрахунки балістичних таблиць для артилерійських стрільб. Існувала і спеціальна професія – лічильник – людина, що працює з арифмометром, швидко і точно виконуючи певну послідовність інструкцій (згодом їх стали називати програмою). Але багато розрахунків виконувалися дуже повільно – навіть десятки лічильників повинні були працювати по декілька тижнів і місяців. Причина проста – при таких розрахунках вибір виконуваних дій та запис результатів вироблялися людиною, а швидкість її роботи була обмежена.
Так, одному із авторів цього посібника (Авраменко В.С.) «пощастило» виконувати лабораторні та курсові роботи саме на арифмометрах «Фелікс».
З усіх винахідників минулих століть, що зробили внесок у розвиток обчислювальної техніки, найближче до створення комп’ютера у сучасному уявленні підійшов англійський математик Чарльз Беббідж (1791-1871). Чарльз Беббідж увійшов до історії як винахідник першої обчислювальної машини – прообразу сучасних комп’ютерів. У 1812 р. він почав працювати над так званою "різницевою" машиною. Робота моделі ґрунтувалася на принципі, відомому у математиці як "метод кінцевих різниць". Даний метод дозволяє обчислювати значення многочленів, використовуючи лише операцію додавання і не виконувати множення та ділення,.
Попередні обчислювальні машини Паскаля та Лейбніца виконували тільки арифметичні дії. Беббідж же прагнув сконструювати машину, яка б виконувала певну програму, проводила розрахунок числового значення заданої функції. Як основний елемент різницевої машини Беббідж використовував зубчасте колесо для запам’ятовування одного розряду десяткового числа. В результаті він зміг оперувати 18-розрядними числами. До 1822 року він побудував невелику модель, яка діяла, і розрахував на ній таблицю квадратів.
Але все таки репутація Беббіджа як першовідкривача в області автоматичних обчислень завойована в основному завдяки іншому, досконалішому пристрою. Удосконалюючи різницеву машину та використовуючи ідею Жаккара, Беббідж приступив у 1832 році до розробки чудового пристрою – перший у світі комп'ютер загального призначення, який він назвав Аналітичною машиною. Вона повинна була відрізнятися від різницевої машини більшою швидкістю і простішою конструкцією, та не просто вирішувати математичні завдання одного певного типу, а виконувати різноманітні обчислювальні операції відповідно до інструкцій, що задаються оператором.
Аналітична машина була задумана як суто механічний апарат з трьома основними блоками. У конструкцію аналітичної машини входив також пристрій для введення початкових даних та друку отриманих результатів. Передбачалося, що машина діятиме за програмою, яка задавала б послідовність виконання операцій і передачі чисел з пам’яті в арифметичний блок і назад. Програми, у свою чергу, повинні були кодуватися і переноситься на перфокарти.
Багато з того, що відоме про цю машину, дійшло до нас завдяки науковим працям обдарованого математика-любителяАвгусти Ади Байрон (графиня Лавлейс, Lovelace; уроджена Байрон). Дочка знаменитого поета лорда Байрона, який після її народження назавжди покинув Британію, Ада ніколи не знала свого батька. Освіту вона здобула, займаючись з приватними викладачами, а потім самостійно, у чому їй допомагав Август Де Морган, професор математики Лондонського університету. У 1835 р. Ада вийшла заміж за барона Уїльяма Кінга, а після отримання ним титулу графа у 1838 р., Августа Ада Байрон стала графинею Лавлейс.
У 1840 році Беббідж їздив на запрошення італійських математиків в Турин, де читав лекції про свою машину. Луїджі Менабреа, викладач туринської артилерійської академії, створив і опублікував конспект лекцій французькою мовою.
У 1843 р. Ада Лавлейс переклала англійську мову та анотувала статтю про Аналітичну машину, яка була написана по лекціях Беббіджа Федеріко Менабреа «Елементи аналітичної машини Чарльза Беббіджа», забезпечивши її власними докладними коментарями про потенційні можливості та інструкціями з програмування до неї.
Аду Лавлейс, одного з небагатьох сучасників Беббіджа, хто зумів оцінити Аналітичну машину, по праву вважають першим у світі програмістом. Вона теоретично розробила деякі прийоми управління послідовністю обчислень, які використовуються у програмуванні і до цього дня. Наприклад, вона описала команди, що забезпечують умовну передачу управління та повтору певної послідовності кроків доти, доки не виконувалась задана умова. Тепер така конструкція називається циклом. Вона також написала для цієї машини програму обчислення чисел Бернуллі. Ця програма містила 25 кроків, була складена дуже витончено, мінімізуючи пам’ять та перфокарти. Для того щоб перевірити, наскільки правильно була написана ця програма (відлагодити її на машині автор не мала можливості), у 1978 році в інституті прикладної математики (Москва) був поставлений експеримент. Програму переклали мовою Фортран, для чого було потрібно 85 операторів, та протестували на комп’ютері. Виявилось, що у програмі Ади Лавлейс міститься лише одна алгоритмічна помилка. Після її виправлення програма запрацювала правильно.
Уява Беббіджа малювала Аналітичну машину не як пристрій, який призначений для вирішення якогось одного конкретного обчислювального завдання, а як універсальний засіб розв’язку широкого класу подібних завдань. По суті він задумав та спроектував універсальний програмований комп’ютер, втіливши у ньому багато рис, які притаманні сучасним машинам. Хоча Беббіджу так і не вдалося здійснити свої задуми, за його ретельно розробленим проектом можна бачити, що Аналітична машина була задумана як чисто механічний апарат з трьома основними блоками.
Перший блок – пристрій для зберігання чисел на регістрах із зубчастих коліс і система, яка передає ці числа від одного вузла до іншого. У сучасній термінології – це пам’ять, тобто свого роду аналог Оперативного Запам’ятовуючого Пристрою (ОЗП) сучасного комп’ютера. Другий блок – пристрій, який дозволяв виконувати арифметичні операції. Беббідж назвав його "млином". Третій блок призначався для управління послідовністю дій машини. У конструкцію аналітичної машини входив також пристрій для введення початкових даних та друку отриманих результатів.
Передбачалося, що машина діятиме за програмою, яка задавала б послідовність виконання операцій та передачі чисел з пам’яті у млин та навпаки. Програми, у свою чергу, повинні були кодуватися та переноситися на перфокарти, які оператор міг би міняти на свій розсуд. Для створення комп'ютера в сучасному розумінні залишалося лише розробити схему з програмою, яка б зберігалася в ОЗП, що було зроблено 100 років потому Цузе (Німеччина), а потім Айкеном, Еккертом, Мочлі і фон Нейманом (США).
Сам Чарльз Беббідж у 1864 році написав: «Пройде, ймовірно, півстоліття, перш ніж люди переконаються, що без тих цінностей, які я залишаю після себе, не можна буде обійтися». У своєму припущенні він помилився на 30 років. Тільки через 80 років після цього висловлювання була побудована машина МАРК-1 (1944 р.), яку назвали «здійсненою мрією Беббіджа». Архітектура МАРК-1 була дуже схожа з архітектурою Аналітичної машини. Говард Айкен насправді серйозно вивчав публікації Беббіджа і Ади Лавлейс перед створенням своєї машини, причому його машина ідеологічно незначно пішла вперед порівняно з недобудованою Аналітичною машиною. Продуктивність МАРК-1 виявилася всього в десять разів вище, ніж розрахункова швидкість роботи Аналітичної машини.
Беббіджу так і не вдалося повністью втілити свій проект у життя через недостатній розвиток технології, а також тому, що в 1837 році математик і астроном Джордж Байдел Ейрі заявив Британському Міністерству Фінансів, що Аналітична машина «марна», і проект Беббіджа повинен бути зупинений. Незабаром після цього уряд заморозив проект. Світ забув про цю ідею до 1938 року, вона була вбита скептицизмом і забута. Ось, що писав Беббідж в 1851 році: «Все розробки, які пов'язані з Аналітичної машиною, виконані за мій рахунок. Я провів цілий ряд експериментів і дійшов до межі, за якою моїх можливостей не вистачає. У зв'язку з цим я змушений відмовитися від подальшої роботи».
Хоча проект Беббіджа не був повністю реалізований, проте, його роботи мали важливе значення. Багато подальших винахідників скористалися ідеями Беббіджа, що були закладені в основу сконструйованих ним пристроїв, тоді як Джордж Ейрі запам'ятається, як короткозорий вчений, що не бачить далі свого носа.
Лише через 19 років після смерті Беббіджа один з принципів, що був покладений в основі ідеї Аналітичної машини, – використання перфокарт – знайшов втілення у діючому пристрої. Необхідність автоматизувати обчислення для перепису населення в США підштовхнула американського винахідника Генріха (Германа) Холлеріта (1860-1929) до створення у 1890 році пристрою, названого електромеханічною рахунковою машиною – табулятором, в якому інформація, що наносилась на перфокарти, розшифровувалася електромеханічним способом.
Цей пристрій дозволив обробити дані переписи населення США у 1890 р. всього за 3 роки, замість восьми років, що витрачалися раніше. На карті табулятора Холлеріта було 12 рядків, в кожному з яких можна було пробити по 20 отворів (пізніше – 80), які відповідали таким даним, як вік, стать, кількість дітей, місце народження, сімейний стан та інші відомості, що були включені в опитувальник перепису населення. Табулятор отримав таке широке визнання, що для задоволення замовлень Холлеріту, довелося заснувати у 1924 році власну фірму для серійного випуску табуляторів. Незабаром фірма перетворилася на знамениту корпораціюІБМ (IBM, International Business Machines), яка зробила перфокарти стандартним засобом для програмування комп’ютерів. Отже, саме Холлерита можна вважати в деякому роді «хрещеним батьком» наших сучасних ЕОМ і персоналок, що з'явилися на світ саме завдяки цій компанії.
Табулятори здійснили дуже великий вплив на подальший розвиток обчислювальної техніки. Перші покоління електронних комп’ютерів успадкували конструкцію їх пристроїв введення-виведення, перфокарта Холлеріта довгий час, до появи дисплеїв та пізніше, залишалася основним носієм інформації і символом інформатики у цілому. На даний час ширина рядка на алфавітно-цифровому дисплеї все ще дорівнює 80 символам, якраз за розміром перфокарти. Формат багатьох мов програмування, наприклад, Фортрану або Коболу, так і залишився орієнтованим на перфокарти.
Величезний вплив на розвиток обчислювальної техніки здійснили теоретичні розробки таких математиків як англієць А. Тьюринг та американець Е. Пост, що працював незалежно від нього. "Машина Тьюрінга (Поста)" – прообраз програмованого комп’ютера. Ці вчені показали принципову можливість розв’язання за допомогою автоматів будь-якої проблеми за умови, якщо її можна представити у вигляді алгоритму, який орієнтований на виконанні машиною низки операцій.
З моменту виникнення ідеї Беббіджа про створення аналітичної машини до її реального втілення в життя пройшло більше як півтора сторіччя. Чому ж таким великим виявився розрив у часі між народженням ідеї та її технічним втіленням? Це обумовлено тим, що при створенні будь-якого пристрою, у тому числі і комп’ютера, дуже важливим чинником є вибір елементної бази, тобто тих деталей, з яких збирається вся система.
З іншого боку, навряд чи хтось вважатиме можливим оскаржити той факт, що історія виникнення та вдосконалення комп’ютерних технологій – це історія розвитку цивілізації нашої планети. Найстрашніша ганьба людства – Друга світова війна підштовхнула творчу думку десятків та сотень інженерів та математиків, основною метою яких стало всіма силами добитися максимальної технологічної переваги над супротивником. Цілком природно і те, що вчені наполегливо вирішували поставлені політичною обстановкою того часу завдання по обидві сторони лінії фронту. Саме тому відсутність як власно Internet, так і в бібліотечних архівах інформації на російській та англійській мовах про високі технології фашистської Німеччини є обставиною невеликої кількості відомостей, які були здобуті науковими комісіями, та оцінки їх союзниками тільки після закінчення війни.
- Міністерство освіти і науки україни
- 9.12. Огляд WinDev 154
- 10. Історія операційних систем 169
- Список літератури 187
- Передмова
- 1. Передвісники комп’ютерної ери
- 1.1. Комп’ютерна програма–що це?
- 1.2. Доелектронна історія обчислювальної техніки
- Логарифмічна лінійка
- 1.3. Можливості двійкового коду
- 1.4. Розвиток двійкової системи
- 1.5. Винахід перших комп’ютерів
- Перша в історії працююча програмнокерована універсальна обчислювальна машина z-3 (1941 р.)
- 1.6. Гарвардська архітектура
- 1.7. Архітектура фон Неймана
- 1.8. Створення зрозумілих людині кодів
- 1.9. Крок на благо програмування
- 1.10. Можливості програмного управління
- 2. Нові мови програмування
- 2.1. Поневіряння пакетної обробки
- 2.2. Універсальна мова програмування
- 2.3. Усунення неоднозначності
- 2.4. Заклик до дотримання математичної строгості
- 2.5. Пошук та усунення помилок
- 2.6. Нелегке мистецтво програмування
- 2.7. Обчислювальна техніка та програмування в срср
- 3. Розквіт та хаос програмного забезпечення
- 3.1. Місце народження хакерів
- 3.2. Два чародії програмування
- 3.3. Перші промислові стандарти
- 3.4. Дружній інтерфейс
- 3.5. Прообраз сучасного «ноутбука»
- 4. Болісний шлях розвитку програмування
- 4.1. Плануюче обчислення
- 4.2. Внесок Великої Британії
- 4.3. Програмування англійською мовою
- 5. Три комерційні гіганти
- 5.1. Перша комерційна мова програмування
- 5.2. Обчислювальна техніка приходить у бізнес
- 5.3. Народження codasyl
- 5.4. Конференція в Цюріху
- 5.5. На шляху до сумісності комп’ютерів
- 5.6. Розбіжності Нового Світу
- 6. Десятиліття динамічного розвитку
- 6.1. Перші кроки непроцедурної мови
- 6.3. Алфавітне хрещення
- 6.4. Успіх та суперечки
- 6.5. Інженерний підхід
- 6.6. Структурний підхід
- 6.7. Поява мови “Ада”
- 7. Програмування приходить у наші домівки
- 7.1. Розквіт Бейсіка
- 7.2. Поява мови Модула-2
- 7.3. Музикальний француз
- 7.4.Довгожитель Lisp – інструмент функціонального програмування
- 7.5. Prolog – нездійснена мрія еом V покоління
- 7.6. Революція на ім’я Java
- 8. Історія і шляхи розвитку супер-еом
- 8.1. Усе починалося з менфреймов
- 8.2. Напрями розвитку обчислювальної техніки
- 8.3. Розвиток елементної бази. Закон Мура
- 8.4. Вдосконалення архітектури
- Звичайна послідовн обробка
- Конвеєрна обробка
- 9. Сучасний стан та перспективи розвитку програмування
- 9.1. Криза у програмуванні
- 9.2. Методологія процедурно-орієнтованогопрограмування
- 9.3. Методологія об’єктно-орієнтованогопрограмування
- 9.4. Методологія об’єктно-орієнтованогоаналізу та проектування
- 9.5. Технології програмування
- 9.6. Case –засоби
- 9.7. Методологія rad
- 9.11.1. Знайомство с LightSwitch
- 9.11.2. Архитектура LightSwitch
- 9.11.3. Створення проекту в Microsoft Visual Studio LightSwitch
- 9.11.4. Дванадцять основних переваг LightSwitch
- 9.12. Огляд WinDev
- 9.12.1. ПризначенняWinDev
- 9.12.2. Деякі характеристики wLanguage
- 9.13. Технологія model checking
- 9.14. NeoBook – программирование для непрограммистов
- 9.14.1. Введення для секретарок
- 9.14.3. Можливості та області застосування
- 9.15. Файлові системи найближчого майбутнього
- 9.15.1. Зетта-повінь настає
- 9.15.2. Файлова система zfs
- 9.15.3. Файлова системаBtrfs
- 9.15.4. Файлова системаHammer
- 10. Історія операційних систем
- 10.1. Послідовна обробка даних
- 10.2. Прості пакетні системи
- 10.3. Багатозадачні пакетні системи
- 10.4. Системи з режимом розподілу часу
- 10.5. Основні досягнення
- 10.6. Сучасні системи unix
- 10.7. Os/2. Битва двох гігантів
- Список літератури