KS57C2308/P2308/C2316/P2316 ADDRESS SPACES
2-15

BIT SEQUENTIAL CARRIER (BSC)

The bit sequential carrier (BSC) is a 16-bit general register that can be manipulated using 1-, 4-, and 8-bit RAM
control instructions. RESET clears all BSC bit values to logic zero.
Using the BSC, you can specify sequential addresses and bit locations using 1-bit indirect addressing
(memb.@L). (Bit addressing is independent of the current EMB value.) In this way, programs can process 16-bit
data by moving the bit location sequentially and then incrementing or decreasing the value of the L register.
BSC data can also be manipulated using direct addressing. For 8-bit manipulations, the 4-bit register names
BSC0 and BSC2 must be specified and the upper and lower 8 bits manipulated separately.
If the values of the L register are 0H at BSC0.@L, the address and bit location assignment is FC0H.0. If the L
register content is FH at BSC0.@L, the address and bit location assignment is FC3H.3.
Table 2-4. BSC Register Organization
Name Address Bit 3 Bit 2 Bit 1 Bit 0
BSC0 FC0H BSC0.3 BSC0.2 BSC0.1 BSC0.0
BSC1 FC1H BSC1.3 BSC1.2 BSC1.1 BSC1.0
BSC2 FC2H BSC2.3 BSC2.2 BSC2.1 BSC2.0
BSC3 FC3H BSC3.3 BSC3.2 BSC3.1 BSC3.0
++ PROGRAMMING TIP — Using the BSC Register to Output 16-Bit Data
To use the bit sequential carrier (BSC) register to output 16-bit data (5937H) to the P3.0 pin:
BITS EMB
SMB 15
LD EA,#37H ;
LD BSC0,EA ;BSC0 A, BSC1 E
LD EA,#59H ;
LD BSC2,EA ;BSC2 A, BSC3 E
SMB 0
LD L,#0H ;
AGN LDB C,BSC0.@L ;
LDB P3.0,C ;P3.0 C
INCS L
JR AGN
RET