>Стоит ли изучать .net?
И как всегда выбор скатился до "си или дельфи?" :)
Wieiner
> только в сом файлах. в ЕХЕ (под дос) - нет, нужно транслировать адреса памяти.
> (байт мод-рм включает адрес памяти, как часть опкода).
отличный перл!!
>отличный перл!!
Это не перл, это реальность при непосредственной адресации памяти (например, статические переменные и вызовы процедур). Все такие места сведены в таблицу релокаций, и если приложение не удалось загрузить на его базу, то эти места надо пофиксить на смещение. COM же всегда грузится фиксированно.
stopkin
при компиляции в модель small в этой таблице было 2 или 3 адреса, один из них старт поинт, второй заголовок файла... это нужно только при межсегментных вызовах и работе с оверлеями...
Pushkoff
>при компиляции в модель small ... при межсегментных вызовах и работе с оверлеями...
Ой, ты про какой век - 16-битный?
stopkin
мы вообще-то про дос программы, а они не бывают другими
Pushkoff
>мы вообще-то про дос программы, а они не бывают другими
В Doom не играл?
stopkin
> В Doom не играл?
нет, но подозреваю что там используется что-то типа dos4gw, то есть переводит один из сегментов в 32 режим, но при этом остается в 16 разрядном режиме...
я между прочим ОС с защищенным режимом, многозадачностью и страничной адресацией на диплом писал, так что у меня длиннее)
Pushkoff
> нет, но подозреваю что там используется что-то типа dos4gw, то есть переводит
> один из сегментов в 32 режим, но при этом остается в 16 разрядном режиме...
> я между прочим ОС с защищенным режимом, многозадачностью и страничной
> адресацией на диплом писал, так что у меня длиннее)
Вообще то перевод в Flat режим адресации с 32 разрядным адресом и использованием exx регистров. В связи с чем dos4gw работал на процессорах не ниже 386.
ElementaryTroll
насколько я помню, регистрами exx можно пользоваться и в 16 разрядном режиме и масм это позволял, в режим флат переводились только сегменты FS и GS, сам код был 16 разрядным, так как из кода вызываются сервисы ОС и БИОС которые 16 разрядные, а эмуляция этого всего это фактически полноценная ОС, что явно не укладывается в те пару кб которые весит dos4gw...
Расширенными 32-битными регистрами можно было пользоваться в любом регистре никак его не перенастраивая.
А перенастрйка FS - это уже Unreal Mode.
Да, DOOM шёл на 386, не ниже. Но отсюда не следует, что формат EXE файла под DOS был не нативный. С чего спор начался?
Какая интересная тема. Я так понял обсуждается выход MS DOS .NET.
Основные фичи:
- язык C# 4.0.100500
- Классы можно наследовать от AX, BX, CX..
- методы классов Push, Pop,
- оператор = вместо Move
- в версии 4.0.9000 разрешат наследование от способа адресации
А потом весь этод бред еще и в CLI-ассемблер переводится ))))
PS
А вообще я все это не серьезно. Просто шокировало содержание темы
Кстати, когда появится FASM.NET, транслирующий команды ассемблера в MSIL?
Pushkoff
>переводит один из сегментов в 32 режим, но при этом остается в 16 разрядном режиме
Вот с этого места поподробнее, я понимаю еще, если бы речь шла про кота Шредингера, но компы во времена Дума не были квантовыми. Дак в каком режиме работал сегмент Дума?
>так как из кода вызываются сервисы ОС и БИОС которые 16 разрядные
Они через ф-ю DPMI вызываются, а не на прямую.
P.S. И еще подскажи, где ты нашел битик разрядности сегмента? :) Уж не в его ли дескрипторе?
>я между прочим ОС с защищенным режимом, многозадачностью и страничной адресацией на диплом писал
Вот русский ты отлично знаешь, прошедшее время, несовершенный вид. Писал, но не дописал.
stopkin
> Писал, но не дописал.
дописал.
Тема в архиве.