汇编指令大全

阅读: 评论:0

2024年1月30日发(作者:)

汇编指令大全

ORG 0000H

NOP ;空操作指令

AJMP L0003 ;绝对转移指令

L0003: LJMP L0006 ;长调用指令

L0006: RR A ;累加器A内容右移 (先置A为88H)

INC A ; 累加器A 内容加1

INC 01H ;直接地址(字节01H)内容加1

INC @R0 ; R0的内容 (为地址) 的内容即间接RAM加1

;(设R0=02H,02H=03H,单步执行后02H=04H)

INC @R1 ; R1的内容 (为地址) 的内容即间接RAM加1

;(设R1=02H,02H=03H,单步执行后02H=04H)

INC R0 ; R0的内容加1 (设R0为00H,单步执行后查R0内容为多少)

INC R1 ; R1的内容加1(设R1为01H,单步执行后查R1内容为多少)

INC R2 ; R2的内容加1 (设R2为02H,单步执行后查R2内容为多少)

INC R3 ; R3的内容加1(设R3为03H,单步执行后查R3内容为多少)

INC R4 ; R4的内容加1(设R4为04H,单步执行后查R4内容为多少)

INC R5 ; R5的内容加1(设R5为05H,单步执行后查R5内容为多少)

INC R6 ; R6的内容加1(设R6为06H,单步执行后查R6内容为多少)

INC R7 ; R7的内容加1(设R7为07H,单步执行后查R7内容为多少)

JBC 20H,L0017; 如果位(如20H,即24H的0位)为1,则转移并清0该位

L0017: ACALL S0019 ;绝对调用

S0019: LCALL S001C ;长调用

S001C: RRC A ;累加器A的内容带进位位右移(设A=11H,C=0

;单步执行后查A和C内容为多少)

DEC A ;A的内容减1

DEC 01H ;直接地址(01H)内容减1

DEC @R0 ;R0间址减1,即R0的内容为地址,该地址的内容减1

DEC @R1 ; R1间址减1

DEC R0 ; R0内容减1

DEC R1 ; R1内容减1

DEC R2 ; R2内容减1

DEC R3 ; R3内容减1

DEC R4 ; R4内容减1

DEC R5 ; R5内容减1

DEC R6 ; R6内容减1

DEC R7 ; R7内容减1

JB 20H,L002D;如果位(20H,即24H的0位)为1则转移

L002D: AJMP L0017 ;绝对转移

RET ;子程序返回指令

RL A ;A左移

ADD A,#01H ;A的内容与立即数(01H)相加

ADD A,01H ; A的内容与直接地址 (01H内容)相加

ADD A,@R0 ; A的内容与寄存器R0的间址内容相加

ADD A,@R1 ; A的内容与寄存器R1的间址内容相加

ADD A,R0 ; A的内容与寄存器R0的内容相加

ADD A,R1 ; A的内容与寄存器R1的内容相加

ADD A,R2 ; A的内容与寄存器R2的内容相加

ADD A,R3 ; A的内容与寄存器R3的内容相加

ADD A,R4 ; A的内容与寄存器R4的内容相加

ADD A,R5 ; A的内容与寄存器R5的内容相加

ADD A,R6 ; A的内容与寄存器R6的内容相加

ADD A,R7 ; A的内容与寄存器R7的内容相加

JNB 30H,L0041 ;直接位(30H)为0相对转移

L0041: ACALL S0100 ;绝对调用

RETI ;中断返回指令

RLC A ;带进位位左移

ADDC A,#02H ;A带进位位与立即数(#02H)相加

ADDC A,02H ; A带进位位与直接地扯(02H内容)相加

ADDC A,@R0 ; A带进位位与R0间扯内容相加

ADDC A,@R1 ; A带进位位与R1间扯内容相加

ADDC A,R0 ; A带进位位与R0内容相加

ADDC A,R1 ; A带进位位与R1内容相加

ADDC A,R2 ; A带进位位与R2内容相加

ADDC A,R3 ; A带进位位与R3内容相加

ADDC A,R4 ; A带进位位与R4内容相加

ADDC A,R5 ; A带进位位与R5内容相加

ADDC A,R6 ; A带进位位与R6内容相加

ADDC A,R7 ; A带进位位与R7内容相加

JC L0095 ;进位为1转移

NOP

AJMP L0017 ;绝对转移

ORL 02H,A ;直接地址内容与A或

ORL 02H,#02H ; 直接地址内容与立即数或

ORL A,#44H ;A与立即数或

ORL A,02H ; A与直接地址内容或

ORL A,@R0 ; A与R0间址内容或

