Computer Science Asked by Q.P. on July 27, 2020
As I understand it in dataflow programming, programs are structured as directed graphs, an example of which is below
Is it true to say that the arrows (or edges) represent the variables within a program and the vertexes (blue circles) represent programmatic functions? Or is this too much of a simplification?
I am interested in understanding how dataflow languages actually apply graph theory.
To be precise, the nodes represent the blocks (consisting a set of statements) and the edges represent possible data flow (the execution path).
Now basically the data flow analysis gives the information regarding the definition and use of data in the program (Available Expression, Reaching Definition, Live variable). This information is needed for code optimization.
And moving on to the graph theory applications in the compiler design, I would say Register allocation is the best example (Btw this can be done after gathering information from the data flow analysis).
This is a vast area, not easy to explain everything clearly. So, I would highly recommend to read a good book on compilers to get deeper insights
Answered by Sai Sreenivas on July 27, 2020
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP