Loading...

Messages

Proposals

Stuck in your homework and missing deadline? Get urgent help in $10/Page with 24 hours deadline

Get Urgent Writing Help In Your Essays, Assignments, Homeworks, Dissertation, Thesis Or Coursework & Achieve A+ Grades.

Privacy Guaranteed - 100% Plagiarism Free Writing - Free Turnitin Report - Professional And Experienced Writers - 24/7 Online Support

Develop the C or C++ source code required to solve the following problem

12/10/2020 Client: arwaabdullah Deadline: 10 Days

CS 3361 | Fall 2020 | Assignment #3 Lexical Analyzer


Assignment #3


Lexical Analyzer


Develop the C or C++ source code required to solve the following problem.


Problem


Develop a lexical analyzer in C or C++ that can identify lexemes and tokens found in a source code file provided by the user. Once the analyzer has identified the lexemes of the language and matched them to a token group, the program should print each lexeme / token pair to the screen.


The source code file provided by the user will be written in a new programming language called “DanC” and is based upon the following grammar (in BNF):


P ::= S S ::= V:=E | read(V) | write(V) | while C do S od | S;S C ::= E < E | E > E | E = E | E <> E | E <= E | E >= E E ::= T | E + T | E - T T ::= F | T * F | T / F F ::= (E) | N | V V ::= a | b | … | y | z | aV | bV | … | yV | zV N ::= 0 | 1 | … | 8 | 9 | 0N | 1N | … | 8N | 9N


Your analyzer should accept the source code file as a required command line argument and display an appropriate error message if the argument is not provided or the file does not exist. The command to run your application will look something like this:


Form: danc_analyzer <path_to_source_file>


Example: danc_analyzer test_file.danc


Lexeme formation is guided using the BNF rules / grammar above. Your application should output each lexeme and its associated token. Invalid lexemes should output UNKNOWN as their token group. The following token names should be used to identify each valid lexeme:


Lexeme


Token


Lexeme


Token


Lexeme


Token := ASSIGN_OP + ADD_OP do KEY_DO


<


LESSER_OP


-


SUB_OP


od


KEY_OD > GREATER_OP * MULT_OP <variable name> IDENT


=


EQUAL_OP


/


DIV_OP


<integer>


INT_LIT <> NEQUAL_OP read KEY_READ ( LEFT_PAREN


<=


LEQUAL_OP


write


KEY_WRITE


)


RIGHT_PAREN >= GEQUAL_OP while KEY_WHILE ; SEMICOLON


CS 3361 | Fall 2020 | Assignment #3 Lexical Analyzer


Additional Solution Rules


Your solution must conform to the following rules:


1) Your solution should be able to use whitespace, tabs, and end of line characters as delimiters between lexemes, however your solution should ignore these characters and not report them as lexemes nor should it require these characters to delimit lexemes of different types.


a. Example: “while i<=n do”


i. This line will generate 5 lexemes “while”, “i”, “<=”, “n”, and “do”.


ii. This means the space between “while” and “i” separated the two lexemes but wasn’t a lexeme itself.


iii. This also means that no space is required between the lexemes “i”, “<=”, and “n”.


2) Your solution should print out “DanC Analyzer :: R<#>” on the first line of output. The double colon “::” is required for correct grading of your submission.


3) Your solution must be tested to ensure compatibility with the GNU C/C++ compiler version 5.4.0.


4) Lexemes that do not match to a known token should be reported as an “UNKNOWN” token. This should not stop execution of your program or generate an error message.


Hints


1) Draw inspiration by looking at the lexical analyzer code discussed and distributed in class.


2) Start by focusing on writing the program in your usual C/C++ development environment.


3) Once your solution is correct, then work on testing it in Linux using the appropriate version of the GNU compiler (gcc).


4) Linux/Makefile tutorials:


a. Linux Video walkthrough: http://www.depts.ttu.edu/hpcc/about/training.php#intro_linux


b. Linux Text walkthrough: http://www.ee.surrey.ac.uk/Teaching/Unix/


c. Makefile tutorial: https://www.tutorialspoint.com/makefile/index.htm


What to turn in to BlackBoard


A zip archive (.zip) containing the following files:


• <FirstName>_<LastName>_<R#>_Assignment3.c / <FirstName>_<LastName>_<R#>_Assignment3.cpp


o C/C++ Source code file


o Example: Eric_Rees_R123456_Assignment3.c


• Makefile


o A makefile for compiling your C/C++ file.


o This makefile must work in the HPCC environment to compile your source code file and output an executable named danc_analyzer.


CS 3361 | Fall 2020 | Assignment #3 Lexical Analyzer


Example Execution


The example execution below was run on Quanah, one of the HPCC clusters. It shows all the commands used to compile and execute my analyzer. Bolded text is text from the Linux OS, text in red are the commands I typed and executed, and the text in blue represents the output from each step.


quanah:/assignment_3$ make clean


rm -f danc_analyzer


quanah:/assignment_3$ make


gcc -o danc_analyzer Eric_Rees_R123456_Assignment3.c


quanah:/assignment_3$ ./danc_analyzer test.danc


DanC Analyzer :: R123456


f IDENT


:= ASSIGN_OP


1 INT_LIT


; SEMICOLON


i IDENT


:= ASSIGN_OP


1 INT_LIT


; SEMICOLON


read KEY_READ


( LEFT_PAREN


n IDENT


) RIGHT_PAREN


; SEMICOLON


while KEY_WHILE


i IDENT


<= LEQUAL_OP


n IDENT


do KEY_DO


f IDENT


:= ASSIGN_OP


f IDENT


