Building an assembler for VeSPA
David J. Lilja, Sachin S. Sapatnekar
Abstract
David J. Lilja, Sachin S. Sapatnekar
Abstract
In order to translate a sentence from English into French two things are necessary. First, we must understand thoroughly the English sentence. Second, we must be familiar with the forms of expression peculiar to the French language. George Polya, How to Solve It, Princeton University Press, 1945 . Why assembly language? The instructions that are actually executed by a processor are stored in memory as a sequence of binary numbers. When these numbers are fetched by the processor, they are executed by interpreting this machine language according to the steps specified in the instruction set architecture (ISA). It is possible to write programs directly in the binary 1s and 0s of a processor's machine language. However, it would be extremely tedious and error-prone since humans think in terms of symbols and higher-level languages. Consequently, we assign symbolic names to each of the instructions in the ISA, and to each of the registers and other memory elements that are accessible to a programmer. We then define a syntax which precisely describes how the various symbols can be composed into a complete program. These symbolic names and syntax define a complete programming language which is called an assembly language . An assembler is a program that accepts as input a text file consisting of a sequence of alphanumeric characters that comprise a program written in a processor's assembly language. The output of the assembler is a machine language representation of the assembly language program that can be directly executed by the processor. The original textual format of the program is called the source code . The executable machine language is called the object code .
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
In order to translate a sentence from English into French two things are necessary. First, we must understand thoroughly the English sentence. Second, we must be familiar with the forms of expression peculiar to the French language. George Polya, How to Solve It, Princeton University Press, 1945 . Why assembly language? The instructions that are actually executed by a processor are stored in memory as a sequence of binary numbers. When these numbers are fetched by the processor, they are executed by interpreting this machine language according to the steps specified in the instruction set architecture (ISA). It is possible to write programs directly in the binary 1s and 0s of a processor's machine language. However, it would be extremely tedious and error-prone since humans think in terms of symbols and higher-level languages. Consequently, we assign symbolic names to each of the instructions in the ISA, and to each of the registers and other memory elements that are accessible to a programmer. We then define a syntax which precisely describes how the various symbols can be composed into a complete program. These symbolic names and syntax define a complete programming language which is called an assembly language . An assembler is a program that accepts as input a text file consisting of a sequence of alphanumeric characters that comprise a program written in a processor's assembly language. The output of the assembler is a machine language representation of the assembly language program that can be directly executed by the processor. The original textual format of the program is called the source code . The executable machine language is called the object code .
Key concepts: Computer science, Programming language