
| ファイルレジスタ | バンク0 | バンク1 |
| 00h(80h) | indirect addr | indirect addr |
| 01h(81h) | TMR0 | OPTION_REG |
| 02h(82h) | PCL | PCL |
| 03h(83h) | STATUS | STATUS |
| 04h(84h) | FSR | |
| 05h(85h) | GPIO | |
| 06h(86h) | ||
| 07h(87h) | ||
| 08h(88h) | ||
| 09h(89h) | ||
| 0Ah(8Ah) | PCLATH | PCLATH |
| 0Bh(8Bh) | INTCON | INTCON |
| 0Ch(8Ch) | PIR1 | PIE1 |
| 0Dh(8Dh) | ||
| 0Eh(8Eh) | TMR1L | PCON |
| 0Fh(8Fh) | TMR1H | |
| 10h(90h) | T1CON | OSCCAL |
| 11h(91h) | ||
| 12h(92h) | ||
| 13h(93h) | ||
| 14h(94h) | ||
| 15h(95h) | WPU | |
| 16h(96h) | IOC | |
| 17h(97h) | ||
| 18h(98h) | ||
| 19h(99h) | CMCON | VRCON |
| 1Ah(9Ah) | EEDATA | |
| 1Bh(9Bh) | EEADR | |
| 1Ch(9Ch) | EECON1 | |
| 1Dh(9Dh) | EECON2(1) | |
| 1Eh(9Eh) | ADRESH(2) | ADRESL(2) |
| 1Fh(8Fh) | ADCON(2) | ANSEL(2) |
| 20h(8Fh) | ||
| General Purpose Registers 64 Bytes | accesses 20h-5Fh | |
| 5Fh(DFh) | ||
| 60h(E0h) | ||
| 7Fh(FFh) |
| Cycles | 14-Bit Opcode | Status Affected | ||
| BYTE-ORIENTED FILE REGISTER OPERATIONS | ||||
| ADDWF f, d | d = W + f | 1 | 00 0111 dfff ffff | C, DC,Z |
| ANDWF f, d | d = W and f | 1 | 00 0101 dfff ffff | Z |
| CLRF f | f = 0 | 1 | 00 0001 1fff ffff | Z |
| CLRW | W = 0 | 1 | 00 0001 0xxx xxxx | Z |
| COMF f, d | Complement f | 1 | 00 1001 dxxx xxxx | Z |
| DECF f, d | d = f - 1 | 1 | 00 0011 dxxx xxxx | Z |
| DECFS f, d | d =f - 1, Skip next if 0 | 1(2) | 00 1011 dfff ffff | |
| INCF f, d | d = f + 1 | 1 | 00 1010 dfff ffff | Z |
| INCFSZ f, d | d = f + 1, Skip next if 0 | 1(2) | 00 1111 dfff ffff | |
| IORWF f, d | d = Wとf | 1 | 00 0100 dfff ffff | Z |
| MOVF f, d | d = f | 1 | 00 1000 dfff ffff | Z |
| MOVWF f | W = f | 1 | 00 0000 1fff ffff | |
| NOP | do nothing | 1 | 00 0000 0xx0 0000 | |
| RLF f, d | Rotate f Left d bit | 1 | 00 1101 dfff ffff | |
| RRF f, d | Rotate f Right d bit | 1 | 00 1100 dfff ffff | |
| SUBWF f, d | d = f-W | 1 | 00 0010 dfff ffff | C, DC, Z |
| SWAPF f, d | 1 | 00 1110 dfff ffff | ||
| XORWF f, d | d = W XOR f | 1 | 00 0110 dfff ffff | Z |
| BIT-ORIENTED FILE REGISTER OPERATIONS | ||||
| BCF f, b | f.b = 0 | 1 | 01 00bb bfff ffff | |
| BSF f, b | f.b = 1 | 1 | 01 01bb bfff ffff | |
| BTFSC f, b | if bit=0, skip next | 1(2) | 01 10bb bfff ffff | |
| BTFSS f, b | if bit=1, skip next | 1(2) | 01 11bb bfff ffff | |
| LITERAL AND CONTROL OPERATIONS | ||||
| ADDLW k | W = W + k | 1 | 11 111x kkkk kkkk | C, DC, Z |
| ANDLW k | W = W and k | 1 | 11 1001 kkkk kkkk | Z |
| CALL k | Call subroutine | 2 | 10 0kkk kkkk kkkk | |
| CLRWDT | Clear Watchdog Timer | 1 | 00 0000 0110 0100 | /TO, /PD |
| GOTO k | Go to address k | 2 | 10 1kkk kkkk kkkk | |
| IORLW k | W = W IOR k | 1 | 11 1000 kkkk kkkk | Z |
| MOVLW k | W = k | 1 | 11 00xx kkkk kkkk | |
| RETFIE | Return from interrupt | 2 | 00 0000 0000 1001 | |
| RETLW k | Return with literal in W | 2 | 11 01xx kkkk kkkk | |
| RETURN | Return from Subroutine | 2 | 00 0000 0000 1000 | |
| SLEEP | Go into Standby mode | 1 | 00 0000 0110 0011 | /TO, /PD |
| SUBLW k | W = W - k | 1 | 11 110x kkkk kkkk | C, DC, Z |
| XORLW k | W = W XOR k | 1 | 11 1010 kkkk kkkk | Z |
| bit | |
| 13 | バンドギャップ・キャリブレーション・ビット |
| 12 | バンドギャップ・キャリブレーション・ビット |
| 11 | 未使用 |
| 10 | 未使用 |
| 9 | 未使用 |
| 8 | データメモリの保護 1:不許可 0:許可 |
| 7 | コードプロテクト プログラムの保護 1:不許可 0:許可 |
| 6 | ブラウンアウト検出 1:許可 0:不許可 |
| 5 | GP3/MCLRピンの設定 1:GP3はMCLR, 0:GP3はI/O, MCLRはVDD |
| 4 | パワーアップタイマ 1:不許可 0:許可 |
| 3 | ウォッチドッグタイマ 1:許可 0:不許可 |
| 2 | オシレータの設定 |
| 1 | オシレータの設定 |
| 0 | オシレータの設定 |
| 種別 | 意味 |
| 00 | データフィールド |
| 01 | ファイルの最後 データ長は00でデータフィールドはブランクになる |
| 02 | 拡張セグメントアドレス アドレスが16ビットを超えるときここが使われる。 この値の指定値x16 + 00レコードで指定されたアドレスオフセット値 |
| 03 | PICマイコンには関係ない |
| 04 | 拡張リニアアドレス このレコードでは、アドレス指定のうち上位16ビット分を指定します。 これ以降のデータは、”ここで指定されたアドレスを16ビット左シフトした値”+”00レコードで指定されたアドレスオフセット値”をオフセット値とみなします。 PICマイコンには関係ない種別になる。仮に指定されていてもデータ部は00 00となりオフセット指定になっていないはず |
| 05 | PICマイコンには関係ない |