ЕОМ МІР (абревіатура рос. Машина для Инженерных Расчетов) — серія комп'ютерів для інженерних обчислень, створена в 1965 році Інститутом кібернетики Академії наук України під керівництвом академіка В. М. Глушкова. Випускалася серійно та призначалася для використання в навчальних закладах, невеликих інженерних бюро та наукових відділах. Мала ряд унікальних властивостей, зокрема апаратно реалізовану машинну мову, близьку за можливостями до мов програмування високого рівня, та розвинуте математичне забезпечення.
Система числення десяткова (двійково-десяткова). Числа могли бути представлені як цілі десяткові зі знаком, з десятковим порядком та з рухомою комою, тобто в стандартному форматі більшості алгоритмічних мов. Дії могли виконуватися з числами довільної розрядності та довільного діапазону, обмеженого лише обсягом пам'яті в 4096 символів. Час на виконання операції додавання — 50 мкс. Середня швидкодія — близько 1–2 тисяч оп/с. Машина мала в комплекті електрифіковану друкарську машинку (термінал) для вводу та виводу інформації зі швидкістю 7 знаків на секунду.
Архітектурно комп'ютер є апаратно-мікропрограмно-програмним інтерпретатором мови програмування АЛМИР-65.[1] Мікропрограмами кодувалися більшість арифметичних дій, обчислення елементарних функцій, виконувалася попередня трансляція та інтерпретація вхідної програми. Мікрокоманди машини «МІР-1» 120-розрядні та записані на змінних мікропрограмних матрицях. Це дозволяло довільним чином змінювати характер застосування машини, склад арифметичних та логічних операцій, які вона може виконувати.
Цей розділ потребує доповнення. |
До складу стандартного математичного забезпечення входили програми числових методів, лінійного програмування, розрахунку мережевих графіків, програми розв'язання систем звичайних диференціальних рівнянь, систем лінійних рівнянь до 24 порядку включно, відшукування коренів та власних значень, програми інтерполяції і апроксимації, декілька програм редагування, які дозволяли виводити графіки, таблиці та тексти.
Основною мовою програмування комп'ютера «МІР-1» була мова АЛМИР-65[ru].[1] Її алфавіт складали великі кириличні та латинські літери, знаки операцій (+, -, ×, /, ∫ (інтеграл), =, <, >, √ (квадратний корінь), сума, добуток), знаки виділення цілої й дробової частини числа, цифри, покажчик порядку числа, розділові знаки (дужки, крапка з комою, коми й т. д.). При введенні інформації в машину можна було користуватися стандартними позначеннями елементарних функцій (тригонометричних, зворотних тригонометричних, гіперболічних, логарифму та ін.).
Ключові слова російською мовою «РАЗРЯДНОСТЬ», «ВЫЧИСЛИТЬ», «ЗАМЕНИТЬ», «ЕСЛИ», «ТО», «ИНАЧЕ», «ГРАФИК», «МАССИВ», «ЗАГОЛОВОК ТАБЛИЦЫ» та інші використовувалися для опису обчислювального алгоритму й визначення форми вихідної інформації: вивести результат в рядок, у форматі багатопозиційної таблиці, графіка й таке інше. Десяткові числа вводилися в машину в довільному написанні, наприклад, 374,3; 5×10-7; 3 та ін. Розрядність, з якою здійснюватимуться обчислення, вказувалася при формулюванні задачі. Передбачалась можливість роботи з цілими числами й масивами.
Існувала можливість редагування та налагодження раніше уведеної й працюючої програми. Режим «ЗАМЕНЯТЬ» дозволяв одну розрядність обчислень змінити на іншу, один виділений оператор — іншим, додавати оператори в програму, змінювати при деяких умовах опису основної програми тощо.
Вхідне завдання для машини, сформульоване на вхідній мові програмування, послідовно вводилося в запам'ятовувальний пристрій. Відбувалася інтерпретація операторів, директив та виразів на внутрішню мову машини з попереднім синтаксичним контролем, резервування пам'яті для структур даних та іншим.
Арифметичні операції виконувалися у відповідному блоці, який мав стекову організацію. Така структура дозволяла особливо ефективно вирішувати проблеми, пов'язані з керуванням пам'яттю для збереження проміжних результатів обчислень, організації викликів підпрограм, рекурсивних обчислень тощо.
Такий же стековий принцип застосовувався в машині МІР для інтерпретації арифметичних виразів.
Швидкодія машини «МІР-2» становила приблизно 12 000 оп/с. Ємність оперативної пам'яті — 8 000 символів. Постійний запам'ятовувач мав ємність близько 1,6 млн двійкових розрядів (біт), що є достатнім для розміщення кількох десятків тисяч мікрокоманд. Як зовнішні пристрої використовувались ввід з перфострічки, вивід на перфострічку, електрифікована друкарська машинка, екранний пульт зі світловим пером.
Вхідною мовою в машині «МІР-2» слугувала спеціальна мова високого рівня АНАЛІТИК, яка розвивала концепції вбудованої мови програмування «МІР-1», і додатково дозволяла безпосередньо формулювати завдання з аналітичних перетвореннях формул, дозволяла отримувати аналітичні вирази похідних та інтегралів.
Цей розділ не містить посилань на джерела. |
Структурна інтерпретація мови АНАЛІТИК дозволила реалізувати ефективну роботу з дійсними числами необмеженої розрядності та точних операції над дробовими раціональними числами і алгебраїчними виразами, які розглядалися з точністю до основних співвідношень алгебри та аналізу (навіть співвідношення для трансцендентних функцій). Структурна реалізація аналітичних перетворень забезпечила настільки істотне підвищення продуктивності обчислень, що для цілого ряду[якого?] конкретних аналітичних задач час їхнього розв'язку на ЕОМ «МІР-2» був у сотні разів[джерело?] меншим, ніж на машинах традиційної архітектури.[яких?]
Машина «МІР-2» мала інтерфейс зі світловим пером, який дозволяв, зокрема, вирішувати проблеми візуального проектування, коригування результатів проектування завдань та результатів розробником. Екранний пульт також надавав можливість динамічного діалогового режиму, вкрай важливого для організації ефективного процесу відлагодження складних алгоритмів. Екранний пульт мав буферну пам'ять в 4 тисячі символів. Це дозволяло, наприклад, вводити інформацію з перфострічок в цю буферну пам'ять, проглядати її зміст на екрані, редагувати та виправляти її. Система надавала можливість проводити таке редагування в фоновому режимі, одночасно з виконанням інших завдань.
Пристроєм індикації слугував монітор типу ЛК-472Б на 1024 слова[2].