Comment on Picking a CRC by Julian Skidmore

Comment on Picking a CRC by Julian Skidmore 图片 1

In reply to Christian.

Yes, I think when I first did it with <<12 and <<5 the gcc AVR compiler turned it into a loop; whereas (n<<8) becomes a byte copy. So, <<12 then becomes:

mov regCrcHi,regCrcLo ldi regCrcLo,0 swap regCrcHi andi regCrcHi,0xf0

;4 cycles and 4 words instead of: ldi regTemp,12 lp: lsl regCrcLo rol regCrcHi dec regTemp brnz lp

;61 cycles, 6 words.

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论