Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

почему виндовс не написали на асемблере

CONSUL CAST Ученик (155), открыт 3 дня назад
виндовс же бы летал все бы открывалось моментально
9 ответов
бабуин гибонович Просветленный (39716) 3 дня назад
Разработка операционной системы, такой как Windows, на ассемблере имеет несколько значительных недостатков, несмотря на потенциальные преимущества в производительности:

1. **Сложность разработки и сопровождения**: Ассемблер — это низкоуровневый язык программирования, который напрямую управляет аппаратным обеспечением. Программирование на ассемблере требует значительно больше усилий и времени, чем на высокоуровневых языках, таких как C или C++. Отладка, тестирование и сопровождение кода на ассемблере также сложнее, так как код менее понятен и более подвержен ошибкам.

2. **Портируемость**: Высокоуровневые языки позволяют писать код, который можно относительно легко адаптировать к различным аппаратным платформам. Код на ассемблере сильно привязан к конкретной архитектуре процессора, что затрудняет его перенос на другие платформы.

3. **Скорость разработки**: Писать сложные системы, такие как операционные, на ассемблере требует много времени. Современные операционные системы включают миллионы строк кода, и написание их на ассемблере было бы чрезвычайно трудоёмким процессом.

4. **Поддержка и расширяемость**: Высокоуровневые языки предоставляют более мощные абстракции и инструменты для организации кода, что упрощает добавление новых функций и поддержку существующих. Операционные системы постоянно развиваются и обновляются, и такие задачи значительно легче выполнять на высокоуровневых языках.

5. **Модульность и переиспользование кода**: Высокоуровневые языки позволяют создавать модули и библиотеки, которые могут быть переиспользованы в других частях системы или в других проектах. На ассемблере этого достичь гораздо сложнее.

6. **Современные оптимизации компиляторов**: Современные компиляторы для высокоуровневых языков, такие как C и C++, могут производить высокоэффективный машинный код, который зачастую приближается по производительности к ручному ассемблерному коду. Это позволяет получать почти максимальную производительность без необходимости писать код на ассемблере.

Таким образом, использование высокоуровневых языков, таких как C и C++, позволяет разрабатывать сложные, масштабируемые и поддерживаемые системы быстрее и эффективнее, чем на ассемблере.
John G. Wild Оракул (97980) 3 дня назад
Действительно.
Приходит такой чувак к создателям разного ПО и говорит: ну, хлопцы, а давайте вы теперь возьметесь и начнете писать все свои программы на ассемблере.
После коллективного посыла этот чувак или остался без всего ПО, так как проще застрелиться, чем переписывать Photoshop на ассемблере, или остался с ОС, которая без ПО нахрен никому не нужна.
CONSUL CASTУченик (155) 3 дня назад
РАНЬШЕ ВСЕ НА АСЕМБЛЕРЕ ПИСАЛИ И ЖИЛИ НОРМАЛЬНО ВСЕ И НИКТО НЕ ВЫ**БЫВАЛСЯ
John G. Wild Оракул (97980) CONSUL CAST, не все. На домашних компьютерах был Basic или его вариации, покуда не было единого стандарта архитектуры. Было полно консолей, под которых все тоже разрабатывалось на довольно простых языках, так как разработчики игр - не всегда хорошие программисты.
CONSUL CASTУченик (155) 3 дня назад
НЕ ВСЕ А МНОГО КТО
John G. Wild Оракул (97980) CONSUL CAST, ну, сказать сложно. Тут все упрется в ОС, с которой пользователь имел дело. С чем шел Commodore 64, Amiga или ZXSpectrum. С тем и имели дело.
danil kutovcki Ученик (162) 3 дня назад
все юзеры винды такие ?
Скуф Скуфыч Мастер (1822) 3 дня назад
Потому что ассемблер не предназначен для разработки ОС, слишком низкоуровневый. Так или иначе придется писать библиотеки. А это все равно что изобретать велосипед, т.к. уже есть C.
CONSUL CASTУченик (155) 3 дня назад
на асемблере есть ОС и не одна даже
Скуф Скуфыч Мастер (1822) CONSUL CAST, это конечно очень здорово, но крупный проект на ассемблере поддерживать очень тяжело. Поэтому и используют более высокоуровневые языки. Иначе бы вообще все писали на машинном коде, даже без ассемблера.
Nikassaiop End Просветленный (35194) 3 дня назад
Напиши. Если это будет работать, заработаешь миллиарды)
HЛО Гуру (3318) 3 дня назад
Потому что Microsoft привыкла воровать чужой код, а на ассемблере его ещё не писали
Krab BarkИскусственный Интеллект (286513) 3 дня назад
Никакого кода она никогда не воровала. У нее достаточно своих хороших программистов.
HЛО Гуру (3318) Откуда? Какой был и того было чуть не посадили, а какие сейчас шелупонь, да и воровали они так и воруют.
Аглая Шниц Искусственный Интеллект (139466) 3 дня назад
Любая достаточно сложная программа на ассемблере содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Common Lisp.
(десятое правило Гринспена)
Krab Bark Искусственный Интеллект (286513) 3 дня назад
Написанный на Ассемблере код обычно не быстрее кода на С, а чаще всего медленнее. Поскольку компилятор Си умеет оптимизировать код лучше, чем человек. См, например, тест https/ stackoverflow.com/questions/9601427/is-inline-assembly-language-slower-than-native-c-code И пишется код на Ассемблере куда медленнее.
Генномодифицированный гриб Мастер (1695) 3 дня назад
Это виндовсу не помогло бы, все равно лагал.
Похожие вопросы