Home

Page 41
Page 41
background image

34 Глава 1

машинке, программист кричит, что он крутой, и пишет специальную про-
грамму. Ее написание заняло один день, и столько же — ее отладка.
Главная ошибка — неправильная оптимизация своего труда. Легче набрать
шаблон в любом текстовом редакторе и потом только менять фамилии

приглашенных на этот траурный день (это я сужу по себе). Но даже если

нет текстового редактора, писать программу действительно нет смысла. За-

траты большие, а пользоваться ей будешь только один раз. Здесь действи-

тельно легче будет даже набрать на печатной машинке.

Получается, что одноразовые операции оптимизировать просто бессмыслен-

но. Затраты в этом случае себя не окупают, поэтому не стоит тратить свои

нервы на этот бессмысленный труд.
В самом начале этого раздела я раскритиковал вас как человека, который

ленится хоть что-нибудь делать. Так вот именно здесь вы можете проявлять

свою врожденную леность в полном объеме. В данном случае крутым счита-
ется не тот, кто целый

 промучился и ничего не добился, а тот, кто вы-

полнил свою работу наиболее быстро и эффективно. И эти две вещи путать
нельзя.

ЗАКОН № 5

Нужно знать внутренности компьютера и принципы его работы. Чем лучше вы

знаете, каким образом компьютер будет выполнять ваш код, тем лучше вы

сможете его оптимизировать.

Этот закон относится только к программированию. Тут трудно привести
полный набор готовых решений, но некоторые приемы я постараюсь опи-

сать.

1. Старайтесь поменьше использовать вычисления с плавающей запятой.

Любые операции с целыми числами выполняются в несколько раз быстрее.

2. Операции умножения и тем более деления также выполняются достаточ-

но долго. Если вам нужно умножить како-то число на 3, то для процес-

сора будет легче три раза сложить одно и то же число, чем выполнить

умножение.
А как же тогда экономить на делении? Вот тут нужно знать математику.

У процессора есть такая операция, как сдвиг. Вы должны знать, что про-
цессор думает в двоичной системе, и числа в компьютере хранятся имен-
но в ней. Например, число 198 для процессора будет выглядеть как

 Теперь посмотрим, как работают операции сдвига.

Сдвиг вправо — если сдвинуть число

 вправо на одну позицию,

то последняя цифра исчезнет, и останется только

 Теперь введите

это число в калькулятор и переведите его в десятичную систему. Ваш ре-

зультат должен быть 99. Как видите — это ровно половина числа 198.


Copyright © 2020 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.