mc9s08qg8 Freescale Semiconductor, Inc, mc9s08qg8 Datasheet - Page 87
![no-image](/images/manufacturer_photos/0/2/263/freescale_semiconductor__inc_sml.jpg)
mc9s08qg8
Manufacturer Part Number
mc9s08qg8
Description
Hcs08 Microcontrollers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
1.MC9S08QG8.pdf
(300 pages)
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
mc9s08qg84CDNE
Manufacturer:
Freescale Semiconductor
Quantity:
135
Company:
Part Number:
mc9s08qg84CDTE
Manufacturer:
Freescale Semiconductor
Quantity:
135
Part Number:
mc9s08qg8CDT
Manufacturer:
FREESCALE
Quantity:
20 000
Company:
Part Number:
mc9s08qg8CDTE
Manufacturer:
ABB
Quantity:
101
Company:
Part Number:
mc9s08qg8CDTE
Manufacturer:
Freescale Semiconductor
Quantity:
41 991
Part Number:
mc9s08qg8CDTE
Manufacturer:
FREESCALE
Quantity:
20 000
Part Number:
mc9s08qg8CFFE
Manufacturer:
FREESCALE
Quantity:
20 000
Company:
Part Number:
mc9s08qg8CPBE
Manufacturer:
CYPRESS
Quantity:
310
7.2.3
This 16-bit address pointer register points at the next available location on the automatic last-in-first-out
(LIFO) stack. The stack may be located anywhere in the 64-Kbyte address space that has RAM and can
be any size up to the amount of available RAM. The stack is used to automatically save the return address
for subroutine calls, the return address and CPU registers during interrupts, and for local variables. The
AIS (add immediate to stack pointer) instruction adds an 8-bit signed immediate value to SP. This is most
often used to allocate or deallocate space for local variables on the stack.
SP is forced to 0x00FF at reset for compatibility with the earlier M68HC05 Family. HCS08 programs
normally change the value in SP to the address of the last location (highest address) in on-chip RAM
during reset initialization to free up direct page RAM (from the end of the on-chip registers to 0x00FF).
The RSP (reset stack pointer) instruction was included for compatibility with the M68HC05 Family and
is seldom used in new HCS08 programs because it only affects the low-order half of the stack pointer.
7.2.4
The program counter is a 16-bit register that contains the address of the next instruction or operand to be
fetched.
During normal program execution, the program counter automatically increments to the next sequential
memory location every time an instruction or operand is fetched. Jump, branch, interrupt, and return
operations load the program counter with an address other than that of the next sequential location. This
is called a change-of-flow.
During reset, the program counter is loaded with the reset vector that is located at $FFFE and $FFFF. The
vector stored there is the address of the first instruction that will be executed after exiting the reset state.
7.2.5
The 8-bit condition code register contains the interrupt mask (I) and five flags that indicate the results of
the instruction just executed. Bits 6 and 5 are set permanently to 1. The following paragraphs describe the
functions of the condition code bits in general terms. For a more detailed explanation of how each
instruction sets the CCR bits, refer to the HCS08 Family Reference Manual, volume 1, Freescale
Semiconductor document order number HCS08RMv1/D.
Freescale Semiconductor
Stack Pointer (SP)
Program Counter (PC)
Condition Code Register (CCR)
CONDITION CODE REGISTER
MC9S08QG8 and MC9S08QG4 Data Sheet, Rev. 1.01
Figure 7-2. Condition Code Register
V 1 1 H I N Z
7
0
C
CARRY
ZERO
NEGATIVE
INTERRUPT MASK
HALF-CARRY (FROM BIT 3)
TWO’S COMPLEMENT OVERFLOW
CCR
Chapter 7 Central Processor Unit (S08CPUV2)
87