数据排序实验报告.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、实验目的:1、学习WINDOWS平台下的编辑、编译、排错、调试方法。 2、学习修改和观察变量的方法;综合使用单步、断点调试的方法。 二、实验内容:编写并调试一个排序子程序,其功能为用冒泡法将内部RAM中几个单字节无符号正整数,按从小到大的次序重新排列。 三、实验器材:计算机 1台 四、实验步骤:1、参阅《硬件安装》把综合实验仪、仿真器与PC机串行口连起来,打开电源。 2、在PC机上用鼠标点击“KEIL uvision 2”图标,进入KEIL调试环境,选择串行口,点击“确认” 3、打开“项目/新建项目”,输入项目名,选择目标MCU,如:intel 89C52。 4、编辑文件:用鼠标点击[文件|新文件],在文本编辑器中输入以下程序: ORG 0000H MOV R3,#50H LOOP0: MOV A,R3 MOV R0,A ;指针送R0 MOV R7#0AH ;长度送R7 CLR 00H ;标志位为0 MOV A,@R0 LOOP1: INC R0 MOV R2,A CLR C MOV 22H,@R0 CJNE A,22H,LOOP2 ;相等吗? SETB C LOOP2: MOV A,R2 JC LOOP3 ;小于或等于不交换 SETB 00H XCH A,@R0 DEC R0 XCH A,@R0 INC R0 ;大于交换位置 LOOP3: MOV A,@R0 DJNZ R7,LOOP1 JB 00H,LOOP0 ;一次循环中有交换继续 LOOP: SJMP LOOP ;无交换退出 END 5、文件保存:用鼠标点击[文件|保存],在对话框中输入文件名。 6、为项目添加文件:单击左边的[项目工作区/源代码组1]右键在出现菜单中选择[添加文件到组“源代码组1” 7、为项目设置通讯口:单击左边的[项目工作区/目标1]右键在出现的菜单中选择[为目标“目标1”设置选项],在弹出的菜单中选择[调试]。在新窗口中选择使用Keil monitor-51 Driver。 8、文件编译、连接、装载:用鼠标点击[项目/重建所有目标文件],系统自动进行编译,并出现信息窗口。若有语法错误,则需重新修正,需再次执行重建所有目标文件;若无语法错误,点击[调试/启动/停止调试]后,进入调试状态。 9、设置观察窗口:用鼠标点击[视图/存储口窗口],在地址口输入CPU内部存贮区地址,回车之后出现地址为50H的数据显示于窗口中。 10、单步执行程序:按F11键一条一条地执行下去,注意观察左边寄存器区中相应的寄存器或者CPU内部存贮区中相应的数据寄存器单元的数据变化。 11、连续运行:用鼠标点击[外围设备/复位CPU],使PC指向0000H,点击[调试/运行]后,程序开始连续运行。如需暂停,用鼠标点击[调试/停止运行]。 12、断点运行:要使程序执行到某条指令处暂停,如希望程序执行到LOOP1处暂停,可按如下操作:将光标移到LOOP1处双击鼠标左键,即可设置断点,用鼠标点击[调试/运行],程序将在LOOP行停止运行。 13、复位:用鼠标点击[外围设备/复位CPU],强迫PC指向0000H。 五、实验框图: 六、思考问题:编一程序把50H-5AH中

文档评论(0)

asd3366 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档