第5章汇编语言程序设计.ppt

例9.在RAM地址$1000开始的10个单元里,分别存放10个无符号字节型数据,要求使用汇编语言编写一段程序,把10个数据按照从小到大的顺序排序。 冒泡排序原理: 若要排序的数有n个,则需要n-1轮排序,第i轮排序中,从第一个数 开始,相邻两数比较,若不符合所要求的顺序,则交换两者的位置;直到第n+1-i个数为止。第一个数与第二个数比较,第二个数与第三个数比较,......,第n-i个与第n+1-i个比较。此时第n+1-i个位置上的数已经按要求排好,所以不参加以后的比较和交换操作。 程序流程图 ORG $1000 data:FCB $12,$13,$11,$20,$10,$10,$19,$6,$1a,$fe ORG $4000 Entry: LDS #$3FFF ; initialize the stack pointer CLI ; enable interrupts LDX #data;X加载立即数$1000作为地址使用 LDY #9;Y加载立即数n-1作为外循环使用,n为数组元素个数 LOOP0:PSHY;外循环数进栈保存 LDX #data;X加载$1000作为地址 LOOP1:LDAA X;内循环n-1次开始,A加载第一个数

文档评论(0)

1亿VIP精品文档

相关文档