Быстрее ли это умножение и присваивание?

У меня быстрый вопрос, предположим, у меня есть следующий код, и он повторяется аналогичным образом 10 раз, например.

if blah then
    number = number + 2^n
end if

Было бы быстрее оценить:

number = number + blah*2^n?

Что также вызывает вопрос: можно ли умножить логическое значение на целое число (хотя я не уверен, что тип, возвращаемый из 2 ^ n, является ли это целым числом или беззнаковым ... и т. Д.)? (Я работаю на Аде, но давайте попробуем обобщить это, может быть?)

РЕДАКТИРОВАТЬ: Извините, я должен уточнить, что смотрю на 2 в степени n, и я добавил c, потому что меня интересовала моя собственная учусь в будущем, если я когда-нибудь столкнусь с этой проблемой на c, и я думаю, что на этих досках больше программистов на c, чем на Ada (я предполагаю, и вы знаете, что это значит), однако моя текущая проблема связана с языком Ada , но вопрос должен быть достаточно независимым от языка (я надеюсь).

6
задан technosaurus 15 August 2017 в 21:32
поделиться