实验要求是排序后去掉最大值最小值,然后把剩下的求平均数. 排序可以用之前的冒泡排序,关键的问题是求平均数.因为ARM没有除法,应该怎么求平均数呢? 最简单的方法就是减法了,用被除数一直减除数,看减了多少次就可以了. 然而要四舍五入,因为寄存器都是整数,保留余数再和除数的一半比较,如果大于就进一,小于等于就忽略 所以把被除数加上除数的一半(向下取整)再循环减除数就行. AREA EXAMPLE,CODE,READONLY ENTRY MOV R2,R0 LOOP_1 CMP R1,R0 BGE L