Git Product home page Git Product logo

system-software's Introduction

System-Software

This repository contains programs for system software which includes, 1). Scanner 2). Three types of Parsers 3). Two pass Assembler (Assembly language).

All programs are done in Java programming language.

Scanner

The job of a scanner is to tokenize and identify each of the symbols in each statement and verify if the tokens are correctly written or not. Syntax checking is NOT done in this phase.

Parser

The job of parser is to check the syntax of the expression used in the statement. Three type of parsers are implemented (seperately) here. -> LL 1 Parser -> Recursive Decent Parser -> Opreator Precedence Parser

Assembler

Assembler is a two pass process. In pass I, various tables like "OPTAB", "SYMBTAB", LITTAB", "POOLTAB" are constructed. On completion of the Pass I, an IC (Intermediate Code) is generated and stored in "IC.txt" file. Also, all the tables constructed are used in Pass II, so those final tables are stored in each files respective for each table.

In Pass II, we need the tables constructed like Literal Table, Symbol Table, Mnemonic Opcode Table (which has machine code for each opcode) in Pass I along with the IC. After the Pass II is completed, a "Machine code" is generated, which is readable by the processor. (Here the machine codes are just a simulation, and does not represent the actual machine codes by the actual system :))

system-software's People

Contributors

chintan1995 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.