Compilers using a universal intermediate language
First Claim
Patent Images
1. A method for directing a digital data processor to convert high level language source code data into corresponding machine language instruction data, comprising:
- converting the source into data in the form of an intermediate language compatible with a plurality of high level languages and digital data processor target machines, and then converting the intermediate language data into machine language instruction data.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for directing a digital data processor to translate a program written in a source language into a sequence of machine executable instructions. The method consists of the translation of the source code into an intermediate language, followed by generation of object code for the target machine, the method being generally applicable to known source languages and to digital data processors.
-
Citations
40 Claims
-
1. A method for directing a digital data processor to convert high level language source code data into corresponding machine language instruction data, comprising:
- converting the source into data in the form of an intermediate language compatible with a plurality of high level languages and digital data processor target machines, and then converting the intermediate language data into machine language instruction data.
- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
17. A method, using a digital data processor for converting high level language source code data into machine language instruction data, the method comprising the steps of
(a) identifying tokens in the source code; -
(b) parsing the tokens according to the language of the source code; (c) converting representations of the parsed source into a sequence of statements in an intermediate language, the intermediate language being capable of embodying any high level language and interfacing with any digital data processor; (d) creating a stored table of all of the objects and their attributes in the representation of the source; (e) allocating memory space according to information contained in the table; (f) generating assembly language instructions corresponding to the intermediate language and table representations of the source; (g) translating the assembly language instructions into machine language.
-
- 18. A method for converting a program written in a high level language into a corresponding sequence of machine language instructions comprising converting high level language source code data into an intermediate language data and a symbol table to generate machine language instructions.
-
21. A digital data processor including means for inputting data, means for storing data, means for executing machine language instructions, and means for outputting data, wherein the improvement comprises:
-
a. means for, first, converting high level language source code data input through the input means into intermediate language data, stored in the storage means and compatible with a plurality of digital data processors and with a plurality of high level languages; and b. means for, second, converting said intermediate language data into machine language instruction data executable by said executing means so as to complete compilation of said source code. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A digital data processor including means for inputting data, means for storing data, means for executing machine language instructions, and means for outputting data, wherein the improvement comprises:
-
a. means for, first, converting high level language source code data input through the input means into intermediate language data and a symbol table, stored in the storage means and compatible with a plurality of digital data processors and with a plurality of high level languages; and b. means for, second, converting said intermediate language data into machine language instruction data executable by said executing means so as to complete compilation of said source code. - View Dependent Claims (39, 40)
-
Specification