微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC16F 8位单片机汇编指令集

PIC16F 8位单片机汇编指令集

时间:12-02 来源:互联网 点击:
1。ADDWF f, d,f寄存器内容与W寄存器相加,d=1时结果放在f,d=0是结果在W,影响STATUS的C,DC和Z标志。该条指令影响的状态与MCS51一致,有进位时C=1,有半进位时DC=1;否则相反。结果为0时Z标志置位。
2。 ANDWF f, d,f寄存器内容与W寄存器相与,d=1时结果回存至f,d=0时结果存至W,结果影响STATUS的Z标志位。
3。CLRF ( CLEAR File Register), 清空页寄存器,STATUS的Z标志位置位
4。CLRW (CLEAR WREG),清空W寄存器,STATUS的Z标志位置位,可以用MOVLW 0H等同使用
5。COMF f, d,f寄存器内容取反,d=1时结果存至f寄存器,d=0时结果存至W寄存器。影响Z标志位。
6。DECF f, d,f寄存器内容自减1,d=1时结果存放于f;d=0时结果存放于w,影响STATUS的Z标志位。
7。DECFSZ f, d f寄存器内容自减1,为0则跳行,d=1时结果在f寄存器;d=0时结果在W寄存器。不影响标志位。
8。INCF f, d,f寄存器内容自加1,d=1时结果回存至f,d=0时结果在W。影响Z标志位。
9。INCFSZ f, d,f寄存器内容自加1,结果为0则跳行。d=1时结果回存至f;d=0时结果存至W寄存器。该指令不影响标志位。
10。IORWF f, d,f寄存器内容与W寄存器相或,d=1时结果回存至f,d=0时结果存至W,结果影响STATUS的Z标志位。
11。MOVF f, d,当d=1时,f寄存器内容不变,d=0时f寄存器内容复制到W寄存器。当d=1时,只改变Z标志位,可以用与判断f寄存器内容是否为0。
12。MOVWF , f (MOVE WREG to File Register),很常用的一条指令,将W寄存器的内容保存到RAM中去
13。NOP,没什么可说的,空操作而已,但是确实很常用的语句,短延时必须的。
14。RLF f, d,循环左移指令,f的最高位移到C,原来C的内容移到f的最低位。与MSC51的循环左移指令功能一致。结果影响C标志。
15。RRF f, d, 循环右移指令,f的最低位移到C,原来C的内容移到f的最高位。与MCS51的循环右移指令功能一致。结果影响C标志。
16。SUBWF f, d ,f-W结果存放取决于d,当d=1时结果存在f里,0时存在W里,指令影响STATUS的C、DC、Z标志位,有借位时C=0,有半借位时DC=0;无借位和半借位时真好相反。这点与MCS51系列的单片机有些不同,用时需注意。当两数相等时Z=1。
17。SWAWF f, d, 字节交换指令,f的高低字节交换,结果不影响标志位。该条指令在中断断点保存和恢复中很重要,而且只能使用該指令。在下篇將給出介紹。
18。XORWF f, d,f寄存器内容与W寄存器异或,d=1时结果存至f,d=0时结果存至W,影响STATUS的Z标志位,该条指令我常用来比较是否与一个数相等,利用同0异1的原理。
19。BCF f, b,清零f寄存器的第b位。指令不影响任何标志位,四条位操作指令在程序设计中有极其重要的作用,被广泛应用。
20。BSF f, b,置位f寄存器的第b位。指令不影响任何标志位。
21。BTFSCf, b,测试f寄存器的第b位,为0则跳行,指令不影响任何标志位。
22。BTFSS f, b,测试f寄存器的第b位,为1则跳行,指令不影响任何标志位。
23。ADDLW k,W加立即数k,结果在W寄存器内,有进位,半进位时C,DC为1,否则0;结果为0时Z=1。
24。ANDLW k,W与立即数k相与,结果在W寄存器,影响Z标志位。
25。CALL k,调用子程序,k为子程序的入口地址,不影响任何标志位,但是改指令执行需要两个指令周期,因为在跳转之前需要保存当前得返回地址。
26。CLRWDT看门狗定时器清0,影响STATUS寄存器的TO和PD标志位。两个标志位均置位。
27。GOTO k,跳转到指定地址处,不影响标志位。双周期指令。
28。IORLW k,W寄存器与立即数k相或,结果在W寄存器,影响Z标志位。
29。MOVLW k,立即数k赋给W寄存器,不影响标志位。
30。RETFIE,中断返回指令,没啥说的。中断服务程序最后一句。
31。RETLW k,立即数k送W寄存器,子程序返回,该条指令很特别哈,也比较有意思的饿,查表必用。
32。RETURN,子程序返回指令。
33。SLEEP,进入休眠模式。影响STATUS的TO和PD标志位,TO=1,PD=0。
34。SUBLW, k,立即数减去W,结果在W寄存器,标志位影响与SUBWF指令一致,不再赘述。
35。XORLW k,立即数k与W寄存器异或,结果在W寄存器,影响Z标志位。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top