dequant.s

来自「这个是H.264解码部分4*4直流的反量化的ARM汇编程序,上面的那个IQ2_D」· S 代码 · 共 63 行

S
63
字号
			  AREA           IQ,CODE,READONLY
			  EXPORT         ARM_dequant
			  IMPORT         udivide
			  IMPORT         dequantcoeff
			  IMPORT         dequantdata
			  IMPORT         dequant_after
			  
num           EQU            16
			  			                			
ARM_dequant       
              LDR            SP,=0x40000000
              STMFD          SP!,{R3-R12,LR}
              LDR            R5,dequantcoeff_addr
              LDR            R6,dequantdata_addr
              LDR            R11,dequant_after_addr
              MOV            R10,#num
              BL             udivide
              ADD            R5,R5,R1,LSL #6
              SUBS           R0,R0,#2            ;R0=QP/6-2=qbits
              MOVCC          R2,#1
              ADDCC          R3,R0,#1
              RSBCC          R3,R3,#0            ;R3=-(R0+1)
              MOVCC          R2,R2,LSL R3        ;t=R2              
              RSBCC          R4,R0,#0            ;R4=-R0
              BCC            dequanting_2
                            
dequanting_1    
                           
              LDR            R7,[R5]
              LDR            R8,[R6],#4              
              MUL            R9,R8,R7              
              MOV            R9,R9,LSL R0        ;if(qbits>0)            
              STR            R9,[R11],#4
              SUB            R10,R10,#1
              CMP            R10,#0              
              BNE            dequanting_1
              LDMFD          SP!,{R3-R12,LR}
              MOV            PC,LR
              
dequanting_2  
              LDR            R7,[R5]
              LDR            R8,[R6],#4              
              MUL            R9,R8,R7  
              ADD            R9,R9,R2            ;if(qbits<0) 
              MOV            R9,R9,ASR R4
              STR            R9,[R11],#4
              SUB            R10,R10,#1
              CMP            R10,#0
              BNE            dequanting_2
              LDMFD          SP!,{R3-R12,LR}
              MOV            PC,LR         
                            
                                                     
dequantcoeff_addr               
              DCD            dequantcoeff 

dequantdata_addr
              DCD            dequantdata
      
dequant_after_addr
              DCD            dequant_after
              
              END

⌨️ 快捷键说明

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