MOV R2, #4
MOV R3, #0 ;四個數據的和
MOV R4, #0
A_LOOP:
MOV A, R3
ADD A, @R0 ;加數據低字節
MOV R3, A
INC R0
MOV A, R4
ADDC A, @R0 ;加數據高字節
MOV R4, A
INC R0
DJNZ R2, A_LOOP ;
;-------------------------下面除以4,右移兩位即可
CLR C
MOV A, R4
RRC A ;先移高八位
MOV R4, A
MOV A, R3
RRC A ;後移低八位
MOV R3, A
CLR C ;再移動壹次
MOV A, R4
RRC A
MOV R4, A
MOV A, R3
RRC A
MOV R3, A
;結果在 R4R3。
END
找出最大、最小,要比較雙字節的數據。
全部循環壹遍,所花費的時間,就太多了。
特別是多字節的數據,特費時間。
不如,利用這些時間,多采樣幾個數據,累加後,取平均值。
用向右移位,代替除法,特別方便。
那麽,采樣數據的個數,宜取:4、8、16。
個數再多,好像也沒有必要了。