
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Found 205 Articles for Computer Programming

28K+ Views
It is a tool or software which automatically generates a lexical analyzer (finite Automata). It takes as its input a LEX source program and produces lexical Analyzer as its output. Lexical Analyzer will convert the input string entered by the user into tokens as its output.LEX is a program generator designed for lexical processing of character input/output stream. Anything from simple text search program that looks for pattern in its input-output file to a C compiler that transforms a program into optimized code.In program with structure input-output two tasks occurs over and over. It can divide the input-output into meaningful ... Read More

4K+ Views
Minimizing means reducing the number of states in DFA. We have to detect those states of DFA whose presence or absence in DFA does not affect language accepted by DFA. These states can be eliminated from DFA.Algorithm: Minimization of DFAInput − DFA D1 with a set of states Q with a set of final states F.Output − DFA D2 which accepts the same language as D1 and having a minimum number of states as possible.MethodMake a partition 'π' of a set of states with two subsets −Final state 'F'Non-Final States 'Q-F'∴ π={F, Q−F}To apply the following procedure to make πnew ... Read More

1K+ Views
Yes, we can convert a NFA into DFA. For every NFA there exists an equivalent DFA. The equivalence is defined in terms of languages acceptance. Since NFA is nothing but a finite automata in which zero, one or more transitions on an input symbols are permitted. It can always construct finite automata which will simulate all moves of DFA on a particular input symbol in parallel, then get a finite automata in which there will be exactly one transition on every input symbol. Here, corresponding to a NFA there exist a DFA. To construct DFA equivalent to NFA, it should ... Read More

32K+ Views
A Regular Expression is a representation of Tokens. But, to recognize a token, it can need a token Recognizer, which is nothing but a Finite Automata (NFA). So, it can convert Regular Expression into NFA.Algorithm for the conversion of Regular Expression to NFAInput − A Regular Expression ROutput − NFA accepting language denoted by RMethodFor ε, NFA isFor a NFA isFor a + b, or a | b NFA isFor ab, NFA isFor a*, NFA isExample1 − Draw NFA for the Regular Expression a(a+b)*abSolutionExample2 − Draw NFA for a + b + abSolutionExample3 − Draw NFA for letter (letter+digit)*SolutionExample4 − ... Read More

4K+ Views
An automata is an abstract model of digital computers with discrete inputs and outputs. Every automata include a mechanism for reading inputs. It is considered that input is a string over a given alphabet, written on an input file that the automata can read. The input file is divided into smaller parts known as cells.It is a Machine or a Recognizer for a language that is used to check whether a language accepts the string or not. In Finite Automata, Finite means a finite number of states and Automata means the Automatic Machine which works without any interference of human ... Read More

4K+ Views
The language accepted by finite automata can be simply defined by simple expressions known as Regular Expressions. It is an effective approach to describe any language. A regular expression can also be represented as a sequence of patterns that represent a string. Regular expressions are used to connect character sequence in strings. The string searching algorithm used this pattern to discover the operations on a string.There are various rules for regular expressions which are as follows −ε is a Regular expression.Union of two Regular Expressions R1 and R2.i.e., R1 + R2 or R1|R2 is also a regular expression.Concatenation of two ... Read More

15K+ Views
Lexical Analysis can be designed using Transition Diagrams.Finite Automata (Transition Diagram) − A Directed Graph or flowchart used to recognize token.The transition Diagram has two parts −States − It is represented by circles.Edges − States are connected by Edges Arrows.Example − Draw Transition Diagram for "if" keyword.To recognize Token ("if"), Lexical Analysis has to read also the next character after "f". Depending upon the next character, it will judge whether the "if" keyword or something else is.So, Blank space after "if" determines that "If" is a keyword."*" on Final State 3 means Retract, i.e., control will again come to previous ... Read More

54K+ Views
Lexical Analysis has to access secondary memory each time to identify tokens. It is time-consuming and costly. So, the input strings are stored into a buffer and then scanned by Lexical Analysis.Lexical Analysis scans input string from left to right one character at a time to identify tokens. It uses two pointers to scan tokens −Begin Pointer (bptr) − It points to the beginning of the string to be read.Look Ahead Pointer (lptr) − It moves ahead to search for the end of the token.Example − For statement int a, b;Both pointers start at the beginning of the string, which ... Read More

10K+ Views
A compiler is a computer program that converts source code written in a computer language (the source language) into another computer language (the target language, providing having a binary form referred to as object code). The best reason for inadequate to convert source code is to create an executable code.The compiler is generally used for programs that translate source code from a high-level programming language to a lower-level language (e.g., assembly language or machine code). A program that translates from a low-level language to a higher level one is a decompiler.A program that translates between high-level languages is generally known ... Read More

12K+ Views
It is an approach for making a self-compiling compiler that is a compiler written in the source programming language that it determine to compile. A bootstrap compiler can compile the compiler and thus you can use this compiled compiler to compile everything else and the future versions of itself.Uses of BootstrappingThere are various uses of bootstrapping which are as follows −It can allow new programming languages and compilers to be developed starting from actual ones.It allows new features to be combined with a programming language and its compiler.It also allows new optimizations to be added to compilers.It allows languages and ... Read More