Врядли тут тебе кто поможет, цикл небольшой и простой, оптимизировать тут просто нечего да и выиграешь ты немного. Если что и можно сделать то только в логике программы вокруг этого цикла.Всем доброго времени суток!
Помогите оптимизировать код. Требуется минимальное время выполнения кода в цикле
clk = ((inportb(0x40))) + (inportb(0x40)<<8);
на
clk = ((inportb(0x40))) | (inportb(0x40)<<8);
clk = ((inportb(0x40))) + (inportb(0x40)<<8);
clk = inportb(0x40) * 0x101;
if (clk <= clk_1) clk_sum = clk_sum + (clk_1 - clk);
else clk_sum = clk_sum + clk_1 + (0xFFFF - clk);
clk_sum += clk <= clk_1 ? clk_1 - clk : clk_1 + 0xFFFF - clk;
Насколько я могу судить inportb это функция, которая возвращает каждый раз следующий байт из порта, так что тут надо два вызова.можно заменить наКод:clk = ((inportb(0x40))) + (inportb(0x40)<<8);Код:clk = inportb(0x40) * 0x101;
clk = ((inportb(0x40))) + (inportb(0x40)<<8);
clk = inportb(0x40);
clk |= inportb(0x40) << 8;
clk = ((inportb(0x40))) + (inportb(0x40)<<8);
clk = inportb(0x40) * 0x101;
clk = inportb(0x40);
clk |= inportb(0x40) << 8;
clk_sum += clk <= clk_1 ? clk_1 - clk : clk_1 + 0xFFFF - clk;
Лови:такс вот решил я попробывать по программировать на с++ под кпк, но возникла проблемка:
You must be registered for see links
здесь я нашол практически все кроме самого главного - несложной книжки для начала программирования, мож хто подскажит что можно почитать? для начала