当前位置:
文档之家› 22单片机的指令系统--位操作、子程序调用、返回和空操作指令
22单片机的指令系统--位操作、子程序调用、返回和空操作指令
机器码 C3 C2 bit D3 D2 bit B3 B2 bit 82 bit 72 bit
指令 字节 1 2 1 2 1 2 2
机器 周期 1 1 1 1 1 1 2
位修 SETB C 正指 SETB bit 令 CPL C CPL bit ANL C, bit 位逻 ANL C, /bit 辑指 ORL C, bit 令 ORL C, /bit
(3)子程序返回指令
子程序返回指令RET,功能是使CPU从子程序返回到主程 序的断点处,使主程序继续执行。
(4)中断返回RETI
中断返回指令RETI,功能是使CPU从中断服务子程序返
回主程序的断点处,同时清除相应的中断状态寄存器,开发 中断。 (5)空操作指令 执行空操作指令NOP,除PC内容加1外,不影响任何标志 位和其他寄存器。NOP指令常用来产生一个机器周期的延迟。
2 2 2 2
2 2 2 2
位 条 件 转 移 指 令
JNC rel
JB bit, rel
JNB bit, rel JBC bit, rel
直接位为1,则转移
直接位为0,则转移 直接位为1,则转移,且清零
20 bit rel
30 bit rel 10 bit rel
3
3 3
2
2 2
(1)位修正指令 位修正指令包括:位清零指令CLR、位置1指令SETB、位 取反指令CPL。 (2)位逻辑运算指令 位逻辑运算指令与字节逻辑运算指令相似。其中“/bit” 表示取反后在进行逻辑运算。 (3)位数据传送指令 位数据传送指令与字节数据传送指令相似。 (4)位条件转移类指令 位条件转移类指令与字节条件转移类指令相似,地址偏 移量rel的计算方法相同。
作业
进位位和直接位的反码相与 B0 bit
进位位和直接位的反码相或 A0 bit
2
2 2
2
2 2
位 传 送 指 令
MOV bit, C MOV C, bit JC rel
进位位向直接位单元传送 直接位向进位位传送 进位位C为1,则转移 进位位C为0,则转移
92 bit A2 bit 40 rel 50 rel
空操作 NOP 指令
(1)短调用指令
短调用指令ACALL指令的目标地址是11位。在调用子程 序时,该指令与AJMP指令类似,要求调用子程序的入口地址 与ACALL指令后面指令的第一个字节在同一个2 K页面的程序 存储器区域中。 (2)长调用指令
长调用指令LCALL指令的目标地址是16位。可在64 K程 序存储器区域范围内调用任何一个子程序。
类别
助记符
功能简介 绝对子程序调用 子程序长调用 子程序返回 中断返回 空操作
机器码 &1 addr7-0 12 addr15-8 addr7-0 22 32 00
指令 字节
2 3 1 1 1
机器 周期
2Hale Waihona Puke 2 2 2 1子程序 ACALL addr11 调用指 LCALL addr16 令 返回 指令 RET RETI
单片机的指令系统
位操作、子程序调用、返回和空操作指令
5.位操作指令
MCS-51单片机有丰富的位操作指令,可以把大
量的硬件组合逻辑用软件来代替,这样可以方便地
应用于各种逻辑控制,主要用于控制线路通、断,
继电器的吸合与释放等。位操作指令如表1-8所示。
类别
助记符 数 CLR C CLR bit
操作
功能简介 进位位清0 直接位清0 进位位置1 直接位置1 进位位取反 直接位取反 进位位和直接位相与 进位位和直接位相或