ORL A,@R1 ; A与R1间址内容或

ORL A,R0 ; A与R0内容或

ORL A,R1 ; A与R1内容或

ORL A,R2 ; A与R2内容或

ORL A,R3 ; A与R3内容或

ORL A,R4 ; A与R4内容或

ORL A,R5 ; A与R5内容或

ORL A,R6 ; A与R6内容或

ORL A,R7 ; A与R7内容或

JNC L0017 ;进位为0转移

ACALL L0017 ;绝对调用

ANL 02H,A ; 直接地址与A与

ANL 02H,#02H ; 立即数与直接地址与

ANL A,#02H ; A与立即数与

ANL A,02H ;A与直接地址与

ANL A,@R0 ; A与R0间址与

ANL A,@R1 ; A与R1间址与

ANL A,R0 ; A与R0与

ANL A,R1 ; A与R1与

ANL A,R2 ; A与R2与

ANL A,R3 ; A与R3与

ANL A,R4 ; A与R4与

ANL A,R5 ; A与R5与

ANL A,R6 ; A与R6与

ANL A,R7 ; A与R7与

JZ L0084 ;A为零转移

L0084: AJMP L0017 ;绝对转移

XRL 01H,A ;直接地址与A异或

XRL 02H,#01H ; 直接地址与立即数异或

XRL A,#01H ;A与立即数异或

XRL A,01H ; A与直接地址异或

XRL A,@R0 ; A与R0间址址异或

XRL A,@R1 ; A与R1间址址异或

XRL A,R0 ; A与R0异或

XRL A,R1 ; A与R1异或

XRL A,R2 ; A与R2异或

XRL A,R3 ; A与R3异或

XRL A,R4 ; A与R4异或

L0095: XRL A,R5 ; A与R5异或

XRL A,R6 ; A与R6异或

XRL A,R7 ; A与R7异或

JNZ L0084 ;A不为零转

L009A: ACALL L0084 ;绝对调用

ORL C,01H ;直接位或到进位

JMP @A+DPTR;相对于DPTR间接转

MOV A,#01H ;立即数送A

MOV 01H,#02H ;立即数送直接地址

MOV @R0,#01H ;立即数送间址R0

MOV @R1,#02H ; 立即数送间址R1

MOV R0,#01H ; 立即数送R0

MOV R1,#01H ; 立即数送R1

MOV R2,#01H ; 立即数送R2

MOV R3,#01H ; 立即数送R3

MOV R4,#01H ; 立即数送R4

MOV R5,#01H ; 立即数送R5

MOV R6,#01H ; 立即数送R6

MOV R7,#01H ; 立即数送R7

SJMP L00BA ;短转移

L00BA: AJMP L0095 ;绝对转移

ANL C,02H ;直接地址与进位与

ORG 00C0H ;

MOV 02H,01H ;直接地址送直接地址

MOV 01H,@R0;间址R0送直接地址

MOV 01H,@R1; 间址R1送直接地址

MOV 01H,R0 ; R0送直接地址

MOV 01H,R1 ; R1送直接地址

MOV 01H,R2 ; R2送直接地址

MOV 01H,R3 ; R3送直接地址

MOV 01H,R4 ; R4送直接地址

MOV 01H,R5 ; R5送直接地址

MOV 01H,R6 ; R6送直接地址

MOV 01H,R7 ; R7送直接地址

NOP

MOV DPTR,#1234H;建立数据指针地址为1234H

ACALL L00BA ;绝对调用

MOV 03H,C ;进位送03H位(即20H的03位)

MOVC A,@A+DPTR ;由A+DPTR寻扯的程序存贮器字节送A

SUBB A,#01H ;A减去立即数和进位位

SUBB A,02H ; A减去直接地址内容和进位位

SUBB A,@R0 ; A减去R0间接RAM和进位位

SUBB A,@R1 ; A减去R1间接RAM和进位位

SUBB A,R0 ; A减去R0和进位位

SUBB A,R1 ; A减去R1和进位位

SUBB A,R2 ; A减去R2和进位位

SUBB A,R3 ; A减去R3和进位位

SUBB A,R4 ; A减去R4和进位位

SUBB A,R5 ; A减去R5和进位位

SUBB A,R6 ; A减去R6和进位位

SUBB A,R7 ; A减去R7和进位位

ORL C,/00H ;直接位的反或到进位

AJMP L0084 ;绝对转移

MOV C,03H ;直接位数送进位

INC DPTR ;数据指针加1

MUL AB ;A乘以B

NOP ;A5H为二字节空操作指令

