8XC196MC, MD, MH USER’S MANUAL

 

CHAPTER 3

 

PROGRAMMING CONSIDERATIONS

 

3.1 OVERVIEW OF THE INSTRUCTION SET

3-1

3.1.1

 

BIT Operands

3-2

3.1.2

 

BYTE Operands

3-2

3.1.3

 

SHORT-INTEGER Operands

3-2

3.1.4

 

WORD Operands

3-2

3.1.5

 

INTEGER Operands

3-3

3.1.6

 

DOUBLE-WORD Operands

3-3

3.1.7

 

LONG-INTEGER Operands

3-4

3.1.8

 

Converting Operands

3-4

3.1.9

 

Conditional Jumps

3-4

3.1.10

Floating Point Operations

3-4

3.2

ADDRESSING MODES

3-5

3.2.1

 

Direct Addressing

3-6

3.2.2

 

Immediate Addressing

3-6

3.2.3

 

Indirect Addressing

3-6

3.2.3.1 Indirect Addressing with Autoincrement

3-7

3.2.3.2 Indirect Addressing with the Stack Pointer

3-7

3.2.4

 

Indexed Addressing

3-7

3.2.4.1

Short-indexed Addressing

3-7

3.2.4.2

Long-indexed Addressing

3-8

3.2.4.3

Zero-indexed Addressing

3-8

3.3 ASSEMBLY LANGUAGE ADDRESSING MODE SELECTIONS

3-9

3.3.1

 

Direct Addressing

3-9

3.3.2

 

Indexed Addressing

3-9

3.4 SOFTWARE STANDARDS AND CONVENTIONS

3-9

3.4.1

 

Using Registers

3-9

3.4.2

 

Addressing 32-bit Operands

3-10

3.4.3

 

Linking Subroutines

3-10

3.5 SOFTWARE PROTECTION FEATURES AND GUIDELINES

3-11

CHAPTER 4

 

MEMORY PARTITIONS

 

4.1

MEMORY PARTITIONS

4-1

4.1.1

 

External Devices (Memory or I/O)

4-1

4.1.2 Program and Special-purpose Memory

4-1

4.1.3

 

Program Memory

4-2

4.1.4

 

Special-purpose Memory

4-3

4.1.4.1

Reserved Memory Locations

4-3

4.1.4.2 Interrupt and PTS Vectors

4-3

4.1.4.3

Security Key

4-4

4.1.4.4 Chip Configuration Bytes (CCBs)

4-4

4.1.5

 

Special-function Registers (SFRs)

4-4

iv

Page 7
Image 7
Intel 8XC196MH, 8XC196MD, 8XC196MC manual Chapter Memory Partitions