当前位置:首页 > 单片机 > 单片机
[导读]MCS-51单片机指令系统按功能来分有五种.数据传送指令:MOV Rn,#data ;立即寻址,data→RnMOV A,@Ri ;间接寻址,((Ri))→A,i=0,1MOV direct,Rn ;寄存器寻址,(Rn)→directMOV @Ri,A ;寄存器寻址,(A)→(Ri

MCS-51单片机指令系统按功能来分有五种.

数据传送指令:

MOV Rn,#data ;立即寻址,data→Rn

MOV A,@Ri ;间接寻址,((Ri))→A,i=0,1

MOV direct,Rn ;寄存器寻址,(Rn)→direct

MOV @Ri,A ;寄存器寻址,(A)→(Ri)

MOV DPTR,#data16 ;把16位立即数传送到数据指针DPTR,高8位送DPH,低八位送DPL.

(例:MOV DPTR,#1234H;DPTR=1234H,DPH=12H,DPL=34H.)

MOVC A,@A+PC ;((A)+(PC)→A)

MOVX @DPTR,A ;寄存器间接寻址,(A)→(DPTR)

PUSH direct ;直接寻址.(SP)+1→SP,(direct)→SP

POP direct ;直接寻址,((SP))→direct,(SP-1)→SP

XCH A,Rn ;(A)←→(Rn)交换

XCHD A,@Rn ;(A)0~3←→((Rn))0~3

SWAP A ;(A)0~3←→(A)4~7

算术运算指令

ADD A,@Ri ;(A)+(Ri)→A,不带进位加法

ADDC A,Ri ;(A)+(Ri)+Cy→A

SUBB A,#data ;(A)-data-Cy→A

INC direct ;(direct)+1→direct,加一指令

DEC @Ri ;((Ri))-1→(Ri)

DA A ;十进制调整指令

MUL AB ;把A,B两个8位无符号数相乘,其16位积的低八位存入A,高八位存入B

,如果积大于255(0FFH),则置位溢出标志OV,进位标志Cy总是清零.

DIV AB ;A除以B.所得数的整数部分放入A,余数部分放入B

如果B为0,则A,B结果不变,置位溢出标志OV,进位标志Cy总是清零.

逻辑运算指令:

CLR A ;(A)=0

CPL A ;/A→A

RL A ;左循环移位1

RR A ;右循环移位1

RLC A ;A与Cy左循环移位1

RRC A ;A与Cy右循环移位1

ANL 逻辑与操作指令

ORL 逻辑或操作指令

XRL 逻辑异或操作指令

位操作指令:

MOV C,bit ;(bit)→Cy

CLR 清零

CPL 取反

SETB 置1

ANL 与

ORL 或

JC rel ;若Cy=1,则(PC)+2+rel→PC,若Cy=0,则(PC)+2→PC

JNC rel ;若Cy=1,则(PC)+2→PC,若Cy=0,则(PC)+2+rel→PC

JB bit,rel ;若(bit)=1,则(PC)+3+rel→PC,若(bit)=0,则(PC)+2→PC

JNB 与上相反

JBC bit,rel ;若(bit)=1,则(PC)+3+rel→PC且置(bit)=0,若bit=0,则(PC)+2→PC

控制转移指令:

AJMP addr ;绝对跳转指令

SJMP rel ;相对跳转指令,(PC)+2+rel→PC

LJMP addr16 ;长跳转指令,addr16→PC

JMP @A+DPTR ;间接跳转指令

JZ rel ;判零跳转指令,(A)=1,则(PC)+2+rel→PC,若A!=0,则(PC)+2→PC

JNZ rel ;与上相反

CJNE A,direct,rel;比较不相等跳转指令.执行过程为:a.(A)=(direct),则(PC)+3→(PC),Cy=0

b.(A)>(direct),则(PC)+3+rel→(PC),Cy=0

c.(A)<(direct),则(PC)+3+rel→(PC),Cy=1

DJNZ Rn,rel ;减一不为零跳转指令 .执行过错为 a.(PC)+2→PC. b.(Rn)-1→direct c.若Rn!=0,则(PC)+rel→PC;若direct=0,则程序往下执行

ACALL addr ;短调用指令

LCALL addr ;长调用指令

RET ;从子程序返回指令

RETI ;从中断返回指令

NOP ;空操作指令

指令助记注释:

ADDC ---Add with Carry Flag

SUBB ---Subtract With Borrow

INC ---- Increment

DEC-------Decrement

MUL----Multiply

DIV----Divide

DA----Decimal Adjust

MOV----move

MOVX----move external RAM

MOVC----move code

XCH----Exchange

XCHD----Exchange low-order Digit

ANL----and logical

ORL----or logical

XRL----exclusive-or logical

CLR----clear

CPL----complement logical

RL----rotate left

RR---rotate right

ACALL----absolute subroutine call

LCALL----long subroutine call

RET----return from subroutine

RETI----return from interrupt

AJUMP----absolute jump

LJMP----long jump

SJMP----short jump

JZ----jump if accumulator is zero

JNZ----jump if not zero

JC----jump if carray flag is set

JB----jump if direct bit not set

CJNE----compare jmp if not equal

DJNZ----decrement jump if zero

NOP----no operation

扩展阅读:PIC单片机指令周期计算

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Holtek隆重推出全新一代32-bit Arm® Cortex®-M0+ 5V CAN MCU - HT32F53231/HT32F53241/HT32F53242/HT32F53252。这一系列单片机带有来自Bosc...

关键字: MCU 工业自动化 单片机

Holtek精益求精,宣布推出全新5V宽电压Arm® Cortex®-M0+ 32-bit MCU系列HT32F50431/HT32F50441/HT32F50442/HT32F50452。此系列MCU经多方位升级能满...

关键字: 单片机 智能家居 工业控制

Mar. 19, 2024 ---- 据TrendForce集邦咨询研究显示,在NAND Flash涨价将持续至第二季的预期下,部分供应商为了减少亏损、降低成本,并寄望于今年重回获利。今年三月起铠侠/西部数据率先将产能利...

关键字: NAND Flash 铠侠 PC

单片机小精灵是一款针对单片机开发者的辅助工具,它集成了代码编辑、编译、调试等多项功能,旨在帮助开发者更加高效地进行单片机项目的开发。本文将详细介绍单片机小精灵的使用方法,帮助读者快速掌握这款工具,提高开发效率。

关键字: 单片机 代码编辑 辅助工具

单片机和PLC将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对二者的相关情况以及信息有所认识和了解,详细内容如下。

关键字: PLC 单片机

在这篇文章中,小编将对单片机的相关内容和情况加以介绍以帮助大家增进对单片机的了解程度,和小编一起来阅读以下内容吧。

关键字: 单片机 芯片 集成电路

一直以来,单片机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来单片机的相关介绍,详细内容请看下文。

关键字: 单片机 控制器

Mar. 6, 2024 ---- 据TrendForce集邦咨询研究显示,2023年第四季NAND Flash产业营收达114.9亿美元,季增24.5%。主要受惠于终端需求因年终促销回温,加上零部件市场因追价而扩大订单...

关键字: NAND Flash PC 智能手机

今天,小编将在这篇文章中为大家带来STM32单片机最小系统的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: 单片机 单片机最小系统 STM32

51单片机将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对51单片机的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 单片机 51单片机
关闭
关闭