Я никогда не работал с PDP-11, но у меня есть некоторый опыт работы с тестированием и ветвлением в системах x86, и похоже, что он может быть похожим.
В наборе команд x86 команда "test" эквивалентна сравнению с 0; флаг "меньше чем" устанавливается, если значение меньше 0 и т. д. Я предполагаю, что # 75 означает числовой литерал в шестнадцатеричном формате - 0x75.
Если мои предположения верны, код, который у вас есть, выполняет два сравнения со знаком:
- Является ли (подписанное) значение r0 меньше 0?
- Значение (со знаком) r0 больше 0x75?
Если вместо этого вы обрабатываете его как значение без знака , тогда - при условии, что системы PDP-11 используют кодирование с 2-мя дополнениями - отрицательные значения становятся значениями, большими или равными 0x8000 (поскольку PDP -11 это 16-битная система). Таким образом, если вы выполните сравнение без знака, проверка по 0x75 также позаботится о отрицательных значениях; наименьшее возможное значение становится 0, что является приемлемым для тестов здесь.
Я не уверен, является ли сравнение без знака на PDP-11 другим кодом операции сравнения или другим флагом, но я уверен, что вы можете понять эту часть. : -)