Как вычеслить значение отрицательного числа ? SUB EAX,-1 Опкод будет 83E8FF чему будет равнятся опкод SUB EAX,-21 Опкод 83E8 остаеться всегда постаянным , а FF уже измениться на другое значение вот как программно вычеслить чему будет это значение равно?
Странный вопрос. Речь про морфер идет, видимо? Отрицательные числа представляются в "дополнительном коде" (дополнение до двух). Чтобы вычислить отрицательное значение можно либо просто сделать Код (Text): mov al, 21 neg al ;теперь в al находится 0xEB, что равно -21 ну, или так: Код (Text): mov al, 21 not al inc al что то же самое, но немного по-другому влияет на флаги. Или же можно просто открыть калькулятор, ввести -21 и нажать hex .
Ну, вообще-то уметь вручную выполнять все операции двоичной арифметики есть святой долг и обязанность каждого ассемблерщика... Чего сложного-то?