Лень проверять, но интуитивно мне так кажется)
---------- Post added at 00:07 ---------- Previous post was at 00:06 ----------
Интерпретивная - это обычная эмуляция. В данном случае, она бы торомозила раз... в 4 точно.
Рекомпилируемая - это сначала в полу-автоматическом режиме программа перекомпилируется под PDP11, а потом уже этот нативный код запускается.
Но это только идея.
PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
PMI: KDJ11-BF, MSV11-JE
VT220, CM7209
Признак Z двух операций нужно определять по AND, а признак N - по результату последней (вроде так)..
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ну тогда вот вам пример.
В итоге, в обоих двух последних каскадах получили флаги V, хотя финально он должен быть сброшен.Код:Складываем два числа 0x7FFF.FFFF и 0x8001.0001 0x8001.0001 - это -0x7FFEFFFF Понятно, что в сумме они нам дадут 0x0001.0000 Где флаг V = 0, т.к. арифметического переполнения не было. Теперь вычисляем каскадно. ADD L1,L2 L2 = 0xFFFF + 0x0001 = 0x0000 ADC H2 H2 = 0x7FFF + C = 0x8000 (V установлен) ADD H1,H2 H2 = 0x8000 + 0x8001 = 0x0001 (V установлен)
При эмуляции команды ADD X,Y признак V определяется так:
Код:if( ((X < 0 && Y < 0) || (X >= 0 && Y >= 0)) && ((Res < 0 && Y >= 0) || (Res >= 0 && Y < 0)) ) { PSW |= V; }
---------- Post added at 00:31 ---------- Previous post was at 00:25 ----------
Значит, флаг V цикличен с периодом на один бит меньше, чем флаг C, поэтому за один 16-битный цикл прибавлений единицы - флаг C установится один раз, а флаг V - два раза.
Я правильно понял?
Нет, он цикличен с таким же периодом, но со смещением на пол-периода.
Например, для 8-битных чисел, точка перехода для C - это 0xFF, а точка перехода для V - это 0x7F.
---------- Post added at 00:38 ---------- Previous post was at 00:34 ----------
Кстати, смею предположить, что корректно будет брать флаги V с двух последних каскадов сложенные по xor.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)