全球旧事资料 分类
较MOVXADPTRCJNEABSTAR3INCR0INCDPTRDJNZR7STAR2SJMP传送正确STAR3SJMP传送错误END如果读者使用星研集成环境软件,请考虑以下问题:1、运行程序前,打开变量窗、二个存贮器窗(一个选择片内数据;一个选择片外数据,起始地址选择1000H),每个存贮器窗有四个标签,有何好处?2、使用单步进入命令,运行到第十四行后,运行过程中变量窗有何变化?将鼠标停留在A、SP、R0、DPTR上一秒后,出现什么?它与变量窗使用场合的区别?3、将光标移到第十四行上,使用运行到光标处命令,观察运行结果,体会它与单步进入命令的不同处。4、在二十行上,设置一个断点,使用全速断点命令运行几次,观察运行结果,它与运行到光标处命令有何区别?5、使用全速运行命令,稍后,点击工具条上停止运行命令按钮,当前执行箭头停在哪一行?运行结果是否正确?它与全速断点运行命令有何区别?6、观察寄存器,有哪几种方法?1)在工作区窗的通用寄存器标签视中;2)变量窗3)鼠标停留在寄存器上4)观察窗5)寄存器窗7、查看CPU内部数据RAM、CPU片外数据RAM:1)存贮器窗2)变量窗3)鼠标停留在CPU内部数据RAM、CPU片外数据RAM的地址、R0、DPTR上六、思考题编写一个程序,将外部数据RAM中的数据传送到内部数据RAM中。
13
f实验二
冒泡排序
一、实验目的熟悉使用MCS51指令,掌握汇编语言的设计和调试方法,了解如何使用高效方法对数据排序。二、实验内容编写并调试一个排序程序,要求使用冒泡法将一组数据从小到大重新排列。三、程序框图
开始初始化堆栈将待排序数组转移到内部30H开始的RAM中数据数1→R7,数据交换标志bSort0PUSH07H被比较数地址R030H比较数地址R1R01NDECR7R0R1YR0与R1互换1→bSortINCINCNR0R1N
R7R71R70YPOPR7bSort0Y结束
冒泡排序程序框图
四、实验步骤使用断点方式调试程序,检查内部RAM30H~3FH中数据是否按从小到大的顺序排列。五、程序清单bSort
BITORGLJMPORGMOVMOVMOVMOVCLRMOVCMOVINCINC
F00000HSTAR0100HSP60HR030HR716DPTRTAB_1AAADPTRR0AR0DPTR
STAR
堆栈存放待排序数据的首地址数据个数
STAR1
将数据移入内部RAM中
14
fSTAR2
STAR3
STAR5
ExitTAB_1
DJNZR7STAR1MOVR7161存放比较次数PUSH07HMOVR030H存放启始地址CLRbSortMOVR100HINCR1MOVAR0MOVBAMOVAR1CJNEAB3JNCSTAR5XCHAR0MOVR1ASETBbSortINCR0INCR1DJNZR7STAR3POP07HJNBbSortExitDECR7SJMPSTAR2SJMPDB0H5H6H3H8H92H04H57H46H01H0FFH0A0H45H99H55H66HEND
六、思考题你还知道哪些排序方法?另外编写r
好听全球资料 返回顶部