Все началось с того что repne stosb, упорно не желал находить нужный символ в строке , в которой он точно был(строка задана в области данных) Код (Text): mov ax,1 lea di,test mov cx,10 repne stosb Потом я обнаружил следующее, (пользуюсь turbodebagger, в прочем интерфейс у них всех похожий) глядя в окошко CPU в область памяти напротив каждой строки её смещение в виде X : Y, так вот когда я загружаю адрес строки с помощью lea команда scas ищет строку по адресу ds:0463-там сплошные нули , а по настоящему строка в 1960:0463, как правильно и полностью загрузить адрес строки чтоб можно было пользоваться scas ?
Инструкция STOSB по умолчанию использует полный адрес из ESI. Вы установили только регистр DI, а ещё нужен регистр ES (1960h).
Побочный вопрос из той же темы, какие команды меняют регистр ds, просто руками я его не трогаю, а где то посредине кода выясняется что я не могу загрузить переменные из сегмента данных