实验三简单程序调试_第1页
实验三简单程序调试_第2页
实验三简单程序调试_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验三 简单程序调试一、实验目的初步掌握汇编语言程序设计及调试的方法二、实验仪器1、DVCC-598JH 单片开发机一台;2、WD-5 型直流稳压源一台。三、实验预习1、认真阅读实验指导书有关内容,明确实验目的、内容和操作步骤;2、对实验中的程序进行手工汇编;3、复习实验中相关指令的功能;4、复习顺序结构程序设计思想。四、实验内容程序一: BCD 码数的加法运算设有两个 4位压缩的 BCD 码数,一个数存放在片内 RAM31H(千位、百位) 和 30H(十位、个位)单元,另一个数高位存在 33H 单元,低位存在 32H 单元, 求两数之和,其结果存 30H和 31H单元。参考程序:地址目标程序

2、源程序ORG1000H10007830MOVR0,#30H10027932MOVR1,#32H1004E6MOVA,R0100527ADDA,R11006D4DAA1007F6MOVR0,A100808INC R0100909INC R1100AE6MOVA,R0100B37ADDCA,R1100CD4DAA100DF6MOVR0,A100E80FESJMP$END程序二:拆字程序设有一个 8 位二进制数存放在片内 RAM40H 单元,将其拆为两个 4 位二进制数,高 4 位存于41H 单元,低 4 位存于42H 单元。参考程序:ORG1000HSTART:MOVA,40H ;取数ANLA,#

3、0FH;屏蔽高四位MOV42H,A ;存低四位数MOVA,40H ;重新取数SWAPA;高低四位互换ANLA,#0FH;屏蔽低四位MOV41H,A ;存高四位数SJMP$END程序三: 负数求补程序已知一个 16 位二进制负数存放在 R1R0中,试求其补码,并将结果存在 R3R2 中。提示:二进制负数的求补方法可归纳为“求反加 1”。即可利用 CPL 指令实 现求反,而16位加1,则应是低 8位先加 1,高8位再加上低位的进行位。 注意, 这里不能用 INC 指令,因 INC 指令不影响标志位。参考程序:ORG1000HSTART:MOVA,R0;读低 8 位CPLA;取反ADDA,#01H;

4、加 1MOVR2,A;存低 8 位MOVA,R1;读高 8 位CPLA;取反ADDCA,#00H;加进位MOV20H,R1;高 8 位位寻址区MOVC, 07H ;符号位CMOVACC.7,C;恢复符号MOVR3,A;存高 8 位SJMP$END五、实验步骤1、认真阅读实验参考程序并分析程序运行后的理论结果;2、输入程序并检查输入是否正确;3、根据已知条件输入程序执行前的原始数据;4、执行程序,检查并记录结果;六、练习1、试编写计算 6655H+11FFH 的程序。提示:被加数和加数是 16 位数,需分两步完成计算,首先将两数的低位相 加,若有进位,保存在 CY中;然后再将两数的高 8 位连同进位位相加,结果存 入 50H、 51H 单元中。2、编写程序,将片内 41H 和 42H 单元的两个 4 位二进制数进行组合,存放 于 40H 单元。 41H 单元的数作为低 4 位, 42H 单元的数作为高 4 位。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论