Обновить

Комментарии 3

Неужели этим кто-то ещё занимается? Тоже (1986-1992) болел "разработкой ЦПУ", кратко к чему пришел (8-16-32 бит):

  1. "префиксная система команд" - опкоды инвертирован: операнд1, операнд2, операнд3, команда. Первый бит определяет что это - "операнд/команда". Операнды могут отсутствовать, что совмещает стековую, 1,2 и 3-адресную арифметику единым кодом команды.

  2. "специальные префиксы" - а-ля, "повторения" (i86), "условного пропуска" (ARM) команды и суммирования аккумулятора (приемника - последнего операнда). Позволяет иметь набор простых инструкций и поточной обработки массивов тем же набором команд.

  3. Табличные относительные переходы (от регистров-баз) как сокращение длины адреса, лежащего в таблице по типу таблицы прерываний.

  4. Аналогично короткие табличные вызовы подпрограмм в 1 байт (первые 64 команды) от регистра-базы. Аналог виртуальных функций ООП сокращение длины кода.

  5. Широкий набор регистров - несколько (4) комплектов от "базы". Как способ ускоренной реакции на смену контекста (прерывания в 1-2 такта).

Даже делал эмулятор, показавший сокращение размера программ от 3 до 6 раз относительно 80(2-4)86. Но .. кому это тогда было надо да и сию? Поезд ушел и очень давно. Инвертирование структуры команды позволило упростить эмулятор в части блока дешифровки, в целом получалось очень компактно.

Плюсик автору.

НЛО прилетело и опубликовало эту надпись здесь

да, я на расте на сдл2 сделал себе крутейший терминал, кайф работает как печатная машинка через dsl(asm 8bit команды)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации