- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
3.180c51指令系统概述
80C51指令系统专用于80C51系列单片微机,是一个具有
种操作码(00H至FA)的集合。
255FH,除5H外
用汇编语言表达操作代码时,只要熟记42种助记符。42种
助记符代表了33种功能,因为有的功能如数据传送,以有几种
可
助记符,如MOV、MOVC、MOVXo而指令功能助记符与操作
数各种寻址方式的结合,共构造出111种指令,同一种指令所对
至8种如指令中Rn对应寄存器R0-R7)。
应的操作码可以多(
.
31.1寻址方式
寻址方式就是在指令中给出的寻找操作数或操作数所在地
址的方法。执行任何一条指令都需要使用操作数。
80C51指令系统中共有以下7种寻址方式。
1.立即寻址
在指令中直接给出操作数,出现在指令中的操作数称为立
即数。为了与直接寻址指令中的直接地址相区别,在立即数前面
必需加上前缀。
例如:指令MOVDPTR,#1234H
3H即数,指令功能是把16位立即数1234H送入
124是立数
P,如图3-1所示。
据指针DTR中
2.直接寻址
在指令中直接给出操作数单元的地址。
,
例如:指令MOVA3AH
其功能是把片内RAM中3AH单元内的数据传送给累加器A,如图
3-2所示。
直接寻址方式只能给出8位地址,因此,这种寻址方式的寻址范围
只限于片内RAM。
2,
⑴低18单元在指令中直接以单元地址形式给出。
⑵特殊功能寄存器,这时除了可以单元地址形式给出外,还可
以寄存器符号形式给出。虽然特殊功能寄存器可以使用符号标志,
但在指令代码中还是按地址进行编码的。
应当说明的是,直接寻址是访问特殊功能寄存器的唯一方法。
3.寄存器寻址
在指令中将指定寄存器的内容作为操作数。因此指定了寄
存器就能得到操作数。
寄存器寻址方式中,用符号名称来表示寄存器。
例如:指令INCRO
其功能是把寄存器R0的内容加1,再送回R0中。由于操作
数在R0中,指定了R0,也就得到了操作数,如图3-3所示。
寄存器寻址方式的寻址范围包括:
(1)四个寄存器组共32个通用寄存器。但在指令中只能使用当
用前要通过指定S的R
前寄存器组。因此在使PW中SI、RSO,以
选择使用的当前寄存器组。
。如累加A、AB寄存
(2)部分特殊功能寄存器例器器对以及
来Ar-kF?士匕ALn
4.寄存器间接寻址
在指令中给出的寄存器内容是操作数的地址,从该地址中
取出的才是操作数。
寄存器间接寻址也需以寄存器符号名称的形式表示。为了
区别寄存器寻址和寄存器间接寻址,在寄
原创力文档


文档评论(0)