汇编实验三
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成绩:计算机原理实验室实验报告
课程:汇编语言与微机原理
姓名:汪智
专业:计算机科学与技术
学号:112054141
日期:2013年11月
太原工业学院
计算机工程系
实验三:循环程序实验
实验环境PC机+Win 2003+emu8086+proteus仿真器实验日期2013.11.14 一.实验内容
(一)基本内容
1.实现内存数据访问
2.用两种方法实现对五个字从大到小排序
(二)扩展内容
用冒泡法时实现快排
(三)思考内容
冒泡法属于快速排序的原因
二.理论分析或算法分析
取数;如果是正数则跳;如果是负数 先将 al 中的负数取补转成对应的正数;保存数据;显示 十位上的数值;显示个位数。
大于等于 小于
开始
CX=4
CX 进栈
mov bx,si
mov al,[bx]
mov bx,si cmp al,[bx] 交换 al,[bx]
CX=0
CX 出栈
SI+1;
CX=0
结束
三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等)
mov cx, len
lp1:
push cx
mov si, offset num lp2:
mov ax,[si]
cmp ax, [si+2] jae j1
xchg ax, [si+2] mov [si], ax
j1:
add si, 2
loop lp2
pop cx
loop lp1
jmp $
len equ 5-1
num dw 1,2,3,4,5 mov cx, len
mov si, offset num
lp1:
push cx
push si
mov ax, [si]
lp2:
add si, 2
cmp ax, [si]
jae j1
xchg ax, [si]
j1:
loop lp2
pop si
mov [si], ax
add si, 2
pop cx
loop lp1
jmp $
len equ 5-1
num dw 1,2,3,4,5
四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等)实现对1-5的排序:
五.结论
完成本次实验的两种排序方法,学会了用汇编语言进行排序。以前都是用高级语言进行排序功能,通过汇编让我更深入了解计算机的工作原理。