Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум на Исходниках.RU > Assembler > Компоновка 2х объектных модулей,расположение сегментов. |
Автор: kar 02.08.01, 13:29 |
Народ,помогите разобраться в следующем: (заранее упомяну, 4то слияние происходит с помощью public без всяких описателей) 1.какого хрена в cs(в заг.мод.) образуются нули 2.какого хрена сегмент данных(отли4ный от cs) находится именно в нем(cs)?!?? (не сливаются ли ВСЕ сег-ы в cs??) 3.4то такое граница параграфа, и хоть 4то-нибудь о загруз.модуле plzz! |
Автор: Emerald 04.08.01, 22:32 |
Ума не приложу про что разговор, но попробую начать с конца... Граница параграфа - это всего лишь адрес, у которого в конце два нуля. Например: ВЕ00 ...Так сложилось, что если данные находятся награнице параграфа, то это увеличивает скорость их обработки. CS в загрузочнм модуле БУДЕТ всегда иметь 0, т.к. код ещё не загружен в память (CS:IP - это указатель след. команды на выполнение, CS - регистр сегмента команд, он динамически назначается - данные не всегда распологаются на одном месте) В ЕХЕ файле DS=CS - такая модель памяти (по -моему TINY) => COM файл. |