要求
在内部RAM30H开始的10个单元中连续存放着10个无符号随机数,编写一段程序,将这10个数中从大到小排列,存放在内部RAM40H开始的连续10个单元中。
将30H开头的10个单元格定义为TAB,将40H开头的10个单元格定义为TAB1。
思路是先将TAB中的数据复制到TAB1中,然后在进行冒泡排序。
代码:
DATAS SEGMENT
;此处输入数据段代码
ORG 0030H
TAB DB 2,4,9,6,3,5,7,0,8,1
ORG 0040H
TAB1 DB 10 DUP(?)
DATAS ENDS
STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
;此处输入代码段代码
;TAB中的数据复制到TAB1中
MOV CL,10
LEA SI,TAB
LEA DI,TAB1
XOR BX,BX
LOP:MOV AX,[SI+BX]
MOV [

博客介绍了如何使用汇编语言编写程序,对内部RAM30H开始的10个无符号随机数进行冒泡排序,将排序后的数从大到小存放在内部RAM40H的连续单元中。通过复制数据到临时区域,然后进行排序操作,最终展示了排序前后的数据对比。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



