实验四数学运算和逻辑运算指令实验.doc_第1页
实验四数学运算和逻辑运算指令实验.doc_第2页
全文预览已结束

下载本文档

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

文档简介

实验四 数学运算和逻辑运算指令实验一、实验目的1、熟练使用数学与逻辑运算类指令,进行基本数据处理。2、初步掌握简单事物的编程设计和调试。3、熟悉51单片机位运算二、实验内容1、查看程序代码在单片机内部存在的位置和形式。2、熟练应用MOV指令、MOVX指令、MOVC指令,实现将数据在51单片机内部寄存器空间,RAM空间,以及外部RAM空间之间的转移。3、了解堆栈的设置和应用,以及堆栈指针SP的变化4、懂得在程序区域设置数据表三、实验步骤1、有两个加数,12H 和13H分别放在R0和R1处,编写如下参考程序,完成R3=R0+R1,编译、模拟调试,并回答下列问题:MOV R0, #12H ; 将立即数 12H 送到R0MOV R1, #13H MOV A, R0 ADD A, R1 ;运行到此,PSW中,CY= ,AC= PF= ;MOV R3, A ;运行到此,R3 的值为 ;ADD A, #00H ; 运行到此,PSW中,CY= ,AC= PF= ;END2、设有两个16位(双字节)的无符号数,其中被减数4567H存放在地址40H、41H的内部数据存储器单元,减数1234H 存放在地址42H、43H的地方,请完成如下计算: 3456H-1234H , 结果存放在44H 和45H地址单元处。CLRCMOVA , 40HSUBB A ,42H ;运行到此,A 的值为 PSW中,CY= ; MOV44H ,AMOVA ,41HSUBBA ,43H;运行到此,A 的值为 PSW中,CY= ;MOV45H ,AEND ;两数相减得结果= 3、编程程序实现下式计算: 1002H+R1*8-R2 结果存放在30H和31H数据存储单元处。其中R1=25H, R2=56H 。(注意乘法指令的应用,以及数据的位数).4、拆字游戏,设7000H单元有数据34H,把7000H的内容拆开,高位(3)保存到7001H单元,低位(4)保存到7002H单元。7001H、7002H高位清零,即(7001H)=03H,(7002H)=04H,执行如下程序,回答下列问题MOV A , 34H MOV DPTR, #7000HMOVX DPTR, A ;执行到此,置(7000H)=34HMOVX A , DPTR ;执行到此,SP= HSWAP A;执行到此,A= HANL A, #0FH;执行到此, A= HMOV DPTR, #7001HMOVX DPTR, AMOV DPTR, #7000H ;再次调出源数据34H MOVX A , DPTRANL A, #0FH;执行到此, A= HMOV DPTR, #7002HMOVX DPTR, AEND5、P0(地址:80H)是单片机的其中一个输出端口,假设其每一个位控制一个LED灯,当位值为1时,灯亮,位为0时,灯暗,调试如下程序:;程序调入时,P0= BMOV P0 , 3CH ;执行到此,P0= BMOV A , P0RL A;执行到此,A= BMOV P0, A ANL P0, #0FH ;执行到此,P0= BORL P0 , #05H ;执行到此,P0= BCLR P0.4 ;执行到此,P0= BSETB 87H ;执行到此,P0= BEND 如果此时,要把当前亮的灯

温馨提示

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

评论

0/150

提交评论