AVR有32个通用存储器,R0-R31
51只有R0-R7,AES算法中行变换是4*4的 需要16个存储器,怎么办呢?
/下面是AVR的/
shiftrow:
mov temp,r3 ;因为是4x4
mov r3,r7 ; r2 r6 r10 r14 r2 r6 r10 r14
mov r7,r11 ; r3 r7 r11 r15 ----> r7 r11 r15 r3
mov r11,r15 ; r4 r8 r12 r17 r12 r17 r4 r8
mov r15,temp ; r5 r9 r13 r18 r18 r5 r9 r13
mov temp,r4
mov temp1,r8
mov r4,r12
mov r8,r17
mov r12,temp
mov r17,temp1
mov temp,r18
mov r18,r13
mov r13,r9
mov r9,r5
mov r5,temp
ret