8x
Код
: C = A * A + B * B;
+00000069: 0288 MULS R24,R24 Multiply signed
+0000006A: 0190 MOVW R18,R0 Copy register pair
+0000006B: 2411 CLR R1 Clear Register
+0000006C: 01C9 MOVW R24,R18 Copy register pair
13: }
+0000006D: 0F82 ADD R24,R18 Add without carry
+0000006E: 1F93 ADC R25,R19 Add with carry
Я насчитал 7
16x
Код
C = A * A + B * B;
+00000069: 2744 CLR R20 Clear Register
+0000006A: FD37 SBRC R19,7 Skip if bit in register cleared
+0000006B: 9540 COM R20 One's complement
+0000006C: 2F54 MOV R21,R20 Copy register
+0000006D: 01CA MOVW R24,R20 Copy register pair
+0000006E: 01B9 MOVW R22,R18 Copy register pair
+0000006F: 940E0085 CALL 0x00000085 Call subroutine
+00000071: 017B MOVW R14,R22 Copy register pair
+00000072: 018C MOVW R16,R24 Copy register pair
+00000073: 019E MOVW R18,R28 Copy register pair
+00000074: 2744 CLR R20 Clear Register
+00000075: FD37 SBRC R19,7 Skip if bit in register cleared
+00000076: 9540 COM R20 One's complement
+00000077: 2F54 MOV R21,R20 Copy register
+00000078: 01CA MOVW R24,R20 Copy register pair
+00000079: 01B9 MOVW R22,R18 Copy register pair
+0000007A: 940E0085 CALL 0x00000085 Call subroutine
+0000007C: 01DC MOVW R26,R24 Copy register pair
+0000007D: 01CB MOVW R24,R22 Copy register pair
+0000007E: 0EE8 ADD R14,R24 Add without carry
+0000007F: 1EF9 ADC R15,R25 Add with carry
+00000080: 1F0A ADC R16,R26 Add with carry
+00000081: 1F1B ADC R17,R27 Add with carry
13: }
+00000082: 01C7 MOVW R24,R14 Copy register pair
+00000083: 940C00A4 JMP 0x000000A4 Jump
+00000085: 9F62 MUL R22,R18 Multiply unsigned
+00000086: 01D0 MOVW R26,R0 Copy register pair
+00000087: 9F73 MUL R23,R19 Multiply unsigned
+00000088: 01F0 MOVW R30,R0 Copy register pair
+00000089: 9F82 MUL R24,R18 Multiply unsigned
+0000008A: 0DE0 ADD R30,R0 Add without carry
+0000008B: 1DF1 ADC R31,R1 Add with carry
+0000008C: 9F64 MUL R22,R20 Multiply unsigned
+0000008D: 0DE0 ADD R30,R0 Add without carry
+0000008E: 1DF1 ADC R31,R1 Add with carry
+0000008F: 9F92 MUL R25,R18 Multiply unsigned
+00000090: 0DF0 ADD R31,R0 Add without carry
+00000091: 9F83 MUL R24,R19 Multiply unsigned
+00000092: 0DF0 ADD R31,R0 Add without carry
+00000093: 9F74 MUL R23,R20 Multiply unsigned
+00000094: 0DF0 ADD R31,R0 Add without carry
+00000095: 9F65 MUL R22,R21 Multiply unsigned
+00000096: 0DF0 ADD R31,R0 Add without carry
+00000097: 2799 CLR R25 Clear Register
+00000098: 9F72 MUL R23,R18 Multiply unsigned
+00000099: 0DB0 ADD R27,R0 Add without carry
+0000009A: 1DE1 ADC R30,R1 Add with carry
+0000009B: 1FF9 ADC R31,R25 Add with carry
+0000009C: 9F63 MUL R22,R19 Multiply unsigned
+0000009D: 0DB0 ADD R27,R0 Add without carry
+0000009E: 1DE1 ADC R30,R1 Add with carry
+0000009F: 1FF9 ADC R31,R25 Add with carry
+000000A0: 01BD MOVW R22,R26 Copy register pair
+000000A1: 01CF MOVW R24,R30 Copy register pair
+000000A2: 2411 CLR R1 Clear Register
+000000A3: 9508 RET Subroutine return
Где-то 108.
Цитата(Rst7 @ Oct 23 2008, 18:20)

и еще там одно деление 32 на 32, это 500 тактов
Да деление, но оно одно на весь результат. Сколько там, на 8 отсчетов, 16 или 32 - сколько берем, еще не определились. Если брать много, то несколько фонем может объединиться, если брать мало, число "фонем" может возрасти, т.к. вроде бы спектр некоторых фонем динамический, и фонема получится состоящая как бы из нескольких частей. Несмотря на свое определение.
Цитата(Rst7 @ Oct 23 2008, 18:20)

и еще 15 квадратных корней, у меня получилось 56*15=840.
А зачем корни ? Какая разница, сравнивать значение или его корень ? И даже с корнем - тоже один корень на выборку.
Цитата(Rst7 @ Oct 23 2008, 18:20)

Уже готовитесь спереть?
Нет, пока думаю, скачивать файл или не скачивать )
Цитата(Rst7 @ Oct 23 2008, 18:20)

Пока выложить могу только эти две функции. Они Вам нужны?
Я ж не один здесь. Надеюсь. Не подойдет мне, может кому другому подойдет.