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

Agarose gel voltage per cm - Hypoglycemia signs and symptoms ati - When did the eureka stockade occur - Assessment questions guided by attachment theory - Mean value theorem taylor series - Arya samaj rig veda - White rose canoe club - Business Paper - A thunderstorm by emily dickinson meaning - Statistics - Black spot on crucifix orchids - Module 4 Discussion-Obesity - Cmpe3 - What are the functions and dysfunctions of immigration - Macbeth act 4 graphic organizer - Online book week activities - Fulston manor 6th form - Simple seminar topics for mechanical engineering - Serenity nail salon trudeau beaute - A partial relative frequency distribution is given - Procedures in maintaining office equipment - Acer advanced test form al - Option for the poor and vulnerable - Conceptual database design definition - Clipsal 56 series timer - Life of pi hero - Pert mustang case - The case for short words - Countries with autocracy based governments have - Interpreting weather station models lab answer key - Matlab state space simulation - The system for grouping businesses that grew out of the nafta accord is known as the: - 91.7 kg in stone - How to write an oral presentation vce - 13000 g to kg - Give me liberty an american history 4th edition ebook - MKT457: E-Marketing - Examples of multicellular organisms - To prevent violations of the stark law quizlet - Need assistance - Athlean x program review - What were the major causes of the great depression - Explain sergio marchionne's leadership style autocratic participative free rein - Qts skills test spellings - Rapid electronics christmas tree kit - Organizational behavior case study with solution pdf - How to calculate ideal cycle time - Tasso elba milled slim billfold wallet - DiscussionBN - How does dr shortnap prescribe sleeping pills math worksheet answers - Millikan oil drop experiment explained - 500 words - Discussion - Telephone cables ltd dagenham - Hpe 3par 9000 quickspecs - Iabc code of ethics - What is the average distance of uranus from the sun - Monash university special consideration - Aws elasticsearch developer guide - Tabloid and broadsheet headlines - Apa style - Boy at the window poem analysis - Http www sahistory org za article history apartheid south africa - S2o8 2 2i rate law - Sensory integration global network - Thematic backpack plan - History of knowledge management - Promega annealing temperature calculator - English Comp 2 - Northwood company manufactures basketballs - 1492 the prequel - Http go lifetime com streamline poleassembly - As 1940 audit checklist - A bipartisan agenda for change - How does atticus define courage - A brief history of psychology - 150 words - Big fat liar full movie download - Belt drive power transmission calculations - Different persuasive language techniques - Situation analysis of coca cola - Assignment 2 - Lutron maestro smart dimmer - Equilibrium constant keq worksheet answers - Cups and arms checklist - Examples of professional growth plans for speech-language pathologists - Phase 5 final nursing research - Use of potassium hydroxide in vanishing cream - Proos roofing supplies porth - Chaos the primordial god - +91-8306951337 love marriage specialist astrologer IN Srinagar - What does hess's law state - Description of a walk robert gray - Phoenix health and safety - Is college necessary for everyone - 10 column worksheet adjusted trial balance - Runway threshold markings width - Long term objectives and strategies - Lobbying - Geology Project 3 & 4