![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() ![]() |
![]() |
Dr.Bugy |
![]() ![]()
Сообщение
#1
|
![]() Лихорадка неясного генеза. ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Интересно как компиляторы могут компилировать exe для разных процессоров. Скажем для Pentium и Athlon. Ведь у них одинаковые в лудшем случае команды времён когда АМД делали клоны интеловских процов. Или существуют какието стандарты,хотя стоп, а какже новые технологии АМД и Интел,всякие там навороченные фишки, значит и стандартов быть не может !?
Так чтоже получается?!! Что, чтобы ехе работал на разных процах то они(компиляторы) используют старые,базовые команды, не прикасаясь к современным фмшка про которых так расхваливаются разработчики процессоров в своих рекламах??? Разъясните пожалуйста кто знает! -------------------- Мир промышленного программирования полон избыточной сложности. В результате такие критерии, как простота, надежность, компактность программ и эффективность исполняемого кода, теперь заменяются на один главный критерий — скорость реализации идей. Приоритет времени разработки понятен: человеческие ресурсы нынче стоят значительно выше, чем аппаратные. Но не теряем ли мы по дороге то ценное, что вернуть потом будет крайне тяжело?.. |
Lapp |
![]()
Сообщение
#2
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Открой, например, FPC и зайди в Options - Compiler - Code generation.
Ты увидишь установки на определенный тип проца. Это довольно грубая настройка. Но если ты хочешь, чтобы твоя прога заведомо выполнялась на большинстве машин, ты занизишь уровень - может, до 386 (вряд ли стоит сейчас). Серьезное приложение (коммерческое), конечно, компилится более сложным образом и содержит вставки кода для разных процов (если нужно). Некоторые модули оно может настраивать в процессе инсталляции, некоторые так и содержат лишний код, который не используют - воплощение зависит от программеров. Главное же то, что серьезные приложения пишутся и компилятся серьезно ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Dr.Bugy |
![]()
Сообщение
#3
|
![]() Лихорадка неясного генеза. ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Я так понимаю Делфи использует довольно низкий уровень(во всяком случае по умолчанию) ведь экзешники одинаково идут и на пнях и АМДшниках.
-------------------- Мир промышленного программирования полон избыточной сложности. В результате такие критерии, как простота, надежность, компактность программ и эффективность исполняемого кода, теперь заменяются на один главный критерий — скорость реализации идей. Приоритет времени разработки понятен: человеческие ресурсы нынче стоят значительно выше, чем аппаратные. Но не теряем ли мы по дороге то ценное, что вернуть потом будет крайне тяжело?.. |
Dr.Bugy |
![]()
Сообщение
#4
|
![]() Лихорадка неясного генеза. ![]() ![]() Группа: Пользователи Сообщений: 81 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Возник сопутствующий вопрос:
А какие параметры в настройках компиллятора нужно поставить чтобы бинарник получался "наилудшим"или как там, для работы на Интел Рентиум (1,2,3) и АМД Атхлонах? -------------------- Мир промышленного программирования полон избыточной сложности. В результате такие критерии, как простота, надежность, компактность программ и эффективность исполняемого кода, теперь заменяются на один главный критерий — скорость реализации идей. Приоритет времени разработки понятен: человеческие ресурсы нынче стоят значительно выше, чем аппаратные. Но не теряем ли мы по дороге то ценное, что вернуть потом будет крайне тяжело?.. |
xds |
![]()
Сообщение
#5
|
![]() N337 ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 737 Пол: Мужской Репутация: ![]() ![]() ![]() |
Все перечисленные микропроцессоры в первую очередь - представители семейства* x86, а уже во вторую - самостоятельные торговые марки. Различия в системах команд в большей степени касаются арифметики. Компилятор генерирует код x86 и, на своё усмотрение, может использовать оптимизации на основе тех или иных расширений (e. g. MMX, 3D Now, etc...). Компилятор также может генерировать код, который в зависимости от конфигурации оборудования, на котором он выполняется, будет использовать те или иные расширения базовой системы команд. Такой подход используется уже давно - например, BP можно сконфигурировать (опциями {$E+N+}), на автоматическую настройку сгенерированного кода на отсутствие или наличие 80x87. К слову, последний в мадших членах семейства x86 представлял собой расширение, выполненное в виде отдельной микросхемы.
* - в данном случае термин "семейство" корректен отчасти, т. к. процессоры Intel и AMD не образуют единого модельного ряда. Правильнее так - семейство микропроцессоров с системой команд, совместимой с x86. -------------------- The idiots are winning.
|
![]() ![]() |
![]() |
Текстовая версия | 21.07.2025 14:56 |