欢迎来到天天文库
浏览记录
ID:40132139
大小:1.53 MB
页数:96页
时间:2019-07-22
《单片机原理及其应用3——涂海燕》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章MC68HC08单片机指令系统3.1寻址方式3.2指令系统3.3汇编语言程序设计3.1寻址方式3.1.1立即寻址寻址方式总表直接寻直接寻址间接寻即无偏移量变址址方式扩展寻址址方式:寻址位寻址立即寻址相对寻址:直接变址寻址用变址寄存器的变址寻址位寻址用堆栈指针的变址寻址另:隐含寻址类别:立即寻址概念:操作数包含于指令中,即在操作码的后续字节中表达:汇编语言#data机器语言OPCODE,n例:AND#$0FCPX#10寻址区域:用户ROM或Flash3.1.2直接寻址类别:直接寻址(零页寻址)概念:指令中直接给出存放操作数
2、的低位字节地址,即操作数的有效地址EA的低位存放于操作码后续的一个字节中,地址的高位字节默认为$00,且不含在指令中。在单字节地址前加符号“<”表示直接寻址。表达:汇编语言addr8机器语言OPCODE,n例:LDA$40或LDA<$40寻址区域:存储器中最低256个字节,即$0000~$00FF类别:直接寻址概念:指令中直接给出存放操作数的2字节地址,即操作数的有效地址EA存放于操作码后续的2个字节中表达:汇编语言addr16机器语言OPCODE,m,n例:SUB$1540寻址区域:存储器中的任何一个字节,即$0000~$F
3、FFF3.1.3扩展寻址类别:间接寻址概念:指令中指出存放操作数的1或2字节地址由变址寄存器H:X给出,如果没有一个指令修改H寄存器中的内容,H寄存器中的值将默认为$00。该寻址方式可以移动链表指针或锁定一个经常使用的RAM地址或输入输出地址。表达:汇编语言,X机器语言OPCODE例:ADD,X寻址区域:存储器中的任何地方3.1.4无偏移量变址寻址(IX)3.1.5相对寻址类别:变址寻址概念:指令中指出如果发生转移,转移地址由操作码后提供的8位有符号整数(1字节)作为偏移量加上PC提供的基地址(PC的当前值)而得出。相对寻址只
4、用于转移指令(包括转子指令)。表达:汇编语言标号机器语言OPCODE,n例:BLOLOOPBSRDISPLY寻址区域:用户ROM或Flash中PC当前值所表达地址的-128到+127(或操作码起始地址的-126到+129)类别:变址寻址概念:指令中指出存放操作数的有效地址EA由变址寄存器H:X提供的基地址和操作码后提供的8位无符号整数(1字节)的偏移量相加而得出。表达:汇编语言偏移量,X机器语言OPCODE,n例:DEC$40,X寻址区域:存储器中的任何地方3.1.68位偏移量变址寻址(IX1)3.1.716位偏移量变址寻址(
5、IX2)类别:变址寻址概念:指令中指出存放操作数的有效地址EA由变址寄存器H:X提供的基地址和操作码后提供的16位无符号整数(2字节)的偏移量相加而得出。表达:汇编语言偏移量,X机器语言OPCODE,m,n例:ADD$1240,X寻址区域:存储器中的任何地方3.1.8用堆栈指针的8位偏移量变址寻址类别:变址寻址概念:指令中指出存放操作数的有效地址EA由堆栈指针SP提供的基地址和操作码后提供的8位无符号整数(1字节)的偏移量相加而得出。该寻址方式可方便访问堆栈中的数据,但访问时间将会长一些。表达:汇编语言偏移量,SP机器语言OP
6、CODE,n例:DEC$40,SP寻址区域:堆栈中的任何地方3.1.9用堆栈指针的16位偏移量变址寻址类别:变址寻址概念:指令中指出存放操作数的有效地址EA由堆栈指针SP提供的基地址和操作码后提供的16位无符号整数(2字节)的偏移量相加而得出。表达:汇编语言偏移量,SP机器语言OPCODE,m,n例:ADD$1240,SP寻址区域:堆栈中的任何地方3.1.10直接位寻址类别:直接位寻址概念:指令中指出存放位操作数(0或1)的直接位地址,该位地址由操作码中的相应位来表达。表达:汇编语言bit机器语言OPCODE中的相应位例:BS
7、ET5,$40寻址区域:存储器中的前256个字节中的任何可读写的位,即$0000~$00FF中的任何可读写的位3.1.11隐含寻址类别:隐含寻址概念:指令中以隐含方式指出存放操作数的地址,该地址以操作码来指定,而不提供地址的任何信息。表达:汇编语言指令本身机器语言无例:TAX寻址区域:专对A、H、X、CCR等3.1.12存储器到存储器的寻址方式存储器到存储器的寻址方式有4种不同的形式:(1)立即寻址到直接寻址(2)直接寻址到直接寻址(3)自动变址寻址到直接寻址(4)直接寻址到自动变址寻址指令格式为:MOV源地址,目的地址1.立
8、即寻址到直接寻址操作码后紧跟的操作数将被存储到操作码后第二个字节所指的地址中。通常用来初始化变量和寄存器,用这种寻址方式的传送指令不影响累加器的值。例如MOV#$05,$C52.直接寻址到直接寻址操作码后第一个字节是源操作数的地址,第二个字节是目的操作数的地址。通常用于在存储
此文档下载收益归作者所有