Посмотрите на коммерческие реализации
Лучший ответ, вероятно, будет смотреть на существующие коммерческие реализации.
Все, что не продается в коммерческих целях, может оказаться бесполезным.
Каково определение инструкции?
Например, я мог бы сделать одну инструкцию, которая реализует алгоритм распаковки, основанную на аппаратной реализации распаковки, и это, конечно, будет наиболее эффективная машина для распаковки.
Будет ли это коммерчески привлекательным, однако? Маловероятно, поскольку это оборудование, вероятно, будет слишком специализированным, чтобы оправдать затраты на разработку.
Но есть гораздо больше нюансов, чем этот крайний случай, и ответ, скорее всего, будет меняться в зависимости от существующих технологий конкурентов и рыночного спроса, что еще больше ухудшит ситуацию.
В конце концов, «эффективное оборудование» означает:
- взять набор критериев, назначить один вес важности для каждого
- написать оптимальное программное обеспечение, которое решает эти задачи
Возможные причины, по которым очень маленькие полные ISA Тьюринга могут быть неэффективными
- несколько инструкций, которые у них есть, очень сложны и требуют больших затрат каждый раз, когда их вызывают, например, Вы не можете выполнить определенную оптимизацию конвейерной обработки
- плотность кода очень мала, что подразумевает:
- производительность может быть связана с извлечением инструкций
- не подходит для встроенных устройств с небольшим объемом ПЗУ
Известные реализации OISC
Было бы интересно проанализировать их, чтобы получить более конкретный ответ.
movfuscator
https://github.com/xoreaxeaxeax/movfuscator
Компилятор Toy C для x86, который использует только инструкции mov
x86, показывая очень конкретным образом, что достаточно одной инструкции.
Полнота Тьюринга, кажется, доказана в статье: https://www.cl.cam.ac.uk/~sd601/papers/mov.pdf
subleq
Образовательная OSIC, ранее упомянутая в https://stackoverflow.com/a/9439153/895245, но без названия:
Смотри также:
https://esolangs.org/wiki/Subleq
См. Также
https://softwareengineering.stackexchange.com/questions/230538/what-is-the-absolute-minimum-set-of-instructions-required-to-build-a-turing-comp/325501