NOP

MOV @R0,05H ;直接字芯送R0间接RAM

MOV @R1,05H ; 直接字芯送R1间接RAM

MOV R0,05H ; 直接字芯送R0

MOV R1,05H ; 直接字芯送R1

S0100: MOV R2,05H ; 直接字芯送R2

MOV R3,05H ; 直接字芯送R3

MOV R4,05H ; 直接字芯送R4

MOV R5,05H ; 直接字芯送R5

MOV R6,05H ; 直接字芯送R6

MOV R7,05H ; 直接字芯送R7

ANL C,/04H ; 直接位的反与到进位

ACALL S0100 ;绝对调用

CPL 04H ;直接位取反

CPL C ;进位取反

CJNE A,#01H,L0139 ;立即数与A比较,不相等则转移

CJNE A,01H,L0139 ; 直接字节与A比较,不相等则转移

CJNE @R0,#01H,L0139 ; 立即数与R0间接RAM比较,不相等则转移

CJNE @R1,#01H,L0139 ; 立即数与R1间接RAM比较,不相等则转移

CJNE R0,#01H,L0139 ; 立即数与R0比较,不相等则转移

CJNE R1,#01H,L0139 ; 立即数与R1比较,不相等则转移

CJNE R2,#01H,L0139 ; 立即数与R2比较,不相等则转移

CJNE R3,#01H,L0139 ; 立即数与R3比较,不相等则转移

CJNE R4,#01H,L0139 ; 立即数与R4比较,不相等则转移

CJNE R5,#01H,L0139 ; 立即数与R5比较,不相等则转移

CJNE R6,#01H,L0139 ; 立即数与R6比较,不相等则转移

CJNE R7,#01H,L0139 ; 立即数与R7比较,不相等则转移

PUSH 00H ;直接字节进栈,SP加1

L0139: AJMP L0084 ;绝对转移

CLR 04H ;直接位清零

CLR C ;清零进位

SWAP A ;A左环移四位(A的二个半字节交换)

XCH A,05H ;交换A和直接字节

XCH A,@R0 ; 交换A和R0间接RAM

XCH A,@R1 ; 交换A和R1间接RAM

XCH A,R0 ; 交换A和R0

XCH A,R1 ; 交换A和R1

XCH A,R2 ; 交换A和R2

XCH A,R3 ; 交换A和R3

XCH A,R4 ; 交换A和R4

XCH A,R5 ; 交换A和R5

XCH A,R6 ; 交换A和R6

XCH A,R7 ; 交换A和R7

POP 00H ;直接字节出栈,SP减1

ACALL L0139 ;绝对调用

SETB 03H ;置位直接位

SETB C ;置位进位

DA A ;A的十进制加法调熊

DJNZ 01H,L0139 ;直接字节减1,不为零则转移

XCHD A,@R0 ;交换A和R0间接RAM的低4位

XCHD A,@R1 ; 交换A和R1间接RAM的低4位

L0158: DJNZ R0,L0139 ; R0减1,不为零则转移

DJNZ R1,L0158 ; R1减1,不为零则转移

DJNZ R2,L0158 ; R2减1,不为零则转移

DJNZ R3,L0158 ; R3减1,不为零则转移

DJNZ R4,L0158 ; R4减1,不为零则转移

DJNZ R5,L0158 ; R5减1,不为零则转移

DJNZ R6,L0158 ; R6减1,不为零则转移

DJNZ R7,L0158 ; R7减1,不为零则转移

MOVX A,@DPTR ;外部数据(16位地址)送A

L0169: NOP

AJMP L0139 ;绝对转移

MOVX A,@R0 ;R0间址即外部数据(8位地址)送A

MOVX A,@R1 ; R1间址即外部数据(8位地址)送A

CLR A ;清零A

MOV A,05H ;直接字节送A

MOV A,@R0 ;R0间接RAM送A

MOV A,@R1 ; R1间接RAM送A

MOV A,R0 ; R0送A

MOV A,R1 ; R1送A

MOV A,R2 ; R2送A

MOV A,R3 ; R3送A

MOV A,R4 ; R4送A

MOV A,R5 ; R5送A

MOV A,R6 ; R6送A

MOV A,R7 ; R7送A

MOVX @DPTR,A ;A送外部数据(16位地址)

NOP

ACALL L0169 ;绝对调用

MOVX @R0,A ;A送R0间址即外部数据(8位地址)

MOVX @R1,A ; A送R1间址即外部数据(8位地址)

CPL A ;A取反

MOV 05H,A ;A送直接字节

MOV @R0,A ; A送R0间址即间接RAM

