- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PIC12C5XX 指令集及程序设计技巧 MCV08A与之前的PIC12F509A是完全一样,性价比更优越,主要是想收覆被台湾品牌占据的市场,与竟争的型号有:EMC78p153,8PS53? §2.1? PIC12C5XX 指令概述?
PIC12C5XX每条指令长12位,指令由操作码和操作数组成。PIC12C5XX共有33条指令,按操作分成三大类:?? 1、面向字节操作类?? 2、面向位操作类?? 3、常数操作和控制操作类。
全部指令如表2.1所示。
面向字节操作类指令
(11-6)
(5)
(4-0)
?
OPCODE
d
f(FILE#)
?
?
?
?
?
二进制代码????? HEX? 名称???? 助记符,操作数?? 操作
?
?
状态影响
注
0000 0000 0000
000
空操作
NOP
?
?
?
无
?
0000 001f ffff
02f
W送到f
MOVWF f
W→f
?
?
无
1,4
0000 0100 0000
040
W清零
CLRW -
0→W
?
?
Z
?
0000 011f ffff
06f
f清零
CLRF f
0→f
?
?
Z
4
0000 10df ffff
08f
f减去W
SUBWF f,d
f-W→d
?
?
C,DC,Z
1,2,4
0000 11df ffff
0Cf
f递减
DECF f,d
f-1→d
?
?
Z
2,4
0001 00df ffff
10f
W和f做或运算
IORWF f,d
W∨f→d
?
?
Z
2,4
0001 01df ffff
14f
W和f做与运算
ANDWF f,d
W∧f→d
?
?
Z
2,4
0001 10df ffff
18f
W和f做异或运算
XORWF f,d
W〇f→d
?
?
Z
2,4
0001 11df ffff
1Cf
W加f
ADDWF f,d
W+f→d
?
?
C,DC,Z
1,2,4
0010 00df ffff
20f
传送f到d
MOVF f,d
f→d
?
?
Z
2,4
0010 01df ffff
24f
f取补
COMF f,d
f→d
?
?
Z
2,4
0010 10df ffff
28f
f递增
INCF f,d
f+1→d
?
?
Z
2,4
0010 11df ffff
2Cf
f递减,为0则跳
DECFSZ f,d
f-1→d,skip if zero
Z
2,4
0011 00df ffff
30f
f循环右移
RRF f,d
f(n)→d(n-1),f(0)→C,C→d(7)
C
2,4
0011 01df ffff
34f
f循环左移
RLF f,d
f(n)→d(n+1),f(7)→C,C→d(0)
C
2,4
0011 10df ffff
38f
f半字节交换
SWAPF f,d
f(0.3)←→f(4-7)→d?
Z
2,4
0011 11df ffff
3Cf
f递增,为0则跳
INCFSZ f,d
f+1→d,skip if zero?
Z
2,4
?
?
?
?
?
面向位操作类指令
(11-8)
(7-5)
(4-0)
?
OPCODE
b(BIT#)
f(FILE#)
?
?
?
?
?
二进制代码????? HEX? 名称???? 助记符,操作数?? 操作
?
?
状态影响
注
0100 bbbf ffff
4bf
清除f的位b
BCF?? f,b
0→f(b)
Z
2,4
0101 bbbf ffff
5bf
设置f的位b
BSF?? f,b
1→f(b)
Z
2,4
0110 bbbf ffff
6bf
测试f的位b,为0则跳
BTFSC f,b
Test bit(b) in file(f):Skip if clear
Z
?
0111 bbbf ffff
7bf
测试f的位b,为0则跳
BTFSS f,b
Test bit(b) in file(f):Skip if clear
Z
?
?
?
?
?
常数操作和控制操作类指令
(11-8)
(7-0)
?
OPCODE
? k(LITERA
文档评论(0)