6 section management, 1 definition of sections, 2 absolute and relocatable sections – Epson S5U1C63000A User Manual

Page 75

Advertising
background image

CHAPTER 4: ASSEMBLER

S5U1C63000A MANUAL

EPSON

61

(S1C63 FAMILY ASSEMBLER PACKAGE)

4.6 Section Management

4.6.1 Definition of Sections

The memory configuration of the S1C63 Family microcomputer is divided into a code ROM that contains
programs written, and data memories such as data RAM and I/O memory. Moreover, some models carry
a data ROM that holds static data written.
A section refers to an area where codes are written (or to be mapped), and there are three types of sec-
tions in correspondence with the memories:

1. CODE section

Area located within a code ROM.

2. DATA section

Area located within a data ROM.

3. BSS section

Denotes a RAM area.

To allow to specify these sections in a source file, the assembler comes provided with pseudo-instruc-
tions.

CODE section

The .code pseudo-instruction defines a CODE section. Statements from this instruction to another
section defining instruction will be regarded as program codes, and will be so processed as to be
mapped in the code ROM. The source file will be regarded as a CODE section by default. Therefore,
the part that goes from top of the file, to another section will be processed as a CODE section. Because
this section is of 13 bits/word, 4-bit data cannot be defined.

DATA section

The .data pseudo-instruction defines a DATA section. Statements from this instruction to another
section defining instruction will be regarded as 4-bit data, and will be so processed as to be mapped in
the data ROM. Therefore, nothing else can be described in this area other than the symbols for
referring to the address of the data ROM, the 4-bit data defining pseudo-instruction (.word), and
comments. This section is applied only to models having a data ROM.

BSS section

The .bss pseudo-instruction defines a BSS section. Statements from this instruction to another section
defining instruction will be regarded as 4-bit data, and will be so processed as to be mapped in the
data memory (RAM). Therefore, nothing else can be described in this area other than the symbols for
referring to the address of the data memory, the area securing pseudo-instructions (.comm and
.lcomm

).

The .comm pseudo-instruction and the .lcomm pseudo-instruction are designed to define the symbol
and size of a data area. Although the BSS section basically consists in a RAM area, it can as well be
used as a data memory area, such as display memory and I/O memory. Since code definition in this
area is meaningless in embedded type microcomputers, such as those of the S1C63 Family, nothing
else can be described other than the two instructions and comments.

4.6.2 Absolute and Relocatable Sections

The assembler is a relocatable assembler that always generates an relocatable object and needs the linker
to make it into an executable absolute object. However, each section in one source can be absolute or
relocatable depending on how they are described. The section whose absolute address is specified with
the .org pseudo-instruction in the source is an absolute section, while the section whose absolute address
is not specified is an relocatable section. Absolute addresses of relocatable sections will be fixed by the
linker. Both types of sections can be included in one source.

Advertising