Реєстр-машина [RM]: програмне забезпечення RM

Програмне забезпечення RM дозволяє створювати програми RM. Він працює з увімкненим JavaScript у більшості сучасних браузерів.

Більше інформації про вступ до алгоритмічного мислення Inge Schwank
- формально-символічний рівень: Registermaschine
- активний-гаптичний / іконно-динамічний рівень: Dynamische Labyrinthe


Реалізація спільно з Інге Шванк: Штеффен Воге
Зворотній зв’язок: Inge Schwank


Визначення: модульні програми RM

Нехай i ∈ ℕ, i > 0. Далі:
Ri позначення реєстра i реєстрової машини;
[Ri] позначення вмісту реєстру i, це може бути будь-яке натуральне число.

Синтаксис

Семантика


Структурування на підпроблеми --- Визначення: підпрограма RM

Синтаксис

Семантика


Міра складності --- функція кроку обчислення

Якщо функція f обчислюється програмою RM Pf функція номера кроку обчислення RSPf може бути використана для визначення зусиль, необхідних для обчислення. У розрахунок зусиль включаються всі виконані елементарні команди, тобто всі необхідні для розрахунку випадки виконання Ai i Si.
Приклад:
За допомогою Pa: (1S1A2) можна обчислити функцію a(x1,x2)=x1+x2.
У цьому випадку обчислювальні зусилля залежать лише від x1,але не від x2.
Результати арифметичної крокової функції для Pa:
RSPa(x1)=2x1  

Швидкий початок

Існують два різні режими: Для перемикання між цими двома режимами необхідно ввести (синтаксично) правильну програму RM у прямокутне біле поле, яке є вільним, за винятком однієї чорної точки.
Зміни вносяться за допомогою кнопки-перемикача «Ініціалізувати програму» / «Редагувати програму», яка розташована вгорі ліворуч, безпосередньо під заголовком «Програма RM».


Програма RM

Реєстр


Основна програма вимагає більше реєстрів, ніж було створено.
R1:
R2:
R3:
R4:
Встановити значення реєстру:

Програма

.

Підпрограми

Завантажити стандартні програми під час ініціалізації

Історія програми

(з коміркою рекурсії)

Етапи розрахунку: 0

Програма може потрапити в нескінченний цикл, оскільки в стек рекурсії вноситься багато змін без виклику Ai або Si. Будь ласка, перевірте програму та, якщо ви хочете, щоб вона продовжилася, знову натисніть одну з кнопок Крок.

Програма намагається викликати підпрограму, яка не була визначена. Перейдіть у режим редагування програми та визначте підпрограму.

Рульове керування

Параметри

Перевірка програми під час введення
Показати кількість кроків розрахунку
Показати історію програми

Збереження та завантаження програм

Вивести попередньо визначені підпрограми, якщо вони завантажені під час ініціалізації
зберегти на комп'ютері:
навантаження:

Попередньо визначені підпрограми RM

Зверніть увагу, що ці попередньо визначені підпрограми RM можна замінити вашими власними визначеннями.

Виклик RM-програма Значення
Li<i> (iSi). Погасити
Ti<j> (jSjAi). Транспортувати
Ki<j> (jSjAiAh)(hShAj). Копіювати
Ae<i,j> Ke<i>Ke<j>. нормоване додавання
Me<i,j> Kh<i>(hShKe<j>). нормоване множення

Інструкції



Letzte Änderung: 23. November 2022.
Copyright: Universität zu Köln
Datenschutzerklärung; Impressum