Claims
- 1. Method of executing a relocated compiled library program with an interpreter to control a manufacturing line which comprises memory means in which a user memory area is set for storing a middle word of an interpreter type language program, and processor means for executing, separately, said compiled library program stored in a library area of said user memory area and said middle word of said interpreter type language program; wherein said method comprises the steps of:
- A) in said library area in which said complied library program is stored, creating:
- a) an adapter area set at a top of said library area, said adapter area storing adapter programs for stacking arguments of said interpreter type language program and for calling main functions in said compiled library program,
- b) a data area set at a rear of said library area, said data area storing initial data of static variables to be used in execution of said main functions in said compiled library program, and
- c) an address converting table set at a bottom of said library area, said address converting table respectively storing each of a plurality of relative addresses (X) and (y) as a pair, wherein each said relative address (X) comprises an address relative from a top address of said compiled library program to one of a plurality of position dependent code addresses, and each said relative address (Y) comprises an address relative from said top address of said compiled library program to one of a plurality of branch destination addresses indicated by said one of said plurality dependent code addresses;
- B) after loading said compiled library program in said library area, performing the following steps:
- a) changing said interpreter type language program, said changing resulting in a shift position of said library area, and
- b) changing each of said plurality of relative addresses (X) and (Y) in said address converting table as a result of said changing;
- C) when said interpreter starts and said interpreter type language program is executed, performing the following steps:
- a) copying said initial data in said data area into the main functions in said complied library program,
- b) changing the plurality of branch destination addresses using said changed relative addresses (X) and (Y) in said address converting table,
- c) calling said compiled library program as a subroutine,
- d) executing said adapter programs to stack the arguments of said interpreter type language program and call the main functions in said compiled library program, and
- e) executing said main functions in said compiled library program using said stacked arguments.
Priority Claims (3)
Number |
Date |
Country |
Kind |
1-224939 |
Aug 1989 |
JPX |
|
1-224940 |
Aug 1989 |
JPX |
|
2-6149[U]JPX |
Jan 1990 |
JPX |
|
Parent Case Info
This is a continuation of application Ser. No. 865,886, filed Apr. 9, 1992, now abandoned; which is a division of application Ser. No. 572,899, filed Aug. 24, 1990, now U.S. Pat. No. 5,175,864.
US Referenced Citations (7)
Non-Patent Literature Citations (3)
Entry |
Brown, P. J., Writing Interactive Compilers and Interpreters, pp. 251-256 (1979). |
Hunter, R., The Design and Construction of Compilers, pp. 1-2 (1981). |
Calingaert, P., Assemblers, Compilers, and Program Translation, pp. 100-107, 182-189, 210-222, and 233-254 (1979). |
Divisions (1)
|
Number |
Date |
Country |
Parent |
572899 |
Aug 1990 |
|
Continuations (1)
|
Number |
Date |
Country |
Parent |
865886 |
Apr 1992 |
|