MCS-51汇编

伪指令:

EQU:

Equal,定义常量

复制代码
COUNT EQU 10H    ; 定义一个符号名COUNT,其值为10H
DELAY EQU 500    ; 定义一个符号名DELAY,其值为500

数据传送:

MOV:

MOVE,传送数据

MOVC:

算术运算:

跳转:

LJMP

Long Jump,长跳转

复制代码
LJMP label
  • 无条件跳转: 程序执行到 LJMP 指令时,会立即跳转到标号 label 所指定的位置继续执行,而不再执行 LJMP 指令之后的指令。
  • 长跳转: 与短跳转指令 SJMP 相比,LJMP 的跳转范围更大,可以跳转到程序空间的任意位置,而不受限于当前指令的附近。

SJMP

Short Jump,短跳转

复制代码
SJMP label
  • 短跳转: 程序执行到 SJMP 指令时,会立即跳转到标号 label 所指定的位置继续执行,而不再执行 SJMP 指令之后的指令。
  • 跳转范围有限: SJMP 指令的跳转范围是相对于当前指令的,通常在-128到+127字节之间。

DJNZ

Decrement and Jump If Not Zero

复制代码
DJNZ Rn, rel
DJNZ direct, rel
  • 减一操作: 指令执行时,会先将 Rn 寄存器或 direct 所指向的内存单元中的值减1。
  • 判断是否为零: 然后判断减1后的结果是否为0。
  • 条件跳转: 如果减1后的结果不为0,则程序跳转到当前指令地址加上 rel 所指定的偏移量处继续执行;如果结果为0,则程序继续顺序执行下一条指令。

CJNE

Compare and Jump if Not Equal

复制代码
CINE A,dir, rel
CINE A, #data,rel
CINE Rn,#data,rel
CINE @Ri,#data, rel
  • 比较两个操作数: CJNE 指令会比较两个操作数的值。
  • 条件跳转: 如果两个操作数不相等,则程序会跳转到指定的标号处继续执行。

JB

Jump if Bit is set

AJMP

Absolute Jump Within 2K

RET

Return from subroutine,从当前子程序返回到调用它的主程序

RETI

Return from Interrupt,中断服务程序返回到主程序

位操作:

RL

Rotate Left,循环左移

复制代码
RL A
  • A中的最高位(bit7)移入进位标志位C。
  • A中的其他各位向左移动一位。
  • C中的位移入A的最低位(bit0)

CPL

Complement

取反

END

cpp 复制代码
END [标号]
  • END: 这是指令的关键字,表示程序结束。
  • 标号 是可选的。如果指定了标号,那么程序执行时会从这个标号处开始。通常,这个标号是程序的起始地址。

NOP

No Operation

即"空操作"。它的作用就是在程序执行过程中不进行任何实际操作,仅仅让程序计数器PC加1,从而实现一个机器周期的延时

相关推荐
国科安芯9 小时前
抗辐射MCU在低轨卫星电源管理单元中的电压监测与保护策略研究
大数据·单片机·嵌入式硬件·电源管理·低轨卫星·抗辐射·星间链路
分享资料10 小时前
去耦电容和旁路电容的区别
嵌入式硬件·硬件工程
深圳市恒锐丰科技杨生10 小时前
LTK118 2‑7V 单通道 H 桥直流有刷电机驱动芯片|集成 MOS 低压消费类驱动方案
嵌入式硬件·硬件工程
星河单片机10 小时前
STM32读取电阻式土壤湿度模块+OLED显示完整教程
stm32·单片机·嵌入式硬件·土壤湿度
szxinmai主板定制专家11 小时前
基于 RK3576 的智能割草机器人解决方案,从样机到量产
人工智能·嵌入式硬件·计算机视觉·fpga开发·机器人·rk3588+fpga·割草机器人
单片机仿真设计12 小时前
【proteus仿真】基于单片机的水肥一体化智能监控系统(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus
国科安芯12 小时前
基于抗辐射MCU的卫星分布式控制系统CANFD总线架构研究
网络·人工智能·分布式·单片机·嵌入式硬件·架构·抗辐射
G***技21 小时前
告别“云端依赖”:LH707 如何重构 AI 视频监控的底层逻辑?
人工智能·嵌入式硬件
ShallWeL1 天前
Orin 上多模型常驻与显存预算
人工智能·嵌入式硬件·nvidia·orin
亮工硬件1 天前
1-11 STM32内部FLASH(数据掉电保存)
笔记·stm32·单片机·嵌入式硬件·学习