6 寻址方式与汇编语言.ppt

6 寻址方式与汇编语言.ppt

ID:48730333

大小:1.29 MB

页数:44页

时间:2020-01-20

6 寻址方式与汇编语言.ppt_第1页
6 寻址方式与汇编语言.ppt_第2页
6 寻址方式与汇编语言.ppt_第3页
6 寻址方式与汇编语言.ppt_第4页
6 寻址方式与汇编语言.ppt_第5页
资源描述:

《6 寻址方式与汇编语言.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、寻址方式与汇编语言2010年7月控制科学与工程学院汇编语言的指令格式汇编语言寻址方式1.机器语言用机器能够直接识别的二进制指令代码(即机器码或可执行的目标代码)编写的程序称为机器语言。执行速度快不易记忆,十分繁琐。特点:单片机语言功能:将累加器A赋值1机器码:860186:告诉单片机要实现什么功能01:就是数12.汇编语言用机器指令系统的助记符(能反映指令特征和操作性质的英文单词或英文缩写),用符号代替操作数来编写的程序称为汇编语言程序。用汇编语言编写的程序不仅执行速度快,又可以有效地利用机器本身的专有特性,从而提高机器的工作效率。用汇编语言编写的程

2、序由于面向机器,在一种机型上不能运行另一种机型的汇编程序,通用性差。特点:功能:将累加器A赋值1汇编语言:LDAA#$1LDDA:LOADAccumulatorA#$1:就是数1汇编语言指令格式汇编语言对格式有严格的要求。典型的汇编语言有4部分组成:label:MOVB#$66,X;注释标号操作码源操作数目的操作数注释操作码是指令功能的英文缩写,表示指令的功能,由助记符组成。操作数表示指令操作的对象,不同的指令操作的对象形式不同。注释说是为了方便阅读加的中文或者英文注释。可有可无。汇编语言是与硬件有关的语言,都是针对某一种类型的CPU。不同公司的产品

3、,其汇编语言中使用的助记符可能会略有差异,但是语法格式都是一样的。9S12单片机指令系统每条指令必须有操作码,操作数可以是0-3个9S12内核的指令系统一共有601条指令。汇编语言与机器语言指令是一一对应的。汇编常量的表示十进制:100,255十六进制:$55、$1234八进制:@77,@1000二进制:%01010101字符串:‘jkl”990’、”ADDX00’8”寻址方式寻址:操作数指定了参与运算的数或者数所在的地址。在单片机的存储空间中,寻找指令规定的操作数的地址。9S12内核有8种寻址方式。隐含寻址立即数寻址直接寻址扩展寻址相对寻址变址寻址

4、累加器变址寻址带自动加、减的5位偏移量变址寻址1.隐含寻址定义:只有操作码,没有操作数或操作数为寄存器,不显示操作数。如:NOP、PSHA、PSHB、PSHX、PSHY,隐含操作数分别为无、A、B、X、Y。一般是单字节指令隐含寻址举例;PC=C003,A=CB,SP=500NOP;PC=C004,A=CB,SP=500PSHA;A=CB,SP=4FF,[4FF]=CBNOP是单字节指令,只让程序计数器PC加1PSHA首先移动SP指针,再压入数值在立即数寻址方式下,指令中的操作数(参与运算的数)就直接存放在机器代码中,紧跟在操作码之后。这条指令汇编成机

5、器代码后,操作数作为指令的一部分存放在操作码之后的主存单元中。称这种操作数为立即数立即数寻址方式常用来给寄存器赋值。注:立即数前加#2.立即数寻址LDAA#$55;表示将十六进制立即数55加载到累加器A中LDX#1234;表示将十进制数1234加载到X中LDY#%01010101;表示将二进制数00100110加载到Y中3.直接寻址操作数是单字节地址,范围是$00~$FF,共256个单元,一般访问I/O寄存器。如:LDAA$55表示将$55内存单元的数据加载到累加器A。执行前:[55]=0,A=CB执行后:[55]=0,A=04.扩展寻址操作数为16

6、位地址,可访问64K空间。如:LDX$4000将$4000和$4001内存单元的数据加载到X。FREESCALE的MCU采用“低字节数放高位地址单元,高字节数放低位地址单元”。(1)若:[$4000]=$12,[$4001]=$34执行LDX$4000指令后,XH=$12,XL=$34(2)又如:STAA$4000;执行结果为A的内容存到$4000单元STAA:StoreAccumulatorA5.相对寻址相对转移指令。操作数为单字节如:LABEL1:……BRALABEL1……BRA:Branchalways6.变址寻址操作数由基地址寄存器(X、Y、

7、SP、PC)加偏移量构成。如:若X=$1000LDAA0,X;A=[$1000]LDAA7,X;A=[$1000+7]LDAA-150,X;A=[$1000-150]LDAA1000,X;A=[$1000+1000]LDAA[1000,X];将X+1000地址单元中的值作为指针,指向的内存单元的值加载到累加器A中7.累加器变址寻址偏移量非立即数,存放在累加器A、B、D中。如:若X=$1000LDABA,X;B=[X+A]LDAAD,X;A=[X+D]8.带自动加减的5位偏移量间接寻址有“先加、先减、后加、后减”四种方式。基址寄存器可以是X,Y,SP。

8、主要用于数据块复制。如:MOVW2,X+,4,+Y;执行该指令,将X开始单元的两个单元内容(一个字)传送到Y

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。