Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
[asm]TASM.Упрощенные дир-вы опред-ия сегм-тов.Фокус с сегментами. 21.09.03 14:41
Автор: gkar21h Статус: Незарегистрированный пользователь
|
Дела такие:
Создаю в модуле две разные модели - small и tiny.Слежу за сегмент.регистрами : в первом случае (small) прослеживается два сегмента - cs указан на один,ds - на другой. во втром случае сегмент один (cs и ds -> оба на сег.кода).
Все бы ничего..только,когда я вставляю директиву процессора (.286) - ни small ни timy не отличаются! - ds и cs упрямо указывают на один сегмент!
Почему??? как этого избежать, если мне нужно указывать интерпретацию кода определенным процессором.
|
|
[asm]TASM.Упрощенные дир-вы опред-ия сегм-тов.Фокус с сегментами. 22.09.03 09:56
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
|
> Дела такие: > Создаю в модуле две разные модели - small и tiny.Слежу за > сегмент.регистрами : в первом случае (small) прослеживается > два сегмента - cs указан на один,ds - на другой. во втром > случае сегмент один (cs и ds -> оба на сег.кода). > Все бы ничего..только,когда я вставляю директиву процессора > (.286) - ни small ни timy не отличаются! - ds и cs упрямо > указывают на один сегмент! > Почему??? как этого избежать, если мне нужно указывать > интерпретацию кода определенным процессором. А что без .286 программа работать не желает?
Эта директива нужна только чтобы транслятор не ругнулся на popa и pusha.
Больше 80086 от 80286 ничем не отличеются.
Может директива определения типа процессора перебивает модель. Этого не должно быть, если только ошибка в трансляторе.
В крайнем случае модель можно не указывать. Пишите "assume cs:cseg, ds:dseg".
|
|
|