PIC18F系列 d:目标寄存器选择位 0表示结果保存至W寄存器中,1表示保存到文件寄存器f中。 a: 快速操作RAM位 0表示快速操作RAM内的RAM单元(BSR寄存器被忽略)。1表示存储区由BSR指定
面向字节的操作指令 1、ADDWF f,d,a;将f中的内容与W中的内容相加,存储在d提定的寄存器中. 2、ADDWFC f,d,a;将f中的内容与W中的内容带进位相加 3、ANDWF f,d,a;将f中的内容与W中的内容逻辑与运算 4、CLRF f,a; 将f清零 5、COMF f,d,a;将f取反 6、CPFSEQ f,a; 将f与w作比较,相等则跳过下一句 7、CPFSGT f,a; 将f与w作比较,大于则跳过 8、CPFSLT f,a; 将f与w作比较,小于则跳过 9、DECF f,d,a; f减1 10、DECFSZ f,d,a; f减1,为0则跳过 11、DCFSNZ f,d,a; f减1,非0则跳过 12、INCF f,d,a; f加1 13、INCFSZ f,d,a; f加1,为0则跳过 14、INFSNZ f,d,a; f加1,非0则跳过 15、IORWF f,d,a; 将f中的内容与W中的内容逻辑或运算 16、MOVF f,d,a; 传送f 17、MOVFF fs,fd; 将fs(源地址)传送给fd(目的地址) 18、MOVWF f,a;将w传给f 19、MULWF f,a;将w乘以f 20、NEGF f,a;将f取补 21、RLCF f,d,a;将F执行带进位循环左移 22、RLNCF f,d,a;将F执行不带进位循环左移 23、RRCF f,d,a;将F执行带进位循环右移 24、RRNCF f,d,a;将F执行不带进位循环左移 25、SETF f,a;将F全部置1 26、SUBFWB f,d,a;将W减去F(带借位) 27、SUBWF f,d,a;将f减去W 28、SUBWFB f,d,a;将f减去W(带借位) 29、SWAPF f,d,a;将f中的两个半字节进行交换 30、TSTFSZ f,a; 测试f,为0则跳过 31、XORWF f,d,a; W与f作逻辑异或运算
面向位的操作类指令 32、BCF f,b,a; 将F寄存器中的某位清零 33、BSF f,b,a; 将F寄存器中的某位置1 34、BTFSC f,b,a; F中的某位为0则跳过 35、BTFSS f,b,a; F中的某位为1则跳过 36、BTG f,b,a; F中的某位取反
控制操作类指令 37、BC n; 进位则跳转 38、BN n; 为负则跳转 39、BNC n;无进位则跳转 40、BNN n;不为负则跳转 41、BNOV n;不溢出则跳转 42、BNZ n;不为零则跳出 43、BOV n;溢出则跳转 44、BRA n;无条件跳转 45、BZ n;为零则跳转 46、CALL n,s;调用子程序 47、CLRWDT ;清看门狗 48、DAW ;将W进行十进制调整 49、GOTO n;跳转到地址 50、NOP ;空操作 51、POP ;出栈 52、PUSH;压栈 53、RCALL n;相对调用 54、RETFIE s;中断返回使能 55、RESET ;用软件使器件复位 56、RETLW k;返回时将立即数送入W 57、RETURN s;从子程序返回 58、SLEEP 进入待机模式
立即数操作指令 59、ADDLW k;W与立即数相加 60、ANDLW K;立即数与W作逻辑与运算 61、IORLW k;立即数与W作逻辑或运算 62、LFSR f,k; 将立即数送给FSR 63、MOVLB k;将立即数传送给BSR 64、MOVLW k;将立即数传送给W 65、MULLW k;立即数与W相乘 66、RETLW k;返回时将立即数与W相乘 67、SUBLW k;立即数减去W 68、XORLW k;立即数与WREG作逻辑异或运算
数据存储器---程序存储器操作类指令 69、TBLRD* ;表读 70、TBLRD* +;后增表读 71、TBLRD* -;后减表读 72、TBLRD+ *;预增表读 73、TBLWT* ;表写 74、TBLWT* +;后增表写 75、TBLWT* -;后减表写 76、TBLWT+ *;预增表写
PIC16系列 1、ADDWF f,d;将f中的内容与W中的内容相加,存储在d提定的寄存器中. 2、ANDWF f,d;将f中的内容与W中的内容逻辑与运算 3、CLRF f;将f清零 4、CLRW ;将W清零 5、COMF f,d;将f取反 6、DECF f,d; f减1 7、DECFSZ f,d; f减1,为0则跳过 8、INCF f,d; f加1 9、INCFSZ f,d; f加1,为0则跳过 10、IORWF f,d; 将f中的内容与W中的内容逻辑或运算 11、MOVF f,d; 传送f,d=0则传给W,d=1则传给自已 12、MOVWF f;将w传给f 13、RLF f,d;将F执行带进位循环左移 14、RRF f,d;将F执行带进位循环右移 15、SUBWF f,d;将f减去W 16、SWAPF f,d;将f中的两个半字节进行交换 17、XORWF f,d; W与f作逻辑异或运算
面向位的操作类指令 18、BCF f,b; 将F寄存器中的某位清零 19、BSF f,b; 将F寄存器中的某位置1 20、BTFSC f,b; F中的某位为0则跳过 21、BTFSS f,b; F中的某位为1则跳过
立即数操作指令 22、ADDLW k;W与立即数相加 23、ANDLW K;立即数与W作逻辑与运算 24、IORLW k;立即数与W作逻辑或运算 25、MOVLW k;将立即数传送给W 26、CALL k;调用子程序 27、GOTO k;跳转到地址 28、RETFIE ;中断返回使能 29、RETLW k;返回时将立即数送入W 30、RETURN ;从子程序返回 31、SLEEP 进入待机模式 32、SUBLW k;立即数减去W 33、XORLW k;立即数与WREG作逻辑异或运算 34、NOP
|