Так и не требуется этого. Просто единица в старшем разряде нагляднее результат дает.
Но есть исходник глючного микрокода J11 с описанием его работы.
Такой вопрос - команда MARK во всех PDP11 реализована? Или есть такие, где она даст TRAP?
У процессора T-11 нет команды MARK, так же как и у VAX в режиме совместимости с PDP-11.
...
Похоже, что в логике теста команды DIV в TSTVM2 есть неточность :
При таком использовании R0 - в контрольную сумму не попадает находящийся в R0 результат деления.Код:2$: DIV R2,R0 ;Команда сигнатуры
MFPS R0 ;R0 = PSW
ADD R4,R5 ;R5 = R5 + R4
ADD R0,R5 ;R5 = R5 + PSW
ADD R5,R5 ;R5 = R5 rol 1 (декoрреляция)
ADC R5 ;
ADD R1,R5 ;R5 = R5 + R1
ADD R2,R5 ;R5 = R5 + R2
Похоже, что вместо R0 предполагалось использовать регистр R2, содержащий неизменный делитель
Как обычно - trap to 10.
---------- Post added at 18:45 ---------- Previous post was at 18:23 ----------
Команда MARK ничем не отличается от любой другой команды. В традиционных примерах ее заносят в стек, это может сбивать с толку, но на самом деле и в этих примерах она выполняется штатно: до нее доходит PC и она выполняется :)