[an error occurred while processing this directive]
|
А LFSR я делал у себя так. Вот C-код и его реализация на асме. 4 такта с учетом того, что данное живет в памяти:
; lfsr = (lfsr << 1) ^ ((lfsr & 0x8000)?(32+8+4+1):0);
;
btst #15,@lfsr,TC1 ; test high bit of LFSR
mov @lfsr << #1,ac0 ; load from LFSR with shift
xccpart TC1 || xor #32+4+8+1,ac0 ; XOR with poly if needed
mov ac0,@lfsr ; store result
E-mail: info@telesys.ru