ASM: Уменьшение содержания конкретного адреса

Мне нужно уменьшить несколько байтов в / из стека по указанному адресу (индексируется из ESI).

pop esi ; 

Теперь смена не будет проблемой, я просто могу сделать

mov [esi+13], al ;

хранить содержимое из al в esi + 13.

Но как я могу уменьшить то, что в "ESI + 13".

Например, значение esi+13 = 0xFF → Новое значение esi+13 = 0xFE.

Я пробовал разные вещи, как

dec [esi+13] ;
sub [esi+13], 1; 
dec esi+13; 

и так далее, но я не нашел решения.

Я не знаю, какие байты будут в "esi + 13", поэтому я не могу перенести "результат" на адрес, мне действительно нужно уменьшить его.

Спасибо!

1 ответ

Решение

Я думаю, что это должно работать:

dec byte ptr [esi+13]
Другие вопросы по тегам