SN8P2501D
8-Bit Micro-Controller
SONiX TECHNOLOGY CO., LTD Page 24 Version 1.5
2.2.4 PROGRAM COUNTER
The program counter (PC) is a 10-bit binary counter separated into the high-byte 2 and the low-byte 8 bits. This
counter is responsible for pointing a location in order to fetch an instruction for kernel circuit. Normally, the program
counter is automatically incremented with each instruction during program execution.
Besides, it can be replaced with specific address by executing CALL or JMP instruction. When JMP or CALL instruction
is executed, the destination address will be inserted to bit 0 ~ bit 9.
ONE ADDRESS SKIPPING
There are nine instructions (CMPRS, INCS, INCMS, DECS, DECMS, BTS0, BTS1, B0BTS0, B0BTS1) with one
address skipping function. If the result of these instructions is true, the PC will add 2 steps to skip next instruction.
If the condition of bit test instruction is true, the PC will add 2 steps to skip next instruction.
; To skip, if Carry_flag = 1
; Move BUF0 value to ACC.
; To skip, if Zero flag = 0.
If the ACC is equal to the immediate data or memory, the PC will add 2 steps to skip next instruction.
If the destination increased by 1, which results overflow of 0xFF to 0x00, the PC will add 2 steps to skip next
instruction.
INCS instruction:
; Jump to C0STEP if ACC is not zero.
INCMS instruction:
; Jump to C0STEP if BUF0 is not zero.