Читайте также:
|
|
У 1949 р. Джон Моучлі спільно з Еккертом, покинувши Пенсильванський університет, працювали над створенням двох нових комп’ютерів: “ Бінак” ( BINAC) та “ Юніак-1” ( UNIAC, Universal Automatic Computer). Моучлі доручив своїм програмістам створити програму, яка б дозволяла машині сприймати рівняння алгебри в традиційній формі. Так, рівняння вигляду А = В + С вводилося у формі 00 S0 03 S1 07 S2, де змінні А, В, С позначалися S0, S1, S2, а операції присвоєння та додавання – 03 і 07 (комбінація 00 визначає початковий номер рядка програми).
Система кодування, що була запропонована Моучлі, з’явилася справжнім відкриттям для програміста з його компанії – енергійної персони на ім’я Грейс Мюррей Хопер (1906-1992).
Трапилося так, що через сто років після Ади Лавлейс другим в історії програмістом знов стала жінка. Здобувши математичну освіту та ступінь доктора математики, у роки другої світової війни Хопер була направлена на роботу у Гарвардський університет, до відділу, що займався обчисленнями для потреб артилерії на “Марк-1”. Слово “ програміст” ще не дійшло до них з Англії, тому у цьому відділі фахівців – математиків називали кодувальниками (така назва зберіглася у США і до цього дня, так називають програмістів низької кваліфікації, що займаються кодуванням (написанням програм) деяких завдань за готовими алгоритмами).
Хопер та її колеги Роберт Кемпбел та Річард Блок вперше у світі почали створювати підпрограми. Під цим розумілися послідовності команд, які багаторазово використовувались та побудовані таким чином, щоб з них можна було компонувати крупніші сегменти або блоки всередині програм. Хоча само слово “ підпрограма” було вигадане дещо пізніше, можна вважати, що один з головних прийомів сучасного програмування вперше застосовували ще у 1944 р.
Через програмну несумісность у кожній ЕОМ були свої унікальні бібліотеки. Наприклад, для М-20, що випускалась в СРСР, Михайло Романович Шура-Бура (ІПМ – Інститут прикладної математики) з колегами розробили чудову на ті часи (60-і роки) інтерпретуючу систему ІС-2 з багатющою колекцією стандартних програм, що охоплювала всі області обчислювальної математики. Створення бібліотек різко підвищило продуктивність праці програмістів, оскільки з’явилася можливість спертися на працю попередників і не програмувати кожне нове завдання з нуля.
Наступного року Хопер та її колеги ввели інше – таке ж фундаментальне поняття діяльності програміста. Одного разу спекотним літнім днем таємнича несправність змусила зупинитися “Марк-1”. Після ретельної перевірки програмісти встановили, що контакти одного з реле були заблоковані рештками метелика. Цю подію зафіксували у журналі. Супровідний напис свідчив: “Перший достовірний випадок виявлення комахи (bug)”. Пізніше Хопер згадувала: “Коли до нас зайшов офіцер, щоб дізнатися, чим ми займаємося, ми відповіли, що шукаємо несправність, очищаємо комп’ютер від комахи (debugging)”. Термін “ дебаггін” (відлагодження) з тих пір прижився і почав використовуватися серед програмістів.
А ось для іншого комп’ютерного терміну “ глюк ” (glitch), який, як правило, використовується як синонім терміну “збій”, існує низка припущень. Деякі припускають, що цей термін походить від єврейського слова “glitshen”, яке означає “ковзати”. Існує й інша думка з цього приводу. В середині 60-х років програма освоєння космосу йшла повним ходом. Вранці в день запуску ракети з астронавтами одна з компаній, яка займалася виробництвом бортових комп’ютерів та систем для управління польотом, розмістила на сторінках найпопулярніших газет рекламні матеріали, в яких йшлося про те, що комп’ютер благополучно керує польотом астронавтів по ходу їх місії. Того ж дня комп’ютер дав збій, що призвело, практично, до повної втрати контролю над апаратом. Наступного ранку одна з газет ознаменувала цю подію таким чином – “найгучніша невдача в історії компанії”, що англійською мовою звучало як “ Greatest Lemon in the Company’s Histоry ”
У 1949 р. Хопер перейшла в комп’ютерну фірму Еккерта та Моучлі, де взяла участь у створенні машини “Юніак-1”. За час своєї роботи вона невплинно відстоювала думку, що для програмування слід використовувати мови високого рівня, тобто мови, у певному значенні якомога ближчі до природної мови.
Запропонована Моучлі система кодування зовсім не була панацеєю. Програму, що була записана в системі кодування Моучлі, треба було переглядати та виконувати рядок за рядком за допомогою спеціальної програми-перекладача, яка звалась інтерпретатором, і кожна окрема операція перед її виконанням піддавалася повному посимвольному розбору, навіть якщо вона до цього вже не раз виконувалася.
У жовтні 1951 р. Грейс Хоппер отримала завдання створити набір стандартних математичних підпрограм. До цього при переписуванні фрагментів програм та підпрограм з однієї програми в іншу припускалися помилки, і в програмі доводилося міняти всі числа, що задавали адреси конкретного місцерозташування програми у пам’яті машини. Очевидно, для подібної роботи був потрібний якийсь пристрій, єдиним призначенням якого було б акуратне виконання операцій копіювання та об’єднання.
Дата добавления: 2015-11-14; просмотров: 55 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Архітектура фон Неймана | | | Можливості програмного управління |