单片机03:指令系统与汇编语言程序设计.ppt

单片机03:指令系统与汇编语言程序设计.ppt

  1. 1、本文档共179页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机03:指令系统与汇编语言程序设计

§3.1 概述 一、基本概念 指令---计算机按人的要求执行某种操作的命令。 指令系统---一台计算机所能执行的指令集合。 程序---指令的有序集合。 指令一般有功能、时间和空间三种属性。功能属性是指每条指令都对应一个特定的操作功能;时间属性是指一条指令执行所用的时间,一般用机器周期来表示;空间属性是指一条指令在程序存储器中存储时所占用的字节数。 二、汇编的方法 1.手工汇编 (一般不采用); 2.机器汇编 【例3-1】设内部RAM (30H)=40H,(40H)=10H,(10H)=00H,(P1)=0CAH,分析以下程序执行后各单元及寄存器、P2口的内容。 MOV R0,#30H ;R0← 30H MOV A, @R0   ;A←((R0)) MOV R1, A ;R1←(A) MOV B, @R1   ;B←((R1)) MOV @R1, P1 ;(R1)←(P1) MOV P2, P1 ;P2←(P1) MOV 10H, #20H ;10H← 20H 执行上述指令后的结果为:(R0)=30H,(R1)=(A)=40H,(B)=10H,(40H)=(P1)=(P2)=0CAH,(10H)=20H。 【例3-2】设外部RAM(0203H)=FFH,分析以下指令执行后的结果。   MOV DPTR, #0203H ; DPTR←0203H   MOVX A, @DPTR ; A←((DPTR))   MOV 30H, A ; 30H←(A)   MOV A, #0FH ; A←0FH   MOVX @DPTR, A ; (DPTR)←(A) 执行结果为: (DPTR)=0203H,(30H)=FFH, (0203H)=(A)=0FH。 【例3-3】在程序存储器中,数据表格为: 1010H:02H 1011H:04H 1012H:06H 1013H:08H 执行程序: 1000H: MOV A, #10H ;A ←10H,查表的偏移量 1002H: MOVC A, @A+PC ;A ←(10H+1003H) 1003H: MOV R0, A ;R0 ←(A) 结果为:(A)=08H,(R0)=08H,(PC)=1004H。 【例3-4】在ROM 1000H开始存有5个字节数,编程将第二个字节数取出送片内RAM 30H单元中。程序段如下: MOV DPTR,#1000H ;置ROM地址指针(基址)DPTR MOV A,#01H ;表内序号送入A(变址) MOVC A,@A+DPTR ;从ROM 1001H单元中取数送到A(A)=67H MOV 30H,A ;再存入内RAM 30H中 ORG 1000H ;伪指令,定义数表起始地址 TAB: DB 55H,67H,9AH,… ;在ROM 1000H开始的空间中定义5个字节 【例3-7】数据传送类指令综合运用举例。 (1)将片内RAM 30H单元与40H单元中的内容互换,方法如下: 方法1(直接地址传送法): 方法2(字节交换传送法): MOV 31H,30H MOV A,30H MOV 30H,40H XCH A,40H MOV 40H,31H MOV 30H,A SJMP $ SJMP $ 方法3(间接地址传送法): 方法4(堆栈传送法): MOV R0,#40H PUSH 30H MOV R1,#30H PUSH 40H MOV A,@R0

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档