Как выполнить деление И одновременно в модуле. Возможно ли это для процессора?Каков наилучший способ выполнения разделения и модуляции для процессора?
Как:
int a, b = 8/3; //a = 2, b = 2
Или есть операция, которая лучше, чем:
int a = 8/3;
int b = 8 % 3;
Может быть, это лучше?
int a = 8/3;
int b = 8 - a * 3;
Спасибо.
http://stackoverflow.com/questions/5608559/division-and-modulus-using-single-divl-instruction-i386-amd64 может представлять интерес. –
Ваш оптимизирующий компилятор должен знать лучше вас, поэтому не беспокойтесь (и я думаю, это не имеет большого значения на практике: промахи в кешках стоят гораздо больше, чем деления) –
Возможно, процессор может иметь инструкцию , Существует много разных процессоров, которые имеют разные возможности. У 6502 нет даже деления (или умножения, если на то пошло). – molbdnilo