Архітектура фон Неймана: відмінності між версіями

[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Немає опису редагування
м відкат
Рядок 2:
 
'''Архітекту́ра фон Неймана ''' [[архітектура обчислювальної машини|архітектура]] [[ЕОМ|електронних обчислювальних машин]], основною відмінністю якої від інших подібних архітектур є спільне зберігання даних та [[машинна команда|машинних команд]] в [[комірка пам'яті|комірках]] однієї й тієї ж [[запам'ятовуючий пристрій|пам'яті]], що унеможливлює їх розрізнення за способом представлення або кодування. Названа так на честь відомого математика та теоретика обчислювальної техніки [[Джон фон Нейман|Джона фон Неймана]] (John von Neumann), та по сьогодні залишається домінуючою схемою організації [[ЕОМ загального призначення]].
== Передумови створення та першоджерела ==
Авторство концепції, покладеної в основу фон-нейманівської архітектури, насправді належить колективу авторів (фон Нейман, Дж. Екерт, Дж. Маклі), які працювали над створенням однієї з перших ЕОМ загального призначення з можливістю перепрограмування — [[ENIAC]] (1943, зокрема фон Нейман був консультантом в цьому проекті), а потім вже глибше реалізована в машині [[EDVAC]] (1952). Самі принципи були сформульовані в декількох публікаціях, серед яких слід виділити таку як Burks, A. W., Goldstine, H. H., and von Neumann, J. ''Preliminary discussion of the logical design of an electronic computing instrument'', 1945 («Попередня дискусія про логічний устрій електронного обчислювального інструмента») та Von Neumann, J. ''First draft of a report on the EDVAC'', 1946 («Перший варіант доповіді про EDVAC»).
 
Власне, головкоюголовною проблемою, яка поставала перед «піонерами» обчислювальної техніки була надзвичайна складність введення алгоритму обчислень в ЕОМ, для чого доводилось мати справу з численними перемикачами, тумблерами, роз'ємами та іншими комутуючими елементами. Це ускладнювало процес, призводило до величезної кількості помилок та аж ніяк не додавало цим машинам універсальності.
 
Фон Нейман в своїй «Попередній дискусії» запропонував натомість зберігати алгоритм разом з даними для обчислень в пам'яті обчислювальної машини, що б давало можливість по-перше оперативно перепрограмувати систему, а по-друге поводитись з командами як з даними, проводити над ними такі ж обчислювальні операції, тобто фактично відкривало можливість для написання програм, які самі себе модифікують (і це було зовсім не екзотикою на той час, а практичною необхідністю). Таким чином пропонувалась організація обчислень, яка дійсно робила обчислювальну машину універсальним інструментом.