ec_arm.s

来自「分别在x86」· S 代码 · 共 74 行

S
74
字号
    AREA code,CODE
   
cq_ntohl    FUNCTION
    EXPORT cq_ntohl
   
    stmdb sp!,{r1}

    ; subroutine body
    eor r1, r0, r0, ROR #16
    bic r1, r1, #0xFF, 16
    mov r0, r0, ror #8
    eor r0, r0, r1, lsr #8

    ldmia sp!,{r1}
    mov            pc, lr
   
    ENDFUNC
   
cq_ntohl_array    FUNCTION
    EXPORT cq_ntohl_array
   
    stmdb sp!,{r0, r1, r2, r3}

    ; subroutine body
next
    ldr r2, [r0]
    eor r3, r2, r2, ROR #16
    bic r3, r3, #0xFF0000
    mov r2, r2, ror #8
    eor r2, r2, r3, lsr #8
    str r2, [r0], #4
    subs    r1, r1, #1
    bne next

    ldmia sp!,{r0, r1, r2, r3}
    mov            pc, lr
   
    ENDFUNC
   
cq_ntohs    FUNCTION
    EXPORT cq_ntohs
   
    stmdb sp!,{r1}

    ; subroutine body
    mov r1, r0, lsl #8
    orr r0, r1, r0, lsr #8

    ldmia sp!,{r1}
    mov            pc, lr
   
    ENDFUNC
    
cq_ntohs_array    FUNCTION
    EXPORT cq_ntohs_array
   
    stmdb sp!,{r0, r1, r2, r3}

    ; subroutine body
next2
    ldrh r2, [r0]
    mov r3, r2, lsl #8
    orr r2, r3, r2, lsr #8
    strh r2, [r0], #2
    subs    r1, r1, #1
    bne next2

    ldmia sp!,{r0, r1, r2, r3}
    mov            pc, lr
   
    ENDFUNC
    
    END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?