Bir donanım modül veya bölme işlemlerini desteklemiyorsa, yazılım tarafından modül / bölme simülasyonu yapmak için daha fazla CPU döngüsü gerekir. İşlenen 10 ise bölme ve modül hesaplamanın daha hızlı bir yolu var mı?
Projemde sık sık 10 tamsayı modülünü hesaplamam gerekiyor. Özellikle, PIC16F üzerinde çalışıyorum ve LCD'de bir sayı göstermem gerekiyor. Desteklemek için 4 basamak vardır, bu nedenle modül ve bölme işlevine 4 çağrı (yazılım uygulaması) vardır. Yani, aşağıdaki gibi:
digit = number % 10; // call to an expensive function
number /= 10; // call to an expensive function
somehow_lit_segments();
digit = number % 10; // call to an expensive function
number /= 10; // call to an expensive function
somehow_lit_segments();
digit = number % 10; // call to an expensive function
number /= 10; // call to an expensive function
somehow_lit_segments();
digit = number % 10; // call to an expensive function
number /= 10; // call to an expensive function
somehow_lit_segments();
Benzer kodu kullanan başka alanlar da vardır.