MOV @R1,A ; A送R1间址即间接RAM

MOV R0,A ; A送R0

MOV R1,A ; A送R1

MOV R2,A ; A送R2

MOV R3,A ; A送R3

MOV R4,A ; A送R4

MOV R5,A ; A送R5

MOV R6,A ; A送R6

MOV R7,A ; A送R7

END

51的汇编控制指令详细列表

8051 INSTRUCTION SET

etic operations:

Mnemonic Byte Cyc

ADD A,@Ri 1 1

ADD A,Rn 1 1

ADD A,direct 2 1

ADD A,#data 2 1

ADDC A,@Ri 1 1

ADDC A,Rn 1 1

ADDC A,direct 2 1

ADDC A,#data 2 1

SUBB A,@Ri 1 1

SUBB A,Rn 1 1

SUBB A,direct 2 1

SUBB A,#data 2 1

INC A 1 1

INC @Ri 1 1

INC Rn 1 1

INC DPTR 1 1

INC direct 2 1

INC direct 2 1

DEC A 1 1

DEC @Ri 1 1

DEC Rn 1 1

DEC direct 2 1

MUL AB 1 4

DIV AB 1 4

DA A 1 1

8051的汇编控制指令,占用字节,执行周期列表 transfer:

Mnemonic Byte Cyc

MOV A,@Ri 1 1

MOV DPTR,#data16 3 2

MOV A,Rn 1 1

MOVC A,@A+DPTR 1 2

MOV A,direct 2 1

MOVC A,@A+PC 1 2

MOV A,#data 2 1

MOVX A,@Ri 1 2

8051的汇编控制指令,占用字节,执行周期列表2.

Logical opreations:

ANL A,@Ri 1 1

XRL A,@Ri 1 1

ANL A,Rn 1 1

XRL A,Rn 1 1

ANL A,direct 2 1

XRL A,direct 2 1

ANL A,#data 2 1

XRL A,#data 2 1

ANL direct,A 2 1

XRL direct,A 2 1

ANL direct,#data 3 2

XRL direct,#data 3 2

ORL A,@Ri 1 1

CLR A 1 1

ORL A,Rn 1 1

CPL A 1 1

ORL A,direct 2 1

RL A 1 1

ORL A,#data 2 1

RLC A 1 1

ORL direct,A 2 1

RR A 1 1

ORL direct,#data 3 2

RRC A 1 1

SWAP A 1 1

8051的汇编控制指令,占用字节,执行周期列表n variable manipulation:

Mnemonic Byte Cyc

CLR C 1 1

ANL C,bit 2 2

SETB C 1 1

ANL C,/bit 2 2

CPL C 1 1

ORL C,bit 2 2

CLR bit 2 1

ORL C,/bit 2 2

SETB bit 2 1

MOV C,bit 2 1

CPL bit 2 1

MOV bit,C 2 2

MOV @Ri,A 1 1

MOVX A,@DPTR 1 2

MOV @Ri,direct 2 2

MOVX @Ri,A 1 2

MOV @Ri,#data 2 1

MOVX @DPTR,A 1 2

MOV Rn,A 1 1

PUSH direct 2 2

MOV Rn,direct 2 2

POP direct 2 2

MOV Rn,#data 2 1

XCH A,@Ri 1 1

MOV direct,A 2 1

XCH A,Rn 1 1

MOV direct,@Ri 2 2

XCH A,direct 2 1

MOV direct,Rn 2 2

XCHD A,@Ri 1 1

MOV direct,direct 3 2

MOV direct,#data 3 2

8051的汇编控制指令,占用字节,执行周期列表

m and machine control:

Mnemonic Byte Cyc

NOP 1 1

JZ rel 2 2

RET 1 2

JNZ rel 2 2

RETI 1 2

JC rel 2 2

ACALL addr11 2 2

JNC rel 2 2

AJMP addr11 2 2

JB bit,rel 3 2

LCALL addr16 3 2

JNB bit,rel 3 2

LJMP addr16 3 2

JBC bit,rel 3 2

SJMP rel 2 2

CJNE A,direct,rel 3 2

JMP @A+DPTR 1 2

CJNE A,#data,rel 3 2

DJNZ Rn,rel 2 2

CJNE @Ri,#data,rel 3 2

DJNZ direct,rel 3 2

CJNE Rn,#data,rel 3 2

汇编指令大全

本文发布于:2024-01-30 03:42:12,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170655733218979.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:内容   字节   进位   相加   转移
留言与评论(共有 0 条评论)
   
验证码:
排行榜

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23