Почему так получается???
_DS = SEG; //(SEG - глобальная перем)
_SS = SEG; //(либо _SS = _DS)
_SP = OFFSET; //(OFFSET - глобальная перем)
а получается что
ss и ds равны SEG, но при _SS = _DS регистор es становиться равным 0, а он используется далее. Почему так получается???
Цитата:
On 2002-09-24 0617, kostya_11 wrote
на C пишу
_DS = SEG; //(SEG - глобальная перем)
_SS = SEG; //(либо _SS = _DS)
_SP = OFFSET; //(OFFSET - глобальная перем)
а получается что
ss и ds равны SEG, но при _SS = _DS регистор es становиться равным 0, а он используется далее. Почему так получается???
Сделай асм-файл (укажи СИ сделать асм-файл) и посмотри, как он испортил тебе es, либо сделай то же самое в отладчике, сделав видимым окно "Registers"...