Chinaunix首页 | 论坛 | 博客
  • 博客访问: 61521
  • 博文数量: 17
  • 博客积分: 650
  • 博客等级: 上士
  • 技术积分: 192
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-23 13:47
文章分类
文章存档

2011年(1)

2010年(16)

我的朋友

分类: 嵌入式

2010-07-05 07:30:24

数据传送类指令

1

一般传送

MOV A, #data

将立即数#data送累加器A

2

MOV direct, #data

将立即数#data送片内RAM direct地址单元内

3

Mov Rn, #data

将立即数#data送寄存器Rn

4

Mov @Ri, #data

寄存器Ri内为RAM地址,将立即数#data送该地址单元内

5

Mov direct2, direct1

direct1地址单元的数据送 direct2地址单元内

6

Mov direct, rn

Rn的数据送 direct地址单元内

7

Mov Rn, direct

direct地址单元内的数据送Rn寄存器

8

Mov direct, @Ri

寄存器Ri内为RAM地址,将该地址单元内的数据送direct地址单元内

9

Mov @Ri, direct

寄存器Ri内为RAM地址,将direct地址单元内的数据送该地址单元内

10

Mov A, Rn

将寄存器Rn内的数据送累加器A

11

Mov Rn, A

将累加器A内的数据送寄存器Rn

12

Mov A, direct

direct地址单元内的数据送累加器A

13

Mov direct, A

将累加器A内的数据送direct地址单元内

14

Mov A, @Ri

寄存器Ri内为RAM地址,将该地址单元内的数据送累加器A

15

Mov @Ri , A

寄存器Ri内为RAM地址,将累加器A的数据送该地址单元内

16

目的地址传送

Mov DPTR, #data16

16位立即数送数据指针DPTR寄存器

17

字节交换

SWAP A

累加器A高低4位数据交换

18

XCH A, Rn

将累加器A数据和寄存器Rn内的数据交换

19

XCH A, direct

将累加器A数据和direct地址单元内的数据交换

20

XCH A, @Ri

寄存器Ri内为RAM地址,将该地址单元内的数据与累加器A的数据交换

21

XCHD A, @Ri

寄存器Ri内为RAM地址,将该地址单元内的数据低4位与的低4位交换

22

与外部RAM传送

MOVX @DPTR, A

将累加器A的数据送数据指针DPTR寄存器所指外部RAM地址单元内

23

MOVX A , @DPTR

DPTR寄存器所指外部RAM地址单元内的数据送累加器A

24

MOVX A, @Ri

寄存器Ri内为片外RAM地址,将该地址单元内的数据送累加器A

25

MOVX @Ri, A

寄存器Ri内为片外RAM地址,将该地址单元内的数据送累加器A

26

ROM传送

MOVC A, @A+DPTR

A+DPTR构成ROM地址,将该地址内的数据送累加器A

27

MOVC A, @A+PC

A+PC构成ROM地址,将该地址内的数据送累加器A

28

栈操作

PUSH direct

堆栈指针SP自加1后,将direct地址单元的数据压进堆栈,

29

POP direct

堆栈的数据送direct地址单元中,后堆栈指针减1

算术运算指令

30

加法指令

ADD A, Rn

将寄存器Rn与累加器A的数据相加后,结果保存到累加器A

31

ADD A, direct

direct地址单元内的数据与累加器A的数据相加后结果保存到累加器A

32

ADD A, @Ri

寄存器Ri内位地址,将该地址单元内的数据与累加器A的数据相加后结果保存到累加器A

33

ADD A, #data

将立即数与累加器A的数据相加后结果保存到累加器A

34

带进位加法

ADDC A, Rn

将寄存器Rn与累加器A的数据相加,再加上进位标志内的值后,结果保存到累加器A

35

ADDC A, direct

direct地址单元内的数据与累加器A的数据相加,再加上进位标志内的值后,结果保存到累加器A

36

ADDC A, @Ri

寄存器Ri内为RAM地址,将该地址单元内的数据与累加器A的数据相加,再加上进位标志内的值后,结果保存到累加器A

37

ADDC A, #data

将立即数与累加器A的数据相加,再加上进位标志内的值后结果保存到累加器A

38

带借位减法

SUBB A, Rn

将与累加器A的数据减去寄存器Rn的数据,再减去进位标志内的值,结果保存到累加器A

39

SUBB A, direct

将与累加器A的数据减去direct地址单元内的数据,再减去进位标志内的值,结果保存到累加器A

40

SUBB A, @Ri

寄存器Ri内为RAM地址,将累加器A的数据减去该地址单元内的数据,再减去进位标志内的值后,结果保存到累加器A

41

SUBB A, #data

将累加器A的数据减去立即数,再减去进位标志内的值后,结果保存到累加器A

42

1指令

INC A

累加器A的值自加1

43

INC Rn

寄存器Rn的值自加1

44

INC direct

direct地址单元内值自加1

45

INC @Ri

寄存器Ri内为RAM地址,该地址单元内的值自加1

46

INC DPTR

数据指针寄存器DPTR内的值自加1

47

1指令

DEC A

累加器A的值自减1

48

DEC Rn

寄存器Rn的值自减1

49

DEC direct

direct地址单元内的值自减1

50

DEC @Ri

寄存器Ri内为RAM地址,该地址单元内的值自减1

51

乘法

MUL AB

累加器A与寄存器B内的值相乘,乘积的高8位保存在B寄存器,低8位保存在累加器A

52

除法

DIV AB

累加器A的值除以寄存器B的值,商保存在累加器A中,余数保存在B寄存器

53

-十进制调整

DA A

对累加器A的结果进行十进制调整

阅读(1256) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~