Мала́ електро́нна обчи́слювальна маши́на[1][2], (МЕОМ) (найчастіше навіть в україномовних джерелах та/або в розповідях україномовних ветеранів позначається як МЕСМ, від рос.МЭСМ — Малая электронная счётная машина) — перша в СРСР і одна з перших Європі[3][a]електронна цифрова обчислювальна машина (ЕЦОМ). Її часто називають першим електронним комп'ютером створеним у континентальній Європі.[b]. Створена в Інституті електротехніки АН УРСР[c] під керівництвом академіка Сергія Лебедєва, який на той час був директором цього інституту. Початок розробки — 1948, введена в експлуатацію у 1950 році.
Розробка була розпочата з наміром змоделювати (змакетувати) обчислювальну машину БЭСМ і тому спочатку перша «М» розшифровувалася як «модель». Після перших успіхів та з урахуванням гостроти потреби (як в УРСР, так і в СРСР в цілому) в обчислювальних потужностях вирішили макет перетворити на машину для обчислення реальних задач. Практично до введення в експлуатацію першого екземпляра ЕОМ «Київ» «МЕСМ» була основою «обчислювальних потужностей» УРСР (не беручи до уваги ЕОМ «СЕСМ», яка була спеціалізованою).
Експлуатацію МЕОМ для розв'язку реальних задач було розпочато 12.01.1952 р. обчислювальною лабораторією Інституту математики АН УРСР, якою керувала Ющенко К.Л. Досвід програмування на комп'ютері МЕСМ з унікальною архітектурою вплинули на архітектуру інших комп'ютерів та спонукали винайденню програмування високого рівня та вказівників.[4]
Після зняття з експлуатації «МЕОМ» було передано до Київського політехнічного інституту для використання в навчальному процесі. Поступово була розібрана з використанням окремих електронних вузлів для навчання інженерів з цифрової обчислювальної техніки.
Ємність оперативного запам'ятовувального пристрою — 31 для чисел та 63 для команд;
Ємність постійного (штекерного) запам'ятовувального пристрою — 31 для чисел та 63 для команд;
Основні команди: додавання, віднімання, множення, ділення, зсув, команди переходу (безумовного та з порівнянням за абсолютним значенням або з порівнянням з урахуванням знаку), обміну даними між ОП та магнітним барабаном (запису та читання), складання команд (забезпечувала унікальну можливість МЕОМ щодо динамічної модифікації команд, використовувалась для модифікації команд, створення та/або формування) , зупинка;
Система команд — триадресна, команди довжиною 20 двійкових розрядів (з них 4 розряди — код операції);
арифметичній пристрій паралельної дії для прискорення виконання арифметичних дій;
центральне та локальне керування (два "лічильники": адреса поточної команди, центральне для головної програми, а локальне для викликаної підпрограми) виконанням програм (для використання програм, включно зі стандартними підпрограмами та підпрограмами підрахунку значень елементарних функцій). Це дозволило підпрограмам завершуватись без вказування наступної команди: просто передавалось центральному керуванню. Адреса команди, яку необхідно було виконувати після завершення підпрограми, зберігалась у "лічильнику" центрального керування.
можливість динамічної модернізації програм.
Модернізацію програм здійснювала команда складання команд, яка дозволяла отримати послідовний доступ до даних, які розміщувалися у сусідніх комірках оперативної пам'яті, як і елементи масивів[1]. Це стало відправною точкою для включення в операторний метод програмування (О.А. Ляпунов) поняття масиву. При цьому окремі комірки пам'яті виконували роль індексних регістрів. [4]
Наявність динамічної модернізації програм підказала О.А. Ляпунову та К.Л.Ющенко принципову можливість писати програмувальні програми (компілятори), які будуть здатні за формальним записом (алгоритмом) математика створити відповідну програму у машинних кодах для виконання комп'ютером.[4]
К.Л.Ющенко, під час складання програм розрахунків реальних задач на МЕОМ, використовувала команду складання команд для отримання доступу до даних шляхом опосередкованої адресації 2-ого рангу (вказівниками). Виклик підпрограм також здійснювався такою опосередкованою адресацією. Комірки оперативної пам’яті, які використовувались для опосередкованої адресації, мали суттєво ширші функціональні можливості за індексні регістри та при проєктуванні комп’ютера «Київ»[5] були втілені у так звані «регістри модернізації адрес».[4]
Хронологія подій взята з документа «Етапи розробки першої електронної (малої) лічильної машини» з архіву матеріалів, зібраного Лебедєвим та вперше наведеного в книзі Малиновського «Історія обчислювальної техніки в особах» (рос.«История вычислительной техники в лицах»):
жовтень-грудень 1948 — Розробка загальних принципів побудови електронних обчислювальних машин.
січень-березень 1949 — Окреслені загальні напрями для розробки окремих елементів. Семінари з обчислювальних машин з участю представників Інститутів математики та фізики Академії наук УРСР.
березень-квітень 1949 — Розробка тригерів та інших компонентів (генератора імпульсів, лічильників) машини на електронних лампах.
травень-червень 1949 — Розробка першого варіанту арифметичного пристрою. Переїзд в нове приміщення та облаштування лабораторії.
липень-вересень 1949 — Розробка другого варіанту арифметичного пристрою, розробка статичних елементів пам'яті, електронних комутаторів.
жовтень-грудень 1949 — Створення принципової блок-схеми макета машини, розробка загальної компоновки, конструювання та побудова каркаса.
січень-березень 1950 — Розробка та виготовлення окремих блоків та їхнє налаштування. Розробка та виготовлення пульта керування. Розробка технічних умов на магнітне запам'ятовування.
квітень-липень 1950 — Встановлення блоків на каркас та монтаж міжблочних з'єднань, монтаж зв'язків між каркасом та пультом. Налаштування на каркасі блоків та груп блоків з їхньою взаємодією. Роботи з магнітного запам'ятовування в Інституті фізики АН УРСР.
серпень-листопад 1950 — Налаштування керування машиною з пульта. Перший пробний запуск макету машини (6.11.1950).
листопад-грудень 1950 — Збільшення кількості блоків запам'ятовування для розширення ємності запам'ятовувального пристрою. Обробка операцій додавання та віднімання, множення та порівняння.
січень-лютий 1951 — Демонстрація діючого макету комісії (4.01.1951). Протягом демонстрації вирішувались завдання з обчислення суми непарного ряду факторіалу числа, зведення в ступінь. Почато переробку макета в електронну машину.
березень-травень 1951 — Розробка систем постійних чисел та команд. Ведення фотографічного запису результату. Розробка системи керування магнітним запам'ятовуванням. Введення в експлуатацію постійних чисел і команд. Демонстрація роботи машини Урядовій комісії й Комісії експертів.
червень-серпень 1951 — Пристосування сортування з перфокартами для введення вихідних даних у машину. Введення нових блоків для здійснення операцій додавання команд, введення підпрограм, зв'язку з системою магнітного запису кодів. Монтаж і налагодження управління системою магнітного запам'ятовування. Вихід урядової постанови (№ 2759—1321 від 1.06.1951), яка зобов'язує ввести в експлуатацію Електронну (малу) машину в IV кварталі 1951
серпень-листопад 1951 — Відпрацювання арифметичної операції ділення та інших операцій. Переробка блоків запам'ятовування для збільшення їхньої надійності. Закінчення переробки макета в малу машину й випробування її перед пуском.
грудень 1951 — Пуск Електронної (малої) машини в експлуатацію (25.XII.51). Вирішення на машині реальних завдань: обчислення функцій розподілу ймовірностей. Підраховано 585 значень з точністю до одиниці 5-го знака, для чого зроблено близько 250 тис. операцій. Підрахунки зроблені за 2,5 години. На підставі обчислень складені таблиці, призначені для визначення однорідності пострілів артилерійських гармат із погляду однаковості технічного розсіювання. Ці ж таблиці застосовуються для установки режиму роботи верстатів-автоматів.
На машині «МЕОМ» також були розв'язані низка завдань на замовлення провідних математичних та технічних інститутів, зокрема зі створення таблиць значень складних функцій, інженерних обчислень в галузі енергетики.
Дашевський Лев Наумович, старший науковий співробітник лабораторії Лебедєва в Інституті електротехніки АН УРСР, кандидат технічних наук, активний учасник розробки та наладки «МЕСМ». Один із авторів монографії «Мала електронна обчислювальна машина» (рос.Малая электронная счетная машина) (1952)
Шкабара Катерина Олексіївна, старший науковий співробітник лабораторії Лебедєва в Інституті електротехніки АН УРСР, кандидат технічних наук, керівник розробки та наладки пристрою керування «МЕСМ» та системи керування запам'ятовуючим пристроєм на магнітному барабані. Співавторка монографії «Мала електронна обчислювальна машина» (1952).
↑ абЛебедев, С.А.; Дашевський, Л.Н.; Шкабара, Е.А. (1952). Малая электронная счетная машина(рос.). Москва: Академия наук СССР. с. 162. Архів оригіналу за 23 липня 2021. Процитовано 23 липня 2021.
↑Енциклопедія кібернетики : (у 2 т.) / редкол.: Глушков В.М. (гол. ред.); АН Української РСР. - Київ : Голов. ред. УРЕ, 1973. Т. 2 : М-Я, – 1973. – 570, с., 6 арк. іл. : рис., С. 36.
↑ абвгдЮщенко, Ю.О. (01.06.2021). Pointers в програмах на "МЭСМ"(PDF). http://www.icfcst.kiev.ua/MUSEUM/ (Європейський віртуальний музей історії інформаційних технологій в Україні) (укр) . http://www.icfcst.kiev.ua/MUSEUM/TXT/YuriYushchenko.pdf/. Архів оригіналу(PDF) за 29 липня 2021. Процитовано 14.07.2021. Досвід, отриманий київськими програмістами під час експлуатації "МЭСМ", вплинув на виникнення програмування високого рівня та сприяв винайденню опосередкованої адресації 2-ого рангу (Pointers), яка була апаратно реалізована в системі команд комп’ютера "Київ" та увійшла в одну з найперших в світі мов програмування високого рівня – в Адресній мові програмування (1955 р).
↑Глушков, В.М.; Ющенко, К.Л. (1962). Вычислительная машина «Киев»: математическое описание(рос.). Киев: Техн. лит. с. 183.
↑Комп'ютери Z4 і BARK були збудовані раніше, але їх елементною базою були електромагнітні реле, а не лампи.
↑Німецька обчислювальна машина Z4 (1945 рік) і шведська BARK[en] (1950 рік) були електромеханічними, тобто використовували електромагнітні реле у схемах логіки і пам'яті