欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C51汇编语言程序设计.ppt

    • 资源ID:54697877       资源大小:301.50KB        全文页数:16页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C51汇编语言程序设计.ppt

    第第4章章 80C51汇编语言汇编语言程序设计程序设计4.1 4.1 概述概述汇编语言程序设计的步骤汇编语言程序设计的步骤 分析问题分析问题 确定算法确定算法 画出程序流程图画出程序流程图 分配内存单元分配内存单元 编写汇编语言源程序编写汇编语言源程序 汇编语言程序的调试汇编语言程序的调试4.1 4.1 概述概述汇编语言编程的注意事项汇编语言编程的注意事项 编写程序时应尽量使程序简短及缩短运行时间;编写程序时应尽量使程序简短及缩短运行时间;应尽量采用循环结构和子程序;应尽量采用循环结构和子程序;尽量少用无条件转移指令;尽量少用无条件转移指令;在设计程序时,还要考虑程序与数据的存放地在设计程序时,还要考虑程序与数据的存放地 址;址;对于通用子程序,要考虑保护现场;对于通用子程序,要考虑保护现场;对于中断处理,除了保护处理程序中用到的寄存对于中断处理,除了保护处理程序中用到的寄存 器外,还要保护程序状态字;器外,还要保护程序状态字;充分利用累加器。充分利用累加器。4.2 4.2 基本结构程序设计基本结构程序设计 程序设计的基本结构有:顺序结构、分支结构和循环结构。程序设计的基本结构有:顺序结构、分支结构和循环结构。4.2.1 顺序结构程序顺序结构程序例例4-2 将将30H单元的单元的2个个BCD码拆开并分别存入到码拆开并分别存入到31H和和32H 单元中。单元中。解:方法一:先把解:方法一:先把30H中低中低4位位BCD码交换出来,存入码交换出来,存入31H 中,再把高中,再把高4位位BCD码交换到低码交换到低4位存入位存入32H中。中。4.2 4.2 基本结构程序设计基本结构程序设计方法一:方法一:ORG 0000H LJMP MAIN ORG 0030HMAIN:MOV R0,#32H MOV R0,#00H MOV A,30H XCHD A,R0 SWAP A MOV 31H,A SJMP$END 见见42 a方法二:方法二:ORG 0000H LJMP START ORG 0030HSTART:MOV A,30H ANL A,#0FH MOV 31H,A MOV A,30H ANL A,#0F0H SWAP A MOV 32H,A SJMP$END 见见 42 b4.2 4.2 基本结构程序设计基本结构程序设计4.2.2 分支结构分支结构例例-两个单字节无符号数比较大小。两个单字节无符号数比较大小。设两个单字节无符号数分别存在内部设两个单字节无符号数分别存在内部 RAM 30H 和和31H 单元中,找出其中的大单元中,找出其中的大 数存入数存入32H 单元中。单元中。解:两个单字节无符号数比较大小的方解:两个单字节无符号数比较大小的方法通常是做减法,然后根据是否产生借位法通常是做减法,然后根据是否产生借位判断大小。还有一点要注意:累加器判断大小。还有一点要注意:累加器 在在减法运算前装的是被减数,减法运算后装减法运算前装的是被减数,减法运算后装的是差。思路框图如图的是差。思路框图如图-所示。所示。4.2 4.2 基本结构程序设计基本结构程序设计 ORG 0000H LJMP START ORG 0030HSTART:MOV R0,#30H MOV A,R0 INC R0 CLR C SUBB A,R0 JC BIG2 ADD A,R0 SJMP NEXT BIG2:MOV A,R0NEXT:INC R0 MOV R0,A SJMP$END4.2 4.2 基本结构程序设计基本结构程序设计例:例:4-5编程实现函数编程实现函数,已知已知(30H)=x,(31H)=y 。1 x 0 0 x0 1 x 0 解:算法:先判解:算法:先判x0,再判另外的两种情况。,再判另外的两种情况。程序框图程序框图:程序程序:ORG 0050H MOV A,30H JNZ LOP1 ;x0转移转移 MOV 31H,#00H SJMP NEXT LOP1:JB ACC.7,LOP2 ;x 0转移转移 MOV 31H,#01H SJMP NEXTLOP2:MOV 31H,#0FFHNEXT:SJMP$ENDy4.2 4.2 基本结构程序设计基本结构程序设计例:例:4-6例:某单片机应用系统中有例:某单片机应用系统中有8个按键,扫描后得到的键个按键,扫描后得到的键号,存放在号,存放在R2中,中,8个按键的处理程序的入口分别为个按键的处理程序的入口分别为KEY0、KEY1、.KEY7,请编写程序。,请编写程序。解:根据已知条件得到以下框图:解:根据已知条件得到以下框图:难点:无专用的多分支指令。难点:无专用的多分支指令。解决方法:用散转指令和转移指令配合使用。解决方法:用散转指令和转移指令配合使用。4.2 4.2 基本结构程序设计基本结构程序设计程序程序1:用:用AJMP 和和JMP 程序程序 KEY:MOV DPTR,#TAB;转移表的首址转移表的首址 MOV A,R2 RL A JMP A+DPTR TAB:AJMP KEY0 AJMP KEY1 AJMP KEY2 AJMP KEY3 AJMP KEY4 AJMP KEY5 AJMP KEY6 AJMP KEY7 KEY0:RETKEY1:RET KEY7:RET4.2 4.2 基本结构程序设计基本结构程序设计程序程序2:用:用LJMP 和和JMP 程序程序 KEY:MOV DPTR,#TAB;转移表的首址转移表的首址 MOV A,R2 RL A ADD A,R2 JMP A+DPTR TAB:LJMP KEY0 LJMP KEY1 LJMP KEY2 LJMP KEY3 LJMP KEY4 LJMP KEY5 LJMP KEY6 LJMP KEY7 KEY0:RETKEY1:RET KEY7:RET4.2 4.2 基本结构程序设计基本结构程序设计4.2.3 循环结构程序循环结构程序例:对内部例:对内部RAM 30H3FH清零,请编程。清零,请编程。解:解:ORG 0000H LJMP START ORG 0050HSTART:MOV R0,#30H ;R0指向指向30H MOV R7,#16 ;设定循环次数设定循环次数 LOP:MOV R0,#00H INC R0 DJNZ R7,LOP SJMP$END4.2 4.2 基本结构程序设计基本结构程序设计例:例:4-10 设计一个延时设计一个延时50ms的程序的程序 DEL :MOV R7,#200 DEL1:MOV R6,#123 NOP DEL2:DJNZ R6,DEL2 DJNZ R7,DEL1 RET 4.2 4.2 基本结构程序设计基本结构程序设计4.3 子程序设计子程序设计例:例:4-9已知已知(30H)=x,(31H)=y,(32H)=f,实现函数实现函数 f小于小于255DL:MOV DPTR,#TAB MOVC A,A+DPTR RETTAB:DB 00H,01H,04H,09H,10H DB 19H,24H,31H,40H,51H DB 64H,79H,90H,0A9H END ORG 0000H AJMP START ORG 0050HSTART:MOV A,30H LCALL DL MOV 32H,A MOV A,31H LCALL DL ADD A,32H MOV 32H,A SJMP$4.2 4.2 基本结构程序设计基本结构程序设计4.2 4.2 基本结构程序设计基本结构程序设计

    注意事项

    本文(C51汇编语言程序设计.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开