第3章MCS-5的指令系统 介绍MCS-51汇编语言的指令系统。 31指令系统概述 MCS-51的基本指令共111,按指令所占的字节来分: (1)单字节指令49条; (2)双字节指令45条; (3)三字节指令17条。 按指令的执行时间来分: (1)1个机器周期(12个时钟振荡周期)指令64条 (2)2个机器周期(24个时钟振荡周期)指令45条
第3章 MCS-51的指令系统 介绍MCS-51汇编语言的指令系统。 3.1 指令系统概述 MCS-51的基本指令共111条,按指令所占的字节来分: (1) 单字节指令49条; (2) 双字节指令45条; (3) 三字节指令17条。 按指令的执行时间来分: (1) 1个机器周期(12个时钟振荡周期)指令64条 (2) 2个机器周期(24个时钟振荡周期)指令45条
(3)只有乘、除两条指令的执行时间为4个机器周期(48 个时钟振荡周期)。 12MHz晶振:机器周期为1pus 32指令格式 两部分组成,即操作码和操作数。 操作码用来规定指令进行什么操作 操作数则是指令操作的对象 有单字节指令、双字节指令、三字节不同长度的指令, 格式不同: (1)单字节指令:指令只有一个字节,操作码和操作数 同在一个字节中
(3) 只有乘、除两条指令的执行时间为4个机器周期(48 个时钟振荡周期)。 12MHz晶振:机器周期为1s。 3.2 指令格式 两部分组成,即操作码和操作数。 操作码用来规定指令进行什么操作 操作数则是指令操作的对象 有单字节指令、双字节指令、三字节不同长度的指令, 格式不同: (1)单字节指令:指令只有一个字节,操作码和操作数 同在一个字节中
(2)双字节指令:一个字节为操作码,另一个字节是操 作数。 (3)三字节指令:操作码占一个字节,操作数占二个字 节。其中操作数既可能是数据,也可能是地址。 33指令系统的寻址方式 寻址方式就是在指令中说明操作数所在地址的方法。 共7种寻址方式。 1.寄存器寻址方式 操作数在寄存器中 MOV A, Rn,(Rn)-A, n=0-7 表示把寄存器Rm的内容传送给累加器A
(2)双字节指令:一个字节为操作码,另一个字节是操 作数。 (3)三字节指令:操作码占一个字节,操作数占二个字 节。其中操作数既可能是数据,也可能是地址。 3.3 指令系统的寻址方式 寻址方式就是在指令中说明操作数所在地址的方法。 共7种寻址方式。 1.寄存器寻址方式 操作数在寄存器中 MOV A,Rn ;(Rn)→A,n=0~7 表示把寄存器Rn的内容传送给累加器A
寻址范围包括: (1)4组通用工作寄存区共32个工作寄存器。 (2)部分特殊功能寄存器,例如A、B以及数据指针寄存 器DPTR等。 2.直接寻址方式 操作数直接以单元地址的形式给出: MOV A 40H 寻址范围: (1)内部RAM的128个单元 (2)特殊功能寄存器。除了以单元地址的形式外还可用 寄存器符号的形式给出。例如: MOVA,80H与MOVA,P0是等价的
寻址范围包括: (1)4组通用工作寄存区共32个工作寄存器。 (2)部分特殊功能寄存器,例如A、B 以及数据指针寄存 器DPTR等。 2.直接寻址方式 操作数直接以单元地址的形式给出: MOV A,40H 寻址范围: (1) 内部RAM的128个单元 (2) 特殊功能寄存器。除了以单元地址的形式外,还可用 寄存器符号的形式给出。例如: MOV A,80H 与 MOV A,P0是等价的
3寄存器间接寻址方式 寄存器中存放的是操作数的地址 在寄存器的名称前面加前缀标志“@” 访问内部RAM或外部数据存储器的低256个字节时,只能 采用R0或R1作为间址寄存器。例如 MOVA,@Ri;i=0或1 其中Ri中的内容为40H,把内部RAM40H单元内容送A。 寻址范围: (1)访问内部RAM低128个单元,其通用形式为aRi (2)对片外数据存储器的64K字节的间接寻址,例如: MOVX A,aDPTR
3. 寄存器间接寻址方式 寄存器中存放的是操作数的地址 在寄存器的名称前面加前缀标志“@” 访问内部RAM或外部数据存储器的低256个字节时,只能 采用R0或R1作为间址寄存器。例如: MOV A,@Ri ;i=0或1 其中Ri中的内容为40H,把内部RAM40H单元内容送A。 寻址范围: (1)访问内部RAM低128个单元,其通用形式为@Ri (2)对片外数据存储器的64K字节的间接寻址,例如: MOVX A,@DPTR