Professional Documents
Culture Documents
Loaders and Linkers: Source Program Object Code Executable Code
Loaders and Linkers: Source Program Object Code Executable Code
Source
Program
Assembler
Object
Code
Linker
Executable
Code
Loader
In Chapter 2, we discussions
10
Relocation
Linking
Linking loader
11
3.2.1 Relocation
12
13
14
15
3.2.1 Relocation
16
17
3.2.1 Relocation
18
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
19
1
1
1
1
1
1
1
1
1
1
1
0
0
0
20
1
1
1
1
1
1
1
0
0
21
3.2.1 Relocation
24
25
26
REF2
REF4
REF5
REF6
REF7
REF8
27
28
REF1
REF3
REF4
REF5
REF6
REF7
REF8
29
30
REF1
REF2
REF3
REF4
REF6
REF7
REF8
31
REF1,
LDA
LISTA
03201D
03100000
LISTB+4
772027
#ENDA-LISTA 050014
77100004
05100000
32
WORD
ENDA-LISTA+LISTC
000014+000000
34
4000+0063=
4063+007F=
35
Ref No.
1
Symbol
PROGA
Address
4000
LISTB
40C3
ENDB
40D3
LISTC
4112
ENDC
4124
Ref No.
1
Symbol
PROGB
Address
4063
Ref No.
Symbol
Address
PROGC
4063
LISTA
4040
LISTA
4040
ENDA
4054
ENDA
4054
LISTC
4112
LISTB
40C3
ENDC
4124
ENDB
40D3
36
37
38
39
41
42
43
44
45
46
47
48
Special command
Separate file
INCLUDE
program-name(library-name)
DELETE
csect-name
CHANGE
name1, name2
INCLUDE
INCLUDE
DELETE
CHANGE
CHANGE
LIBRARY
NOCALL
READ(UTLIB)
WRITE(UTLIB)
RDREC, WRREC
RDREC, READ
WRREC, WRITE
MYLIB
STDEV, PLOT, CORREL
49
Linking loader
50
51
Linkage editor
53
54
55
56
57
58
59
60
61
62
63