在ARM中的64位加法原理

请说明如何用 ARM 汇编指令实现 64 位加法及其原理 ,主要是原理不太懂

 ;r1r0 64bit 加数1,r3r2 64bit 加数2
;r2r1r0 结果返回
add64:
    PUSH {R4-R7,LR}
    adds r0,r0,r2
    adcs r1,r1,r3
    mov r2,#0
    adcs r2,r2
    POP {R4-R7,LR}
    MOV PC,LR