Abstract

This paper describes a new non-optimizing compiler for the ECMA-55 Minimal BASIC language that generates x86-64 assembler code for use on the x86-64 Linux® [1] 3.x platform. The compiler was implemented in C99 and the generated assembly language is in the AT&T style and is for the GNU assembler. The generated code is stand-alone and does not require any shared libraries to run, since it makes system calls to the Linux® kernel directly. The floating point math uses the Single Instruction Multiple Data (SIMD) instructions and the compiler fully implements all of the floating point exception handling required by the ECMA-55 standard. This compiler is designed to be small, simple, and easy to understand for people who want to study a compiler that actually implements full error checking on floating point on x86-64 CPUs even if those people have little programming experience. The generated assembly code is also designed to be simple to read.

Highlights

  • The Beginner’s All-purpose Symbolic Instruction Code (BASIC) language was invented by John G.Kemeny and Thomas E

  • The various implementations’ dialects of BASIC ceased to be compatible with each other [5,6,7]. This led to a standardization effort by American National Standards Institute (ANSI) [8,9], which after many compromises became Minimal BASIC

  • Since no other European Computer Manufacturers Association (ECMA)-55 Minimal BASIC compiler exists for x86-64 Linux®, no performance comparisons with alternative implementations are possible

Read more

Summary

Introduction

The Beginner’s All-purpose Symbolic Instruction Code (BASIC) language was invented by John G.Kemeny and Thomas E. The various implementations’ dialects of BASIC ceased to be compatible with each other [5,6,7]. This led to a standardization effort by American National Standards Institute (ANSI) [8,9], which after many compromises became Minimal BASIC. The standardization effort was not successful for a variety of reasons, and most implementations of the language that called themselves BASIC were not fully compliant with the Minimal BASIC standard. If for no other reason, the lack of Computers 2014, 3 adequate string and file support meant that a strict Minimal BASIC implementation would not be a commercially viable product

Objectives
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.