如何使用汇编语言实现冒泡排序?
怎么使用汇编语言实现冒泡排序
#include<stdio.h>
int main()
{int arr[10];int brr[10];int a,c,d,s,i;for(a=0; a<10; a++)scanf("%d",&arr[a]);for (c=0; c<9; c++){for(d=0; d<9-c; d++){if(arr[d]>arr[d+1]){s=arr[d];arr[d]=arr[d+1];arr[d+1]=s;}}}for(i=0; i<10; i++)printf("%d\n",arr[i]);return 0;
}
Assume cs:code,ds:data,ss:stackdata segmentdw 123h,5h,9h,11h,33h,6h,9h,76h;数据段初始化dw 100h,3h,6 dup(0);[14]内存存放外层已经循坏了多少次data endsstack segment;栈段初始化dw 0,0,0,0,0,0,0,0stack endscode segment;代码段start:mov ax,datamov ds,axmov ax,stackmov ss,axmov sp,10hmov cx,9mov bx,0mov dx,0L: ;外层循坏,固定为9次push cx;外层循坏cx值入栈mov ax,9sub ax,word ptr ds:[14h];内层循坏次数9-ds:[14]次mov cx,ax;将循坏次数mov到cx中mov ax,0mov bx,0s:;内存循坏开始,每次将第da:[14]+1大的数放到最后面mov ax,ds:[bx];取出第一个数值mov dx,ds:[bx+2];取出第二个数值cmp ax,dx;进行比较jna next;如果ax<=dx就转到next,否则就继续push ax;实现两个数的交换push dxpop ds:[bx]pop ds:[bx+2]next:nopadd bx,2;将bx往后移一个字loop spop cx;外层循坏cx出栈mov ax,0;mov ax,word ptr ds:[14h];这里三行实现ds:[14]计数功能计算外层循坏次数inc axmov word ptr ds:[14h],axloop Lmov ax,4c00hint 21hcode endsend start
这样就大功告成了。
如何使用汇编语言实现冒泡排序?相关推荐
- 汇编语言:冒泡排序算法将10个数按从小到大顺序排列
汇编语言:冒泡排序算法 题目描述 自定义一组有首地址为data的10个字的数组,请利用冒泡排序算法来编写程序,使该数组中的数按照从小到大的次序有序化.(注:10个字可以自己定义.) datas seg ...
- 汇编:汇编语言实现冒泡排序(loop指令实现)
1 ;=============================== 2 ;循环程序设计 3 ;loop指令实现 4 ;冒泡排序 5 ;for(int i=0;i<N;i++){ 6 ; for ...
- 汇编语言实现冒泡排序
目录 用汇编实现冒泡排序 硬件环境 软件环境 内容 流程图 汇编源代码 结果图 用汇编实现冒泡排序 硬件环境 Intel®Core™m3-7Y30.4.00GB 软件环境 Win10.ML615.DO ...
- 用汇编语言与C语言实验其他排序,微机原理实验报告冒泡排序
微机原理实验报告冒泡排序 五.运行结果 (1)对300,250,280,240,260五个数进行冒泡排序,运行结果如下: (2)对-1,2,54,-38,43五个数进行冒泡排序,运行结果如下 (1)当 ...
- 汇编语言-016(SCASB 、STOSB 、LODSD 、数组中的取值、二维数组操作、冒泡排序和二分查找、CMPSW )
1: SCASB : (字节)将AL的值与EDI寻址的一个字比较.进行在一个字符串检索特定的字符 .386 .model flat,stdcall.stack 4096 ExitProcess PRO ...
- 8086汇编语言实现数组冒泡排序(全注释)
微机原理上机第二次作业,任务要求如下: 大概的意思是,从键盘输入数组大小和数组里面的数据,首先显示数组数据,然后排个序,排完序之后再显示数组. 没听过课,肝了一整天,翻书+网上查资料终于写完了. 这里 ...
- [书]x86汇编语言:从实模式到保护模式 -- 第11章 进入保护模式,初识全局描述符表GDT; 第12章 别名,冒泡排序
第11章 进入保护模式:初始化全局描述符表,通过GDT进入代码段.数据段.堆栈段 ; FILE: c11_mbr.asm ; DATE: 20191229 ; TITLE: 硬盘主引导扇区代码; 设置 ...
- 汇编语言冒泡排序一看就懂
刚开始学汇编,遇到冒泡排序问题后开始在网上找了很多用汇编写的冒泡排序,但是初看效果并不好,于是自己根据之前学习的和c语言习惯,写了如下汇编程序,让大家更容易理解 代码如下,可以直接运行 // data ...
- c51汇编语言冒泡排序,汇编实现冒泡排序的方法示例
冒泡排序算法的运作如下:(从后往前) 1.比较相邻的元素.如果第一个比第二个大,就交换他们两个. 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. ...
最新文章
- Intellij IDEA 2018.2 搭建Spring Boot 应用
- C++ 虚函数、多态
- leetcode算法题--一周中的第几天
- 学会使用svn:externals
- 在子线程中使用runloop,正确操作NSTimer计时的注意点 三种可选方法
- factorybean与beanfactory
- nokia 计算机手机,NOKIA手机与电脑的数据线连接
- java伪代码生成器_JAVA单例模式的实现伪代码
- rust全息要啥才能做_在 Rust 中不能做什么
- 将list集合中按照某个字段排序(从大到小),然后将list中的对象倒序
- iphone微信 h5页音乐自动播放
- activity 工作流_智能风控决策引擎系统可落地实现方案(二)决策流实现
- 【收集】个人认为比较实用的电脑工具软件(附带安装包下载)
- Junipor交换机 HAS BOOTED FROM THE BACKUP JUNOS IMAGE
- 北京大学深圳研究生院计算机应用技术,北京大学计算机应用技术考研经验-北大深圳研究生院考研辅导班...
- 国产性能最稳定NFC读卡器芯片FSV9520完美替代CV520 SPI接口 可免费提供软硬件DEMO 快速研发产品
- IDEA如何集成P3C插件检测代码
- flume 从基础到高阶
- mc服务器维护成本,服务器不是随便开?运营成本才值几个钱,MC玩家这种误解从何而来...
- Linux命令:ifconfig出现command not found 的解决办法
热门文章
- 银行股从“宽货币”到“宽信用”的传导 中富金石老师建议“持股过年”
- emule-Xtreme(电驴)
- 电信linux笔试题,中国电信笔试题
- 据说是中国电信的java编程面试题
- 互联网广告市场下沉:快手趣头条必有一战
- office2019 下载安装在其他盘非系统盘
- 几款流行的ipad上的PDF阅读器评测
- 单片机C语言实现dc到ac的转换,单相AC-DC转换电路精要.doc
- 华为认证思科认证[hcna/hcia/ccna]总结思维导图(在学习的过程中手打的无私分享)后续有笔记总结,np内容后续也会发
- 下载的PPT模板有水印怎么去除?