* MULT_OP


i IDENT


; SEMICOLON


i IDENT


:= ASSIGN_OP


i IDENT


+ ADD_OP


1 INT_LIT


od KEY_OD


; SEMICOLON

Homework is Completed By:

Writer Writer Name Amount Client Comments & Rating
Instant Homework Helper

ONLINE

Instant Homework Helper

$36

She helped me in last minute in a very reasonable price. She is a lifesaver, I got A+ grade in my homework, I will surely hire her again for my next assignments, Thumbs Up!

Order & Get This Solution Within 3 Hours in $25/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 3 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 6 Hours in $20/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 6 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 12 Hours in $15/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 12 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

6 writers have sent their proposals to do this homework:

Custom Coursework Service
Peter O.
Finance Homework Help
Writer Writer Name Offer Chat
Custom Coursework Service

ONLINE

Custom Coursework Service

Hey, Hope you are doing great :) I have read your project description. I am a high qualified writer. I will surely assist you in writing paper in which i will be explaining and analyzing the formulation and implementation of the strategy of Nestle. I will cover all the points which you have mentioned in your project details. I have a clear idea of what you are looking for. The work will be done according to your expectations. I will provide you Turnitin report as well to check the similarity. I am familiar with APA, MLA, Harvard, Chicago and Turabian referencing styles. I have more than 5 years’ experience in technical and academic writing. Please message me to discuss further details. I will be glad to assist you out.

$55 Chat With Writer
Peter O.

ONLINE

Peter O.

Hello, I can assist you in writing attractive and compelling content on ganja and its movement globally. I will provide with valuable, informative content that you will appreciate. The content will surely hit your target audience. I will provide you with the work that will be according to the needs of the targeted audience and Google’s requirement.

$55 Chat With Writer
Finance Homework Help

ONLINE

Finance Homework Help

I have a Master’s degree and experience of more than 5 years in this industry, I have worked on several similar projects of Research writing, Academic writing & Business writing and can deliver A+ quality writing even to Short Deadlines. I have successfully completed more than 2100+ projects on different websites for respective clients. I can generally write 10-15 pages daily. I am interested to hear more about the project and about the subject matter of the writing. I will deliver Premium quality work without Plagiarism at less price and time. Get quality work by awarding this project to me, I look forward to getting started for you as soon as possible. Thanks!

$55 Chat With Writer

Let our expert academic writers to help you in achieving a+ grades in your homework, assignment, quiz or exam.

Similar Homework Questions

Bus 311 week 5 final paper - British council esol nexus - Fm global data sheets - Advanced patho - Google maps api mysql - Global green books publishing case study solution - Accounting discussion - How to do standard deviation on a sharp calculator - Shoulder clasp sutton hoo - Thinking for yourself marlys mayfield pdf - Why are daphnia good for experiments - Advertising copywriting and layout - Kevin o brien author wikipedia - Orange business services atlanta - Two student responses please label each student response - 1000 words Opioid crisis newsletter magazine due 10/12/2020 - Australian government recordkeeping metadata standard - Fairly reactive metals found as ores - Fisher price wheels on the bus microphone lyrics - Integrated marketing communications multiple choice questions - Beechworth historic park camping - Question paper wikipedia - The thematic apperception test requires people to respond to - The classical management viewpoint emphasized - Preoperative carbohydrate loading in diabetic patients - The random variable x has the following discrete probability distribution - Liquid used in manometer - 4 - Dusty heart timbre and trail - Olive tree custom reading plan - Vortex company operates a retail store with two departments - On making an agreeable marriage critical reading answers - Hp summer internship uk - Engineering - Ap statistics chapter 8 test - Operation mangement - This land is mine - Surviving sap implementation in a hospital analysis - Cmdh cover letter template - Discussion - Social Work-External Factors Impacting an Organization - Maintaining a healthy body composition and body image - Dr tuan pham garran - Bsbwor502 lead and manage team effectiveness assessment - How often were you absent from your previous job - Maximum gradient for a driveway - Text typology and translation - Culture and psychology matsumoto 5th edition pdf - Federalist papers checks and balances - Assignment - Chow chow dog for sale melbourne - How to make fake blood - Function of coarse adjustment knob in compound microscope - Exchange rate shifts that cause the sing - Discussion - Are planet fitness franchises profitable - Volume of parallelepiped determinant - How to make edible fake blood without food coloring - Cpvc pipe temperature rating - Stihl ts410 service manual - Adult pre-exercise screening system apss - Technical codes in film - This is a partial adjusted trial balance of barone company - MKT 630 DQ2 - 500 words essay - What is a google subscriber telephone number - Myclasses southuniversity edu - How to answer sociology essay questions - Pay von maur credit card online - What are the main ideas in steinberg's article - Cas 27939 60 2 - Gwen harwood best poems - Mumps programming language example - Drawing class diagram - Basildon council collection of large items - Under armour five forces analysis - Ethical theories - Psychology unit 2 notes - What is the true meaning of christmas essay - Bunce fantastic mr fox - CIS 210 Assignment 4: Term Paper - How to apply bitumen paint - Advanced database system ppt - Aries tiger suzanne white - Discussion week7 - What is the dapps rule - Knowledge base psychology definition - On the sidewalk bleeding - Software configuration management activities - Philip markoff brother - Bit stuffing in hdlc - Literature review title page - Consider the resonance structures for the carbonate ion - Prefixes that start with dis - Apa style tables and figures example - A harm minimisation measure to prevent intoxication is - Utilities expense is what type of account - Darshanam deva devasya darshanam papanasam - City of cape town roads and stormwater department contact - DQ 5