ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
2 июня
85325 Топик полностью
AVR (04.04.2007 00:43, просмотров: 1) ответил robinzone на К примеру, простенький тест:
Ну ты попаааал! :)) <asm> ldi zl, low ($100); ldi zh, high ($100); ldi yl, low ($200); ldi yh, high ($200); ;чистим 512 ячеек RAM clr R16; cikl_chistka_ozu: st Z+,R16 sbiw YL,1; brne cikl_chistka_ozu; </asm> Итого 5+512*(2+2+2) = 3077 тактов. При частоте 16 МГц = 193 мкс. --------------------------------------------------------------------- :)))))))) --------------------------------------------------------------------- Вот тебе: <asm> mov #0x100,w0 ; 1 такт - задаем адрес начала чистки repeat #255 ; 1 такт - команда повтора следующей команды 255+1 раз clr.w [w0++] ; 1 такт - чистка сразу двух байт </asm> Итого: 3 слова кода, 258 тактов - 16.1 мкс на 16 МГЦ, 6.5 мкс на 40 МГЦ, в 12 и 30 раз быстрее АВРа. Тут шляпу не снять, а съесть придется :))