Программисты не слишком хорошо могут управлять переводом из исходного языка на машинный, а от этого перевода также зависит объем исполняемого модуля программы. Небольшие изменения компилятора уменьшили объем одной из ранних версий Unix на 5%. Если ничто больше не помогает, можно попытаться вручную переписать программу (или ее часть) на ассемблере. Этот длительный и приводящий к ошибкам процесс обычно дает не слишком заметные результаты (в уменьшении объема кода), тем не менее он часто используется в системах с жестким ограничением памяти, таких как цифровые сигнальные процессоры.
В 1984 году компьютер Apple Macintosh был примечательной новинкой. Несмотря на слабые характеристики (128 Кб оперативной памяти), он обладал потрясающим интерфейсом пользователя и для него имелось множество программ. Команда разработчиков планировала продать огромное количество машин, но могла себе позволить установить на компьютер только 64 Кбайт ПЗУ. Несмотря на крохотный объем, функциональность ПЗУ была очень большой. Разработчикам удалось обеспечить это благодаря аккуратному кодированию всех функций (обобщение операторов, слияние функций и отказ от лишних возможностей). Наконец, они вручную переписали все функции ПЗУ на ассемблере. По их оценкам, получившийся код занимал вдвое меньший объем, чем если был он был получен компиляцией с языка высокого уровня (с тех пор компиляторы значительно улучшились). Маленький по объему код ПЗУ обладал еще одним полезным качеством: высоким быстродействием.
Опубликовал vovan666
April 17 2013 00:02:04 ·
2 Комментариев ·
4528 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
q August 11 2023 16:12:28
1
q August 11 2023 16:12:30
1
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.