The document discusses three address code, which is an intermediate code used by optimizing compilers. Three address code breaks expressions down into separate instructions that use at most three operands. Each instruction performs an assignment or binary operation on the operands. The code is implemented using quadruple, triple, or indirect triple representations. Quadruple representation stores each instruction in four fields for the operator, two operands, and result. Triple avoids temporaries by making two instructions. Indirect triple uses pointers to freely reorder subexpressions.
A presentation on Intermediate Code generation in Compiler System. Provides introduction, types of intermediate code representation and commonly used intermediate code representation.
Palestine last event orientationfvgnh .pptxRaedMohamed3
An EFL lesson about the current events in Palestine. It is intended to be for intermediate students who wish to increase their listening skills through a short lesson in power point.
The Indian economy is classified into different sectors to simplify the analysis and understanding of economic activities. For Class 10, it's essential to grasp the sectors of the Indian economy, understand their characteristics, and recognize their importance. This guide will provide detailed notes on the Sectors of the Indian Economy Class 10, using specific long-tail keywords to enhance comprehension.
For more information, visit-www.vavaclasses.com
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
How to Split Bills in the Odoo 17 POS ModuleCeline George
Bills have a main role in point of sale procedure. It will help to track sales, handling payments and giving receipts to customers. Bill splitting also has an important role in POS. For example, If some friends come together for dinner and if they want to divide the bill then it is possible by POS bill splitting. This slide will show how to split bills in odoo 17 POS.
Students, digital devices and success - Andreas Schleicher - 27 May 2024..pptxEduSkills OECD
Andreas Schleicher presents at the OECD webinar ‘Digital devices in schools: detrimental distraction or secret to success?’ on 27 May 2024. The presentation was based on findings from PISA 2022 results and the webinar helped launch the PISA in Focus ‘Managing screen time: How to protect and equip students against distraction’ https://www.oecd-ilibrary.org/education/managing-screen-time_7c225af4-en and the OECD Education Policy Perspective ‘Students, digital devices and success’ can be found here - https://oe.cd/il/5yV
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdfTechSoup
In this webinar you will learn how your organization can access TechSoup's wide variety of product discount and donation programs. From hardware to software, we'll give you a tour of the tools available to help your nonprofit with productivity, collaboration, financial management, donor tracking, security, and more.
Ethnobotany and Ethnopharmacology:
Ethnobotany in herbal drug evaluation,
Impact of Ethnobotany in traditional medicine,
New development in herbals,
Bio-prospecting tools for drug discovery,
Role of Ethnopharmacology in drug evaluation,
Reverse Pharmacology.
Overview on Edible Vaccine: Pros & Cons with Mechanism
Three Address code
1. Three Address Code
Pooja Dixit
Department of Computer Science
Sophia Girls’ College (Autonomous),
Ajmer
2. Three address code
• Three-address code is an intermediate code. It is used by the
optimizing compilers.
• In three-address code, the given expression is broken down into
several separate instructions. These instructions can easily
translate into assembly language.
• In three address code, at most three addresses are used to
represent any statement.
• Each Three address code instruction has at most three
operands. It is a combination of assignment and a binary
operator.
• Example : Given Expression:
a := b op c
Where-
▫ a, b, c are operands
▫ Op= operators
• Example: a = b + c
▫ Here a, b, c = Operands
▫ +, = are Operator
3. How to Generate Three address code
• Eg:- a = b + c + d
this given expression has two operator +, =
Note: to generate 3-add code for given expression we
have follow these rules-
• ‘+’ operator has higher precedence over ‘=’ operator.
• ‘+’ operator is left associative.
• So the Address Code will be-
▫ T1 = b + c
▫ T2 = T1 + d
▫ a = T2
b + c + d
1
2
3
a =
According to the rule we
first solve b + c, than solve
d and at last store result
into a
4. Implementation of Three Address Code
• Three address code can be implemented as a record with the
address fields.
• There are three types of representation used for three
address code.
Representation
Quadruple
Triple
Indirect Triple
5. Implementation of Three Address Code –
1. Quadruple –
in quadruples representation each instruction is
divided into 4 fields.
Where-
▫ The op field is used to represent the internal code
for operator.
▫ The ag1, ag2 fields represent the two operands used.
▫ The result field is used to store the result of an
expression.
Operator
arg1
arg2
results
6. Three Address Code
• Example
• Change this expression into three-address code:
▫ t1 := e f
▫ t2 := b * c
▫ t3 := t2 / t1
▫ t4 := b * a
▫ t5 := a + t3
▫ t6 := t5 + t4
• These statements are represented by quadruples as follows:
• Operator Source 1 Source 2 Destination
(0) e f T1
(1) * b c T2
(2) / T2 T1 T3
(3) * b a T4
(4) + a T3 T5
(5) + T5 T4 T6
Note: here we arrange the terms according to the
Operator priority
7. Implementation of Three Address Code –
• Advantage –
▫ Easy to rearrange code for global optimization.
▫ One can quickly access value of temporary variables
using symbol table.
• Disadvantage –
▫ Contain lot of temporaries.
▫ Temporary variable creation increases time and
space complexity.
8. Triples
• The triples have three fields to implement the three address code. The
field of triples contains the name of the operator, the first arg1 operand
and the second arg2 operand.
• In triple representation the use of temporary variables are avoided and
instead to instructions are made.
Fig: Triples field
Operator
arg1
arg2
9. Triples
Example: consider the example of quadruple
• Three address code are same as quadruple
• These statements are represented by triples as follows:
• If there is any statement suffle
Operator Arg 1 Arg 2
(0) e f
(1) * b c
(2) / (1) (0)
(3) * b a
(4) + a (2)
(5) + (4) (3)
10. Indirect Triples
• This representation is an enhancement over triples representation. It
use an additional instruction array to list the pointers to the desired
order.
• Thus it use pointers instead of position to store result which enable the
optimizers to freely reposition the sub expression to produce an
optimize code.
Operator Arg 1 Arg 2
(0) e f
(1) * b c
(2) / (1) (0)
(3) * b a
(4) + a (2)
(5) + (4) (3)
Statement
35 (0)
36 (1)
37 (2)
38 (3)
39 (4)
40 (5)