汇编和机器码对照表

来源:互联网 发布:js this.classname 编辑:程序博客网 时间:2024/04/29 01:10

1.数据传送指令(30条)

助 记 符 说明 字节 周期 代 码

MOV A,Rn寄存器送A 1 1 E8--EF

MOV A,data直接字节送A 2 1 E5

MOV A,@Ri间接RAM 送A 1 1 E6--E7

MOV A,#data立接数送A 2 1 74

MOV Rn,A A送寄存器 1 1 F8--FF

MOV Rn,data直接数送寄存器 2 2 A8--AF

MOV Rn,#data立即数送寄存器 2 1 78--7F

MOV data,A A送直接字节 2 1 F5

MOV data,Rn寄存器送直接字节 2 1 88—8F

MOV data,data直接字节送直接字节 3 2 85

MOV data,@Ri间接Rn 送直接字节 2 2 86;87

MOV data,#data立即数送直接字节 3 2 75

MOV @Ri,A A送间接Rn 1 2 F6;F7

MOV @Ri,data直接字节送间接Rn 1 1 A6;A7

MOV @Ri,#data立即数送间接Rn 2 2 76;77

MOV DPTR,#data16 16位常数送数据指针 3 1 90

MOV C,bit直接位送进位位 2 1 A2

MOV bit,C进位位送直接位 2 2 92

MOVC A,@A+DPTR A+DPTR寻址程序存贮字节送A 3 2 93

MOVC A,@A+PC A+PC寻址程序存贮字节送A 1 2 83

MOVX A,@Ri外部数据送A(8 位地址) 1 2 E2;E3

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

MOVX @Ri,A A送外部数据(8 位地址) 1 2 F2;F3

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

PUSH data直接字节进栈道,SP 加1 2 2 C0

POP data直接字节出栈,SP 减1 2 2 D0

XCH A,Rn寄存器与A 交换 1 1 C8—CF

XCH A,data直接字节与A 交换 2 1 C5

XCH A,@Ri间接Rn 与A 交换 1 1 C6;C7

XCHD A,@Ri间接Rn 与A 低半字节交换 1 1 D6;D7


2.逻辑运算指令(35条)

助 记 符 说明 字节 周期 代 码

ANL A,Rn寄存器与到A 1 1 58—5F

ANL A,data直接字节与到A 2 1 55

ANL A,@Ri间接RAM与到A 1 1 56;57

ANL A,#data立即数与到A 2 1 54

ANL data,A A与到直接字节 2 1 52

ANL data,#data立即数与到直接字节 3 2 53

ANL C,bit直接位与到进位位 2 2 82

ANL C,/bit直接位的反码与到进位位 2 2 B0

ORL A,Rn寄存器或到A 1 1 48—4F

ORL A,data直接字节或到A 2 1 45

ORL A,@Ri间接RAM或到A 1 1 46;47

ORL A,#data立即数或到A 2 1 44

ORL data,A A或到直接字节 2 1 42

ORL data,#data立即数或到直接字节 3 2 43

ORL C,bit直接位或到进位位 2 2 72

ORL C,/bit直接位的反码或到进位位 2 2 A0

XRL A,Rn寄存器异或到A 1 1 68—6F

XRL A,data直接字节异或到A 2 1 65

XRL A,@Ri间接RAM异或到A 1 1 66;67

XRL A,#data立即数异或到A 2 1 64

XRL data,A A异或到直接字节 2 1 62

XRL data,#data立即数异或到直接字节 3 2 63

SETB C 进位位置1 1 1 D3

SETB bit直接位置1 2 1 D2

CLR A A0 1 1 E4

CLR C 进位位清0 1 1 C3

CLR bit直接位清0 2 1 C2

CPL A A求反码 1 1 F4

CPL C 进位位取反 1 1 B3

CPL bit直接位取反 2 1 B2

RL A A循环左移一位 1 1 23

RLC A A带进位左移一位 1 1 33

RR A A右移一位 1 1 03

RRC A A带进位右移一位 1 1 13

SWAP A A半字节交换 1 1 C4


3.算术运算指令(24条)

助 记 符 说明 字节 周期 代 码

ADD A,Rn寄存器加到A 1 1 28—2F

ADD A,data直接字节加到A 2 1 25

ADD A,@Ri间接RAM 加到A 1 1 26;27

ADD A,#data立即数加到A 2 1 24

ADDC A,Rn寄存器带进位加到A 1 1 38—3F

ADDC A,data直接字节带进位加到A 2 1 35

ADDC A,@Ri间接RAM 带进位加到A 1 1 36;37

ADDC A,#data立即数带进位加到A 2 1 34

SUBB A,RnA 中减去寄存器和进位 1 1 98—9F

SUBB A,dataA 中减去直接字节和进位 2 1 95

SUBB A,@RiA 中减去间接RAM 和进位 1 1 96;97

SUBB A,#dataA 中减去立即数和进位 2 1 94

INC A A1 1 1 04

INC Rn 寄存器加1 1 1 08—0F

INC data直接字节加1 2 1 05

INC @Ri间接RAM 加1 1 1 06;07

INC DPTR数据指针加1 1 2 A3

DEC A A1 1 1 14

DEC Rn 寄存器减1 1 1 18—1F

DEC data直接字节减1 2 1 15

DEC @Ri间接RAM 减1 1 1 16;17

MUL AB AB 1 4 A4

DIV AB AB除 1 4 84

DA A A十进制调整 1 1 D4


4.转移指令(22条)

助 记 符 说明 字节 周期 代 码

AJMP addr 11绝对转移 2 2 *1

LJMP addr 16长转移 3 2 02

SJMP rel短转移 2 2 80

JMP @A+DPTR相对于DPTR 间接转移 1 2 73

JZ rel A=0 则转移 2 2 60

JNZ relA≠0 则转移 2 2 70

JC rel C=1 则转移 2 2 40

JNC relC≠1 则转移 2 2 50

JB bit,rel若直接位=1 则转移 3 2 20

JNB bit,rel若直接位=0 则转移 3 2 30

JBC bit,rel若直接位=1 则转移且清除 3 2 10

CJNE A,data,rel直接数与A 比较,不等转移 3 2 B5

CJNE A,#data,rel立即数与A 比较,不等转移 3 2 B4

CJNE @Ri,#data,rel立即数与间接RAM比较,不等转移 3 2 B6;B7

CJNE Rn,#data,rel立即数与寄存器比较不等转移 3 2 B8—BF

DJNZ Rn,rel寄存器减1 不为0 转移 2 2 D8—DF

DJNZ data,rel直接字节减1 不为0 转移 3 2 D5

ACALL addr 11绝对子程序调用 2 2 *1

LCALL addr 16子程序调用 3 2 12

RET 子程序调用返回 1 2 22

RETI 中断程序调用返回 1 2 32

NOP 空操作 1 1 00

原创粉丝点击