Когда-то я выкладывал описание 1801ВМ2 - здесь. Там подробно описаны алгоритмы исполнения команд.
Одну вещь не очень понял: как вычисляется адрес в командах
METKA1: CLR X(PC)
METKA2: CLR @X(PC)
Каков адрес очищаемой ячейки памяти? METKA+X+2 или METKA+X+4 ?
То есть в момент вычисления адреса PC всё ещё указывает на аргумент, или уже на следующую команду?