• 传统 51 与STC-Y5内核 51 单片机对比&汇编指令


    传统 51 与STC-Y5内核 51 单片机对比&汇编指令

    算术类指令 24

    汇编助记符功能说明字节数传统8051单片机所需时钟STC 8051单片机所需时钟
    ADD A,Rn寄存器内容加到累加器1121
    ADD A,direct直接地址中的数加载到累加器2122
    ADD A,@Ri间接 RAM 中的数据加到累加器1122
    ADD A,#data立即数加到累加器2122
    ADDC A,Rn寄存器带进位加到累加器1121
    ADDC A,direct直接地址单元中的数据带进位加到累加器2122
    ADDC A,@Ri间接 RAM 中的数据加到累加器1122
    ADDC A,#data立即数带进位加到累加器2122
    SUBB A,Rn累加器带借位减寄存器内容1121
    SUBB A,dircet累加器带借位减直接地址单元内容2122
    SUBB A,@Ri累加器带借位减间接 RAM 中的内容1122
    SUBB A,#data累加器带借位减立即数2122
    INC A累加器加11121
    INC Rn寄存器加11122
    INC direct直接地址单元加12123
    INC @Ri间接 RAM 单元加11123
    DEC A累加器减11121
    DEC Rn寄存器减11122
    DEC direct直接地址单元减12123
    DEC @Ri间接 RAM 单元减11123
    INC DPTR地址寄存器 DPTR 加11241
    MUL ABA乘以B1482
    DIV ABA除以B1486
    DA A累加器十进制调整1123

    逻辑类指令 25

    汇编助记符功能说明字节数传统8051单片机所需时钟STC 8051单片机所需时钟
    ANL A,Rn累加器与寄存器相 与1121
    ANL A,dircet累加器与直接地址单元相 与2122
    ANL A,@Ri累加器与间接 RAM 单元相 与1122
    ANL A,#data累加器与立即数相 与2122
    ANL direct,A直接地址单元与累加器相 与2123
    ANL direct,#data直接地址单元与立即数相 与3243
    ORL A,Rn累加器与寄存器相 或1121
    ORL A,dircet累加器与直接地址单元相 或2122
    ORL A,@Ri累加器与间接 RAM 单元相 或1122
    ORL A,#data累加器与立即数相 或2122
    ORL direct,A直接地址单元与累加器相 或2123
    ORL direct,#data直接地址单元与立即数相 或3243
    XRL A,Rn累加器与寄存器相 异或1121
    XRL A,dircet累加器与直接地址单元相 异或2122
    XRL A,@Ri累加器与间接 RAM 单元相 异或1122
    XRL A,#data累加器与立即数相 异或2122
    XRL direct,A直接地址单元与累加器相 异或2123
    XRL direct,#data直接地址单元与立即数相 异或3243
    CLR A累加器清 01121
    CPL A累加器取反1121
    RL A累加器循环左移1121
    RLC A累加器带进位位循环左移1121
    RR A累加器循环右移1121
    RRC A累加器带进位循环右移1121
    SWAP A累加器内高低半字节交换1121

    数据传送类指令 32

    汇编助记符功能说明字节数传统8051单片机所需时钟STC 8051单片机所需时钟
    MOV A,Rn寄存器内容送入累加器1121
    MOV A,direct直接地址单元中的数据送入累加器2122
    MOV A,@Ri间接 RAM 中的数据送入到累加器1122
    MOV A,#data立即数送入到累加器2122
    MOV Rn,A累加器内容送入到寄存器1121
    MOV Rn,direct直接地址单元的数据送入寄存器2243
    MOV Rn,#data立即数送入寄存器2122
    MOV direct,A累加器内容送入到直接地址单元2122
    MOV direct,Rn寄存器内容送入到直接地址单元2242
    MOV direct,direct直接地址单元内的数据送入到另一个直接地址单元3243
    MOV direct,@Ri间接 RAM 中的数据送入到直接地址单元2243
    MOV direct,#data立即数送入到直接地址单元3243
    MOV @Ri,A累加器内容送入到间接 RAM 单元1122
    MOV @Ri,direct直接地址单元数据送入到间接 RAM 单元2243
    MOV @Ri,#data立即数送入到间接 RAM 单元2122
    MOV DPTR,#data1616位立即数送入据指针3243
    MOVC A,@A+DPTR以DPTR为基地址变址寻址单元中的数据送入累加器1245
    MOVC A,@A+PC以PC为基地址 变址寻址 单元中的数据送入累加器1244
    MOVX A,@Ri将逻辑上在片外、物理上在片内的扩展RAM(8位地址)的内容送入累加器A中,读操作1243
    MOVX @Ri,A将累加器A的内容送入逻辑上在片外、物理上在片内的扩展RAM(8位地址)中,写操作1244
    MOVX A,@DPTR将逻辑上在片外、物理上在片内的扩展RAM(16位地址)的内容送入累加器A中,读操作1242
    MOVX @DPTR,A将累加器A的内容送入逻辑上在片外、物理上在片内的扩展RAM(16位地址)中,写操作1243
    MOVX A,@Ri将逻辑上在片外、物理上也在片外的扩展RAM(8位地址)的内容送入累加器A中,读操作124N的取值见 5xN+2 下列说明
    MOVX @Ri,A将累加器A的内容送入逻辑上在片外、物理上也在片外的扩展RAM(8位地址)中,写操作124N的取值见 5× N+3 下列说明
    MOVX A,@DPTR将逻辑上在片外、物理上也在片外的扩展RAM(16位地址)的内容送入累加器A中,读操作124N的取值见 5× N+1 下列说明
    MOVX @DPTR,A将累加器A的内容送入逻辑上在片外、物理上也在片外的扩展RAM(16位地址)中,写操作124N的取值见 5× N+2 下列说明
    PUSH direct直接地址单元中的数据压入堆栈2243
    POP direct栈底数据弹出送入接地址单元2242
    XCH A,Rn寄存器与累加器交换1122
    XCH A,direct直接地址单元与累加器交换2123
    XCH A,@Ri间接 RAM 与累加器交换1123
    XCHD A,@Ri间接RAM的低半字节与累加器交换1123

    当EXRTS[1:0] = [0,0]时,表中N=1
    当EXRTS[1:0] = [0,1]时,表中N=2
    当EXRTS[1:0] = [1,0]时,表中N=4
    当EXRTS[1:0] = [1,1]时,表中N=8

    布尔变量操作指令 17

    汇编助记符功能说明字节数传统8051单片机所需时钟STC 8051单片机所需时钟
    CLR C清0进位位1121
    CLR bit清0直接地址位2123
    SETB C置1进位位1121
    SETB bit置1直接地址位2123
    CPL C进位位取反1121
    CPL bit直接地址位取反2123
    ANL C,bit进位位与直接地址位 相与2242
    ANL C,/bit进位位与直接地址位的反码 相与2242
    ORL C,bit进位位与直接地址位 相或2242
    ORL C,/bit进位位与直接地址位的反码 相或2242
    MOV C,bit直接地址位送入到进位位2122
    MOV bit,C进位位送入到直接地址位2243
    JC rel进位位为1则跳转(rel为跳转地址)2243
    JNC rel进位位为0则调转(rel为跳转地址)2243
    JB bit,rel直接地址位为1则调转(rel为跳转地址)3245
    JNB bit,rel直接地址位为0则跳转(rel为跳转地址)3245
    JBC bit,rel直接地址位为1则跳转,该位清0(rel为跳转地址)3245

    控制转移类指令 17

    汇编助记符功能说明字节数传统8051单片机所需时钟STC 8051单片机所需时钟
    ACALL addr11绝对(短)调用子程序2244
    LCALL addr16长调用子程序2244
    RET子程序返回1244
    RETI中断返回1244
    AJMP addr11绝对(短)跳转2243
    LJMP addr16长跳转3244
    SJMP rel相对跳转(rel为跳转地址)2243
    JMP @A+DPTR相对于DPTR的间接跳转(rel为跳转地址)1245
    JZ rel累加器为0跳转(rel为跳转地址)2244
    JNZ rel累加器不为0跳转(rel为跳转地址)2244
    CJNE A,dircet,rel累加器与直接地址单元比较,不相等跳转(rel为跳转地址)3245
    CJNE A,#deta,rel累加器与立即数比较,不相等跳转(rel为跳转地址)3245
    CJNE Rn,#data,rel寄存器与立即数比较,不相等跳转(rel为跳转地址)3245
    CJNE @Ri,#data,rel间接 RAM 单元与立即数比较,不相等跳转(rel为跳转地址)3245
    DJNZ Rn,rel寄存器减1,非0跳转(rel为跳转地址)2244
    DJNZ direct,rel直接地址单元减1,非0跳转(rel为跳转地址)3245
    NOP空操作1121
  • 相关阅读:
    盘点 JavaScript 中类的继承
    倒数 3 天|RocketMQ 能力全景图即将发布,定义下一代消息队列未来方向
    RabbitMQ:基于DelayExchange插件实现延迟队列
    【Java】JavaFx桌面编程整理
    R语言ggplot2可视化:使用ggplot2可视化散点图、使用scale_x_log10函数配置X轴的数值范围为对数坐标
    SpringCloud面试题及答案 300道,springcloud面试题总结 (持续更新)
    kafka—消费者
    UDP和TCP协议发送接收数据
    Goldengate
    《游戏引擎架构》 -- 学习2
  • 原文地址:https://blog.csdn.net/qq_39567970/article/details/126437760