ARM汇编-冒泡排序-实验报告.docx

ARM汇编-冒泡排序-实验报告.docx

ID:53246067

大小:30.36 KB

页数:3页

时间:2020-04-02

ARM汇编-冒泡排序-实验报告.docx_第1页
ARM汇编-冒泡排序-实验报告.docx_第2页
ARM汇编-冒泡排序-实验报告.docx_第3页
资源描述:

《ARM汇编-冒泡排序-实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验要求实现字符串冒泡排序。实验过程首先在内存中定义字符串,使用的方法是AREASORTDATA,DATA,READWRITEstrDCB""lenDCD10DCB表示在内存中开辟一个byte的空间。DCD则表示开辟一个word的空间采用两层循环来进行冒泡排序。第一层循环首先把r1初始化为字符串首地址,把r5初始化为0,r5代表内循环执行次数。然后把r4减1,因为最后的一个字符已经排好序了。如果r4=0,代表排序已经完成,调到结束代码。loop0MOVr1,r0;r1isthestartaddressofstringSUBSr4,r4,#1;r4isthelastin

2、dex,thecounterCMPr4,#0BEQendMOVr5,#0第二层循环就是从左往右对字符进行交换,每次把r1和r5的值都增加1。当r5=r4的时候就跳出循环,到达外层循环。;ineveryloop,swapthevalueofcontiguoustwobytesfromthestarttostart+r4;usingr1astheaddress,incrementineveryinnerloop;usingr2,r3toloadthetwobytesthencompare;ifr3issmallerthanr2,;thenstorethevalinswap

3、pedplaceloopLDRBr2,[r1]LDRBr3,[r1,#1]CMPr2,r3STRGTBr2,[r1,#1]STRGTBr3,[r1]ADDr1,r1,#1ADDr5,r5,#1CMPr5,r4BNEloop;ifreachestheend,branchtoouterloopBloop0为了让字符从小到大排列,在CMPr2,r3后,连续使用STRGT(StoreGreaterThan),如果r2>r3,就分别把他们存进对方的地址实现交换。程序执行到底,可以看到字符均已经排好序。实验结论通过本次实验,我对ARM汇编的基本指令更加了解了,知道了简单的分支指令

4、,条件指令和访存指令的使用方法。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。