PA5: Last Hints on Symbol Table: Other Info to Keep

Size: px
Start display at page:

Download "PA5: Last Hints on Symbol Table: Other Info to Keep"

Transcription

1 PA5: Last Hints on Symbol Table: Other Info to Keep For each VarSTE: is it a local variable or a member variable? For each class: what will the object size be? For each method: - a VarSTE for "this" parameter - how many parameters including the implicit "this" parameter? - how many local variables - mangled method name, e.g. classname_method

2 PA5: Last Type Checking Hints Possible Type Errors in PA5: - AssignStatement LHS and RHS - Checking the return value already done - Checking type of receiver in a method call see Tuesday s slides

3 Generating Code for Classes

4 Generating Code! for member variables outidexp: 1) Lookup id in symbol table to get VarSTE 2) If the VarSTE is a member variable: 2a) Look up VarSTE for "this" and generate code that loads the value of "this" into registers r31:r30. 3) load variable into a register(s) using the base+offset store in the VarSTE. 4) Push the variable value on the stack.

5 Generating Code " for an Assignment Statement outassignstatement: 1) Lookup id in symbol table to get VarSTE 2) If the VarSTE is a member variable 2a) Look up VarSTE for "this" and generate code that loads the value of "this" into registers r31:r30. 3) store value of expression on top of run- Lme stack into base+offset for VarSTE

6 Review: Object Memory Layout with Inheritance Consider th e follow ing OOP code: class Base { int x; int y; class Derived extends Base { int z; What w ill Derived look like in m e m o ry?

7 Review: Object Memory Layout with Inheritance Assuming 4 bytes per int in this architecture class Base { int x; int y; ; 4 Byte s 4 Byte s 4 Bytes 4 Bytes 4 Bytes class Derived extends Base { int z; ;

8 Member Lookup With 4 Byte s 4 Byte s Inherita nce 4 Bytes 4 Bytes 4 Bytes class Base { int x; int y; ; class Derived extends Base { int z; ; Base ms.x ms.y Base ms.x ms.y ms = new Base; = 137; store = 42; store bytes 42 4 bytes ms = new Derived; = 137; store bytes = 42; store 42 4 bytes after ms after ms after ms after ms

9 Share your Object Layout Examples

10 Single Inherita nce Object Memory Layout Summary Derived class layout after Base class layout, etc. Ra t ion a le : A p oin te r of typ e B p ointin g a t a D ob je c t still se e s th e B ob je c t a t t h e b e g innin g. Op e r a t ion s d on e on a D ob je c t th ro u g h th e B r efere n c e g u a ran t e e d t o b e sa fe; n o n e e d to ch e ck w h a t B p oin t s a t d yna m ic a lly.

11 W ha t Abou t Methods and Method calls (with inheritance)? Methods a r e m ostly like r e g ular fu n ctions, b u t w ith two com plica tions: H ow d o w e kn ow w h a t r e c e iver ob je c t to u se? H ow d o w e kn ow w h ich func tion to ca ll at r untim e (d ynam ic d ispa tch)?

12 Implementing this Receiver.memberfunc;on(actual parameters) In side a m em b e r fun ction, t h e n a m e this r e fe r s t o t h e cu r r e n t r e ce ive r ob ject. This infor mation (pun inte n d e d ) n e e d s t o b e communicated into t h e fun ction. Idea : Tre a t this a s a n im plicit fir st p a r a m ete r. Eve r y n -a r g u m e n t m em b e r fun ction is r e ally a n (n+ 1)-ar g u m e n t m em b e r fun ction w hose first p a r a m ete r is t h e this p ointe r.

13 this is Clever class MyClass { int x; void myfunction(int arg) { this.x = arg; MyClass m = new MyClass; m.myfunction(137);

14 this is Clever class MyClass { int x; void MyClass_myFunction(MyClass this, int arg){ this.x = arg; MyClass m = new MyClass; m.myfunction(137);

15 this is Clever class MyClass { int x; The mangled func;on name void MyClass_myFunction(MyClass this, int arg){ this.x = arg; MyClass m = new MyClass; MyClass_myFunction(m, 137);

16 this Rules Wh e n g e n e r a ting cod e to ca ll a m e m b e r func tion : p a ss an obje ct a s the this p a r a m e te r r e pre s enting th e r e c e ive r obje ct. In side m e m ber fun ction : tre a t this a s ju st a noth e r p a r a m e te r to th e m e m b e r function. Wh e n im plicitly r efe rring to a field of this: u se this e xtra p a r a m e ter a s the object in w hich th e field sh ould b e looke d up.

17 Generating Code for Method Calls Need to pass in the receiver reference as the first parameter. Receiver.memberfunc;on(actual parameters) outcallexp 1) Look up the ClassSTE from the receiver type. Then lookup the MethodSTE from the ClassSTE scope. 2) Generate code that pops parameters off the stack and into the appropriate registers from right to lep. Don't forget the "this" parameter. 3) Generate code that calls the mangled method name. 4) Generate code that pushes the return value back on the stack outthisexp 1) Push the value of the "this" parameter onto the run- Lme stack The "this" parameter is stored in r31:r30.

18 Im p le m e n tin g Dyna m ic Dispatch D ynam ic d is p a tc h m e a n s calling a fu n ction a t ru n time base d on the dyn amic typ e of a n obje c t, r a th e r than its sta tic typ e. Question: H ow do w e se t u p ou r ru n tim e environm e n t so th a t w e ca n efficien tly su pport this?

19 An Initia l Idea At com p ile-time, g e t a list of e ver y d e fin e d class. To com p ile a d yna mic d isp a tch, e m it IR cod e for th e following logic: if (the object has type A) call A's version of the function else if (the object has type B) call B's version of the function else if (the object has type N) call N's version of the function.

20 Ana lyzing our Approach What are the problems with this strategy? Slow! N u m be r of ch e cks is O(C), w he r e C is th e num b e r of cla s se s th e d isp a tch m ig h t re fe r to. Ge ts s low e r th e more cla sses th e re a re. It's infe a s ible in m o s t la n g u a g e s. Wh a t if w e lin k a cross m u ltip le sou rce file s? Wh a t if w e su pport d yn a m ic cla ss lo ad in g?

21 Introducing Dispatch Tables A dispatch ta b le (or vta b le ) a r ray of pointe r s to each m em b e r fu n ction s code fo r a particular class. To invoke a m em b e r fu n ction: 1. De te r m in e (s ta tically) its inde x in th e dispatch ta b le. 2. Follow p oin te r a t th a t in d e x in th e ob je c t's dispatch to th e cod e for th e fun c tion. 3. In voke th a t func tion.

22 An Ob se r vation Wh e n la ying out fields in a n object, w e g a ve e ve r y field a n offse t. De r ive d classe s h ave t h e b a se cla ss fields in t h e sa m e or d e r a t th e b e gin n in g. Layou t of Base Base.x Base.y Layou t of Derived Base.x Base.y Derived.z Ca n w e d o somet h ing simila r with fun ctions?

23 Dispatch Ta bles class Base { class Derived extends Base { int x; int y; void sayhi() { void sayhi() { Print("Base"); Print("Derived"); sayhi Base.x sayhi Base.x Derived.y Base.sayHi Derived.sayHi

24 Dispatch Tables class Base { class Derived extends Base { int x; void sayhi() { int y; void sayhi() { Print("Base"); Print("Derived"); b sayhi Base.x sayhi Base.x Derived.y Base.sayHi Derived.sayHi Base b = new b.sayhi(); Base; Genera4ng code for b.sayhi(): Let fn = the pointer 0 bytes after b Call fn(b)

25 Dispatch Ta bles class Base { class Derived extends Base { int x; void sayhi() { int y; void sayhi() { Print("Base"); Print("Derived"); b sayhi Base.x sayhi Base.x Derived.y Base.sayHi Derived.sayHi Base b = new b.sayhi(); Derived; Genera4ng code for b.sayhi(): Let fn = the pointer 0 bytes after b Call fn(b)

26 More on Dispatch Tables class Base { int x; void sayhi() { Print("Hi Mom!"); Base clone() return new Base; class Derived extends Base { int y; { Derived clone() { return new Derived;

27 MMore e Virtu on adispatch l F unction Tables class Base { int x; void sayhi() { Print("Hi Mom!"); Base clone() return new Base; Base.sayHi Base.clone class Derived extends Base { int y; { Derived clone() { return new Derived; sayhi clone Base.x Derived.clone

28 MMore e Virtu on adispatch l F unction Tables class Base { class Derived extends Base int x; { int y; void sayhi() { Print("Hi Mom!"); Base clone() { Derived clone() { return new Base; return new Derived; Base.sayHi Base.clone sayhi clone Base.x Derived.clone sayhi clone Base.x Derived.y

29 Ana lyzing our Approach Advan ta g e s Tim e t o d e t e rm in e fun ction t o ca ll is O(1 ). (a nd a g ood O(1 ) to o!) Disadvantages Objec t s izes are? Ea ch ob ject n eed s to h a ve s p a c e for?. Objec t cre a tio n is slower. Why?

30 A Com mon Optim ization : class Base { int x; void sayhi() { Print("Base"); From this class Derived extends Base { int y; Base clone() { Derived clone() { return new Base; return new Derived; Base.sayHi Base.clone sayhi clone Base.x Derived.clone sayhi clone Base.x Derived.y

31 A Com mon Optim ization : class Base { int x; void sayhi() { Print("Base"); To This class Derived extends Base { int y; Base clone() { Derived clone() { return new Base; return new Derived; Base.sayHi Base.clone sayhi clone Vtable* Base.x Derived.clone sayhi clone Per class Vtable* Base.x Derived.y Object instances

32 Thus, objects in M e m or y Base.sayHi Base.clone Derived.clone One dispatch table per class sayhi clone sayhi clone Object instances Vtable* Base.x Vtable* Base.x Vtable* Base.x Derived.y Vtable* Base.x Derived.y

33 Generalized Objec t Layout Vtable* Field 0... Field N Method 0 Method 1... Method K Vtable* Field 0... Field N Field 0... Field M Method 0 Method 1... Method K Method 0... Method L

34 Summary: Dyna m ic Dispatch in O(1) - Cr e a te a s ingle in sta n ce dispatch table for e a c h cla s s. - Each obje ct s tore s a poin ter to th e dispatch ta b le. - Ca n follow t h e poin ter t o t h e table in O(1). - Ca n in dex in to the t able in O(1 ). - Ca n s e t th e dispatch t a b le point e r of n ew obje c t in O(1). - In creas e s th e size of e a c h obje ct by O(1 ). This is t h e s o lu t io n used in m o s t C+ + a nd Ja va imple menta t io n s.

35 Your Turn to Draw Pictures Draw the objects, dispatch tables Class A { Class C extends B { a: Int <- 0; c: Int <- 3; d: Int <- 1; h(): Int {a <- a * c; f(): Int ; {a <- a+d; ; Suppose the following ops occur: Class B extends A { A x = new A(); b: Int <- 2; B y = new B(); f(): Int { a ; A z = new A(); g(): Int { a<- a b; C w = new C(); ; C t = new C();

Runtime Environment. Part II May 8th Wednesday, May 8, 13

Runtime Environment. Part II May 8th Wednesday, May 8, 13 Runtime Environment Part II May 8th 2013 Wednesday, May 8, 13 Where We Are Source Code Lexical Analysis Syntax Analysis Semantic Analysis IR Generation IR Optimization Code Generation Optimization Machine

More information

Runtime Environments, Part II

Runtime Environments, Part II Runtime Environments, Part II Announcements Programming Project 3 checkpoint feedback emailed out; let me know ASAP if you didn't hear back from us. Programming Project 3 due Wednesday at 11:59PM. OH every

More information

CS453 CLASSES, VARIABLES, ASSIGNMENTS

CS453 CLASSES, VARIABLES, ASSIGNMENTS CS453 CLASSES, VARIABLES, ASSIGNMENTS CS453 Lecture Code Generation for Classes 1 PA6 new in MeggyJava member / instance variables local variables assignments let s go check out the new MeggyJava grammar

More information

Implementing Classes and Assignments

Implementing Classes and Assignments Implementing Classes and Assignments Logistics Quiz 5 has been posted PA5 Overview today, will be posted Monday night, Due May 4 th HW4 will also be posted Monday night, Due April 27 th Will talk about

More information

Y oung W on Lim 9 /1 /1 7

Y oung W on Lim 9 /1 /1 7 Overview (1 A) Cop y rig h t (c) 2 0 0 9-2 0 1 7 Y oung W. Lim. Perm ission is g ra nted to cop y, d istribute a nd /or m od ify th is d ocum ent und er th e term s of th e G N UFree D ocum enta tion License,

More information

Implementing Classes, Arrays, and Assignments

Implementing Classes, Arrays, and Assignments Implementing Classes, Arrays, and Assignments Logistics PA4 peer reviews are due Saturday HW9 is due Monday PA5 is due December 5th Will talk about monad implementation at some point, until then check

More information

Next. Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over the basics of the system

Next. Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over the basics of the system A-PDF Merger DEMO : Purchase from www.a-pdf.com to remove the watermark User Guide Next Welcome! This guide will get you started down the path to bulk text messaging excellence. Let s start by going over

More information

M a p s 2. 0 T h e c o o p era tive w ay t o ke e p m a p s u p t o d a t e. O l iver. Kü h n

M a p s 2. 0 T h e c o o p era tive w ay t o ke e p m a p s u p t o d a t e. O l iver. Kü h n M a p s 2. 0 T h e c o o p era tive w ay t o ke e p m a p s u p t o d a t e O l iver Kü h n s k obble r G m b H M a i 2 0 1 3 This is a stor y about how we all get unconscious ly involved in creating digital

More information

Machine Instructions - II. Hwansoo Han

Machine Instructions - II. Hwansoo Han Machine Instructions - II Hwansoo Han Conditional Operations Instructions for making decisions Alter the control flow - change the next instruction to be executed Branch to a labeled instruction if a condition

More information

LoGA: Low-Overhead GPU Accounting Using Events

LoGA: Low-Overhead GPU Accounting Using Events 10th ACM International Systems and Storage Conference, (KIT) KIT The Research University in the Helmholtz Association www.kit.edu GPU Sharing GPUs increasingly popular in computing Not every application

More information

The Novell Application Launcher

The Novell Application Launcher The Novell Application Launcher BY JOHN E. JOHNSTO N The Novell Application L a u n cher promises to simplify the software distribution process by placing knowledge of the application and the required

More information

Architectural Design

Architectural Design Architectural Design Establishing the overall structure of a software system Ian Sommerville - Software Engineering 1 Software architecture The design process for identifying the sub-systems making up

More information

IR Generation. May 13, Monday, May 13, 13

IR Generation. May 13, Monday, May 13, 13 IR Generation May 13, 2013 Monday, May 13, 13 Monday, May 13, 13 Monday, May 13, 13 Midterm Results Grades already in Repeal policy Talk to TA by the end of the Tuesday reserve the right to regrade the

More information

Day-Night Long Range Camera System

Day-Night Long Range Camera System United Vision Solutions Day-Night Long Range Camera System Our camera system designed for long range surveillance 24/7 utilized the most advance optical sensors and lenses EV3000-P-EMCCD 1000 Hi-Resolution

More information

Approach I: Do Nothing

Approach I: Do Nothing Exceptions and Continuations ndling in programming languages is a very limited form on ntinues after a function call that is still active when sed pproach II: Non-Standard Return to modify calls so that

More information

Week 7. Statically-typed OO languages: C++ Closer look at subtyping

Week 7. Statically-typed OO languages: C++ Closer look at subtyping C++ & Subtyping Week 7 Statically-typed OO languages: C++ Closer look at subtyping Why talk about C++? C++ is an OO extension of C Efficiency and flexibility from C OO program organization from Simula

More information

Chapter 4: Application Protocols 4.1: Layer : Internet Phonebook : DNS 4.3: The WWW and s

Chapter 4: Application Protocols 4.1: Layer : Internet Phonebook : DNS 4.3: The WWW and  s Chapter 4: Application Protocols 4.1: Layer 5-7 4.2: Internet Phonebook : DNS 4.3: The WWW and E-Mails OSI Reference Model Application Layer Presentation Layer Session Layer Application Protocols Chapter

More information

Memory. Memory Technologies

Memory. Memory Technologies Memory Memory technologies Memory hierarchy Cache basics Cache variations Virtual memory Synchronization Galen Sasaki EE 36 University of Hawaii Memory Technologies Read Only Memory (ROM) Static RAM (SRAM)

More information

MODEL 528 SERIES DIGITAL COMMUNICATION STATION TABLE OF CONTENTS. Sec tion 1, Soft ware setup Sec tion 2, Hard ware setup...

MODEL 528 SERIES DIGITAL COMMUNICATION STATION TABLE OF CONTENTS. Sec tion 1, Soft ware setup Sec tion 2, Hard ware setup... TABLE OF CONTENTS DIGITAL COMMUNICATION STATION TABLE OF CONTENTS Sec tion 1, Soft ware setup...................... 1 Sec tion 2, Hard ware setup..................... 21 528SRM Internal Speaker Connections...........

More information

CCT-1301 MK2 USER MANUAL

CCT-1301 MK2 USER MANUAL denver-elect ronics. com CCT-1301 MK2 USER MANUAL www.facebook.com/denverelectronics ENG-1 1.Shutter 1 7 8 2 3 2.Speaker 3.ON/OFF 4.USB port 5.Micro SD card slot 6.Lens 4 7.Charging indicator light 8.Busy

More information

Project Compiler. CS031 TA Help Session November 28, 2011

Project Compiler. CS031 TA Help Session November 28, 2011 Project Compiler CS031 TA Help Session November 28, 2011 Motivation Generally, it s easier to program in higher-level languages than in assembly. Our goal is to automate the conversion from a higher-level

More information

Compilers. Cool Semantics II. Alex Aiken

Compilers. Cool Semantics II. Alex Aiken Compilers Informal semantics of new T Allocate locations to hold all attributes of an object of class T Essentially, allocate a new object Set attributes with their default values Evaluate the initializers

More information

Designing Baldor's System z SAP solution

Designing Baldor's System z SAP solution Designing Baldor's System z SAP solution THE BEST RUN BUSINESSES RUN SAP Mark Shackelford VP - Information Services June 11th, 2012 Baldor's Mission Statement is t o b e t h e b e st (a s d e t e r m in

More information

Portable Long Range Camera System

Portable Long Range Camera System United Vision Solutions Portable Long Range Camera System Our camera system designed for long range surveillance 24/7 utilized the most advance optical sensors and lenses EV3000-TriPod-EMCCD Hi-Resolution

More information

PRODUCT CATALOG 2018

PRODUCT CATALOG 2018 PRODUCT CATALOG 2018 BROADCAST QUALITY MADE AFFORDABLE 2 Welcome We invite you to explore our 2018 Product Catalog. Here at PTZOptics we pride ourselves on providing Broadcast quality equipment, made affordable.

More information

Chapter 2. Instruction Set Design. Computer Architectures. software. hardware. Which is easier to change/design??? Tien-Fu Chen

Chapter 2. Instruction Set Design. Computer Architectures. software. hardware. Which is easier to change/design??? Tien-Fu Chen Computer Architectures Chapter 2 Tien-Fu Chen National Chung Cheng Univ. chap2-0 Instruction Set Design software instruction set hardware Which is easier to change/design??? chap2-1 Instruction Set Architecture:

More information

Assembly Language Programming. CPSC 252 Computer Organization Ellen Walker, Hiram College

Assembly Language Programming. CPSC 252 Computer Organization Ellen Walker, Hiram College Assembly Language Programming CPSC 252 Computer Organization Ellen Walker, Hiram College Instruction Set Design Complex and powerful enough to enable any computation Simplicity of equipment MIPS Microprocessor

More information

Training manual: An introduction to North Time Pro 2019 ESS at the terminal

Training manual: An introduction to North Time Pro 2019 ESS at the terminal Training manual: An introduction to North Time Pro 2019 ESS at the terminal Document t2-0800 Revision 15.1 Copyright North Time Pro www.ntdltd.com +44 (0) 2892 604000 For more information about North

More information

Three-Address Code IR

Three-Address Code IR Three-Address Code IR Announcements Programming Project 3 due tonight at 11:59PM. OH today after lecture. Ask questions on Piazzza! Ask questions via email! Programming Project 4 out, due Wednesday, August

More information

CSharp. Microsoft. UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk

CSharp. Microsoft. UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk Microsoft 70-551-CSharp UPGRADE-MCAD Skills to MCPD Dvlpr by Using the MS.NET Frmwk Download Full Version : http://killexams.com/pass4sure/exam-detail/70-551-csharp Answer: A,C QUESTION: 78 You create

More information

second page of program icons in Launchpad the small dot that is fainter in color at the bottom of the display,

second page of program icons in Launchpad the small dot that is fainter in color at the bottom of the display, Page 1 TruE Studio From TruEmbroideryTM Software Monogram with Individual Letters Certification Lesson 3: Make it Your Own with Monograms! 1, Open TruE'M Studio from the Dock or from launchpad 2, To open

More information

T his article is downloaded from

T his article is downloaded from Commonly asked interview questions on inheritance I have summed up all the inheritance control flow related concepts generally asked during O O P S technical interview. M ore or les s, if you unders tand

More information

TRYMUS. 1. Overview. V.22bis/V.32bis/V.34/V.90/V.92 Modem Module with ISOmodem TM. and Global DAA. TRYMUS Corporation. Feature.

TRYMUS. 1. Overview. V.22bis/V.32bis/V.34/V.90/V.92 Modem Module with ISOmodem TM. and Global DAA. TRYMUS Corporation. Feature. 1. Overview Feature Data Modem Formats - ITU-T a. UM2404SM : 300bps to 2400bps b. UM2415SM : 300 bps to 14.4kbps c. UM2434SM : 300 bps to 33.6kbps d. UM2457SM : 300 bps to 56kbps e. UM2493SM : 300bps to

More information

Introduction to DBMS

Introduction to DBMS Introduction to DBMS Purpose of Database Systems View of Data Data Models Data Definition Language Data Manipulation Language Transaction Management Storage Management Database Administrator Database Users

More information

Protection. - Programmers typically assume machine has enough memory - Sum of sizes of all processes often greater than physical memory 1 / 36

Protection. - Programmers typically assume machine has enough memory - Sum of sizes of all processes often greater than physical memory 1 / 36 Want processes to co-exist Issues in sharing physical memory rotection - A bug in one process can corrupt memory in another - Must somehow prevent process A from trashing B s memory - Also prevent A from

More information

4M200. Test Block System

4M200. Test Block System Test Block System > Colour coded finger safe test sockets > 14 independent test groups > Compatible with industry standard 14 circuit test blocks and test plugs > Optional auxiliary supply isolation circuit

More information

JRNL : Print and Web Editing and Design

JRNL : Print and Web Editing and Design University of Montana ScholarWorks at University of Montana Syllabi Course Syllabi 1-2014 JRNL 430.01: Print and Web Editing and Design G. Keith Graham University of Montana - Missoula, keith.graham@umontana.edu

More information

So il Geochem ica l Ba seline and Env ironm en ta l Background Va lues of Agr icultura l Reg ion s in Zhejiang Prov ince.

So il Geochem ica l Ba seline and Env ironm en ta l Background Va lues of Agr icultura l Reg ion s in Zhejiang Prov ince. 2007, 23 (2) : 81-88 Journal of Ecology and Rural Environm ent 1, 1, 2, 1 (1., 311203;, 065000) 2. :,, 13,,, 52(), : ; ; ; : P632; X8; P59 : A: 1673-4831 (2007) 02-0081 - 08 So il Geochem ica l Ba seline

More information

Code Generation II. Code generation for OO languages. Object layout Dynamic dispatch. Parameter-passing mechanisms Allocating temporaries in the AR

Code Generation II. Code generation for OO languages. Object layout Dynamic dispatch. Parameter-passing mechanisms Allocating temporaries in the AR Code Generation II Code generation for OO languages Object layout Dynamic dispatch Parameter-passing mechanisms Allocating temporaries in the AR Object Layout OO implementation = Stuff from last lecture

More information

Department of Computer and Mathematical Sciences

Department of Computer and Mathematical Sciences _ Unit 2: Programming in C++, pages 1 of 8 Department of Computer and Mathematical Sciences CS 1410 Intro to Computer Science with C++ 8 Lab 8: While Loops Objectives: The objective of this lab is to help

More information

22. Tequila Samba. l_e_[,_j' r_j" doo doo _ doo doo doo doo Te- qui- la, Te - qui - la Sam-ba, J-) .'-- F-T-- c..i'-) J-l. fo, uffi. r46.

22. Tequila Samba. l_e_[,_j' r_j doo doo _ doo doo doo doo Te- qui- la, Te - qui - la Sam-ba, J-) .'-- F-T-- c..i'-) J-l. fo, uffi. r46. r46 22. Tequila Samba Lively Sarnba (J = c.120) p GT'Y TURNER 'n doo doo doo doo _ doo doo doo ^doo Te-qui -la, Tel- t. -n J-) nw ey call Lively Samba my love the (J = c. 120) who does_ the Te-qui - la

More information

System Functional Check (In case of change BEP 1 into BEP2 or BEP3 ) Check the system after BEP is assembled on the console.

System Functional Check (In case of change BEP 1 into BEP2 or BEP3 ) Check the system after BEP is assembled on the console. 8-8-1-7 System Functional Check (In case of change BEP 1 into BEP2 or BEP3 ) Check the system after BEP is assembled on the console. 1.) Pull Up Circuit Breaker. 2.) Insert the Service Key to Rear Panel

More information

Subroutines & Software Delay Routines

Subroutines & Software Delay Routines Subroutines & Software Delay Routines Department of EIE / Pondicherry Engineering College 1 Subroutines & Software Delay Routines This chapter introduces software based timing routines. The examples introduce

More information

Run-time Environments. Lecture 13. Prof. Alex Aiken Original Slides (Modified by Prof. Vijay Ganesh) Lecture 13

Run-time Environments. Lecture 13. Prof. Alex Aiken Original Slides (Modified by Prof. Vijay Ganesh) Lecture 13 Run-time Environments Lecture 13 by Prof. Vijay Ganesh) Lecture 13 1 What have we covered so far? We have covered the front-end phases Lexical analysis (Lexer, regular expressions,...) Parsing (CFG, Top-down,

More information

Portable Long Range Camera System

Portable Long Range Camera System United Vision Solutions Portable Long Range Camera System Our camera system designed for long range surveillance 24/7 utilized the most advance optical sensors and lenses EV3000-TriPod-EMCCD Hi-Resolution

More information

SM15K - Interface modules

SM15K - Interface modules DELTA ELEKTRONIKA B.V. DC POWER SUPPLIES Vissersdijk 4, 4301 ND Zierikzee, the Netherlands www.deltapowersupplies.com Tel. +31 111 413656 SM15K - Interface modules Mod els Description INT MOD M/S-2 Master/Slave

More information

MIPS Functions and the Runtime Stack

MIPS Functions and the Runtime Stack MIPS Functions and the Runtime Stack COE 301 Computer Organization Prof. Muhamed Mudawar College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals Presentation Outline

More information

Chapter 3 - Functions

Chapter 3 - Functions Chapter 3 - Functions 1 Outline 3.1 Introduction 3.2 Progra m Components in C++ 3.3 Ma th Libra ry Func tions 3.4 Func tions 3.5 Func tion De finitions 3.6 Func tion Prototypes 3.7 He a de r File s 3.8

More information

Nilesh Bhuva Oracle DBA Atul IT

Nilesh Bhuva Oracle DBA Atul IT CHANGE DATA CAPTURE (CDC) IN ORACLE Nilesh Bhuva Oracle DBA Atul IT 1 AGENDA CDC INTRODUCTION CDC CONCEPTS CDC PROCESS FLOW DEMO Q & A 2 INTRODUCTION CDC is an oracle tool which can help to manage data

More information

AIX, AppleTalk Services, and the Network Server. Quick Reference Card

AIX, AppleTalk Services, and the Network Server. Quick Reference Card apple AIX, AppleTalk Services, and the Network Server Quick Reference Card Hardware Basics To verify the SCSI devices, see the instructions on the reverse side. For more information, see Setting Up the

More information

Setting Up read&write for ipad

Setting Up read&write for ipad Setting Up read&write for ipad 1. Open up Settings 2. Tap on General. 3. Move down until you find the keyboard button. Tap on it. 1. 2. 3. Settings Keyboards 3. 4. 3. Tap on Keyboards. Then Add New Keyboard

More information

Intermediate Programming, Spring 2017*

Intermediate Programming, Spring 2017* 600.120 Intermediate Programming, Spring 2017* Misha Kazhdan *Much of the code in these examples is not commented because it would otherwise not fit on the slides. This is bad coding practice in general

More information

Programming Languages and Techniques (CIS120)

Programming Languages and Techniques (CIS120) Programming Languages and Techniques (CIS120) Lecture 26 March 23, 2016 Inheritance and Dynamic Dispatch Chapter 24 Inheritance Example public class { private int x; public () { x = 0; } public void incby(int

More information

EASTER VIGIL: EUCHARISTIC PRAYER 2

EASTER VIGIL: EUCHARISTIC PRAYER 2 EASTER VIGIL: EUCHARISTIC PRAYER 2 4 7 8 CELEBRANT CONGREGATION CELEBRANT The Lord be with you. And with your spi - rit. Lift up your hearts. ( 4)/C ( 4)/C G /D D CONGREGATION CELEBRANT CONGREGATION We

More information

Solution Guide for Chapter 18

Solution Guide for Chapter 18 Solution Guide for Chapter 18 Here are the solutions for the Doing the Math exercises in Girls Get Curves! DTM from p. 310-311 2. The diameter of a circle is 6 ft across. A chord measures 4 ft. How far

More information

ENDF/B-VII.1 versus ENDFB/-VII.0: What s Different?

ENDF/B-VII.1 versus ENDFB/-VII.0: What s Different? LLNL-TR-548633 ENDF/B-VII.1 versus ENDFB/-VII.0: What s Different? by Dermott E. Cullen Lawrence Livermore National Laboratory P.O. Box 808/L-198 Livermore, CA 94550 March 17, 2012 Approved for public

More information

CSharp. Microsoft. UPGRADE- MCAD Skills to MCTS Web Apps Using MS.NET Frwrk

CSharp. Microsoft. UPGRADE- MCAD Skills to MCTS Web Apps Using MS.NET Frwrk Microsoft 70-559-CSharp UPGRADE- MCAD Skills to MCTS Web Apps Using MS.NET Frwrk Download Full Version : http://killexams.com/pass4sure/exam-detail/70-559-csharp C. class MyDic : Dictionary

More information

- Established working set model - Led directly to virtual memory. Protection

- Established working set model - Led directly to virtual memory. Protection Administrivia Virtual Lab 1 due Friday 12pm (noon) We give will give short extensions to groups that run into trouble But email us: - How much is done and left? - How much longer do you need? Attend section

More information

Dell Conference Room Monitors

Dell Conference Room Monitors 1 Dell Conference Room Monitors Dell Conference Room Mo nito r Line Up C5517H C7016H C7017T 55 monitor 70 monitor 70 Touch monitor 1080P FHD (1920 x 1080) Monitor Scalar for clear text and image Surface:

More information

Compilers and computer architecture: A realistic compiler to MIPS

Compilers and computer architecture: A realistic compiler to MIPS 1 / 1 Compilers and computer architecture: A realistic compiler to MIPS Martin Berger November 2017 Recall the function of compilers 2 / 1 3 / 1 Recall the structure of compilers Source program Lexical

More information

COMeSafety Specific Support Action

COMeSafety Specific Support Action COMeSafety Specific Support Action ITS Consolidation and Standardization Common Architecture Dr. Andreas Lübke, Volkswagen AG February 5th, 2009 Outline Introduction COMeSafety Goals Partners Consolidation

More information

SECTIONALBATHWARE. escape the ordinary. aquariusproducts.com

SECTIONALBATHWARE. escape the ordinary. aquariusproducts.com SECTIONALBATHWARE escape the ordinary aquariusproducts.com SECTIONALBATHWARE premium residential bathware Upgrading? Aquarius Sectional Bathware is the ultimate renovation and remodel bathing solution.

More information

J1 Harness Connector Parts (Male Pins & Plug Housings) Picture QTY Used in Manufacturer Manufacturer PN Description Molex Cross Reference

J1 Harness Connector Parts (Male Pins & Plug Housings) Picture QTY Used in Manufacturer Manufacturer PN Description Molex Cross Reference Molex Plug PENTA J Power Harness - P/N MVP-4037-08-J 6-Pin Molex Position Color Use J Block 4 Red Main Power In J. 2 5 2 Black Return In J.2 3 6 3 White or Blue Ignition In J.3 Rear View 4 Red Main Power

More information

Operational Semantics of Cool

Operational Semantics of Cool Operational Semantics of Cool Lecture 23 Dr. Sean Peisert ECS 142 Spring 2009 1 Status Project 3 due on Friday Project 4 assigned on Friday. Due June 5, 11:55pm Office Hours this week Fri at 11am No Class

More information

Code Generation & Parameter Passing

Code Generation & Parameter Passing Code Generation & Parameter Passing Lecture Outline 1. Allocating temporaries in the activation record Let s optimize our code generator a bit 2. A deeper look into calling sequences Caller/Callee responsibilities

More information

VB. Microsoft. TS- Visual Studio Tools for 2007 MS Office System (VTSO)

VB. Microsoft. TS- Visual Studio Tools for 2007 MS Office System (VTSO) Microsoft 70-543-VB TS- Visual Studio Tools for 2007 MS Office System (VTSO) Download Full Version : https://killexams.com/pass4sure/exam-detail/70-543-vb LONDON. You need to grant permission for the add-in

More information

Article Number: 549 Rating: Unrated Last Updated: Tue, May 30, 2017 at 11:02 AM

Article Number: 549 Rating: Unrated Last Updated: Tue, May 30, 2017 at 11:02 AM Configuring Your Server With A Static IP Address Article Number: 549 Rating: Unrated Last Updated: Tue, May 30, 2017 at 11:02 AM O ve r vie w This KB article shows you how to configure your Nagios server

More information

PowerTOC v3 User Guide

PowerTOC v3 User Guide PowerTOC v3 User Guide The easiest way to add table of contents and agenda slides to your PowerPoint presentation! PowerTOC v3 User Guide 2006-2018 by Mom Soft, a ll righ ts reserved All rights reserved.

More information

Standards, Models, and Language

Standards, Models, and Language Chapter 3 Basic Foundations: Standards, Models, and Language 1 Introduction Standards Standards organizations Protocol standards of transport layers Protocol standards of management (application) layer

More information

Chapter 1 Introduction to Computers and C++ Programming

Chapter 1 Introduction to Computers and C++ Programming Chapter 1 Introduction to Computers and C++ Programming 1 Outline 1.1 Introduction 1.2 Wha t is a Computer? 1.3 Computer Orga niza tion 1.4 Evolution of Ope ra ting Syste ms 1.5 Persona l Computing, Distributed

More information

Component-based software engineering 2. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1

Component-based software engineering 2. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 Component-based software engineering 2 Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 19 Slide 1 The CBSE process When reusing components, it is essential to make trade-offs between ideal

More information

Memory Hierarchy: Motivation

Memory Hierarchy: Motivation Memory Hierarchy: Motivation The gap between CPU performance and main memory speed has been widening with higher performance CPUs creating performance bottlenecks for memory access instructions. The memory

More information

ECE2020 Test 3 Summer 2013 GTL

ECE2020 Test 3 Summer 2013 GTL ECE22 Te 3 Summer 213 GTL July 17,213 Name: Calculators not allowed. Show your work for any possible partial credit or in some cases for any credit at all (5 pages plus a diagram page, 1 possible points).

More information

Memory Hierarchy: The motivation

Memory Hierarchy: The motivation Memory Hierarchy: The motivation The gap between CPU performance and main memory has been widening with higher performance CPUs creating performance bottlenecks for memory access instructions. The memory

More information

Winter Compiler Construction T10 IR part 3 + Activation records. Today. LIR language

Winter Compiler Construction T10 IR part 3 + Activation records. Today. LIR language Winter 2006-2007 Compiler Construction T10 IR part 3 + Activation records Mooly Sagiv and Roman Manevich School of Computer Science Tel-Aviv University Today ic IC Language Lexical Analysis Syntax Analysis

More information

Implementation of 4K x 4K CCD Camera system. for. DFM Telescope

Implementation of 4K x 4K CCD Camera system. for. DFM Telescope Implementation of 4K x 4K CCD Camera system for DFM Telescope Introduction: This project (Mosaic 4K X4K CCD Camera system) has been initiated by Prof.A.K Pati,for use as imager in the 1.3M DFM Telescope

More information

Operational Semantics. One-Slide Summary. Lecture Outline

Operational Semantics. One-Slide Summary. Lecture Outline Operational Semantics #1 One-Slide Summary Operational semantics are a precise way of specifying how to evaluate a program. A formal semantics tells you what each expression means. Meaning depends on context:

More information

G52CPP C++ Programming Lecture 13

G52CPP C++ Programming Lecture 13 G52CPP C++ Programming Lecture 13 Dr Jason Atkin http://www.cs.nott.ac.uk/~jaa/cpp/ g52cpp.html 1 Last lecture Function pointers Arrays of function pointers Virtual and non-virtual functions vtable and

More information

Les s on Topics. Les s on Objectives. Student Files Us ed

Les s on Topics. Les s on Objectives. Student Files Us ed Lesson 1 - Getting Started 1 Lesson 1 Getting S ta rted Les s on Topics Database Basics Starting Access and Opening a Database The Access Screen Viewing the Contents of a Database Viewing a Database Table

More information

Experiences of Europeans seeking health information in the cyberspace November 2005, Dubrovnik. Ivica Milicevic. Work Research Centre, Dublin

Experiences of Europeans seeking health information in the cyberspace November 2005, Dubrovnik. Ivica Milicevic. Work Research Centre, Dublin Evidence-based support for the design and delivery of user-centred online public services Experiences of Europeans seeking health information in the cyberspace 21-23 Work Research Centre, Dublin c 2 Research

More information

Ilari Laakso. Writing These Poems. Settings of three poems by Chrys Salt. for female voice and piano

Ilari Laakso. Writing These Poems. Settings of three poems by Chrys Salt. for female voice and piano 068 Ilari Laakso Writing These Poems Settings of three oems by Chrys Salt for female voice and iano 018 Coyright by the Cooser All Rights Reserved No art of this ublication may be coied or reroduced in

More information

Administrivia. Lab 1 due Friday 12pm. We give will give short extensions to groups that run into trouble. But us:

Administrivia. Lab 1 due Friday 12pm. We give will give short extensions to groups that run into trouble. But  us: Administrivia Lab 1 due Friday 12pm. We give will give short extensions to groups that run into trouble. But email us: - How much is done & left? - How much longer do you need? Attend section Friday at

More information

V- Co m m a n d e r R e le a s e G A R C

V- Co m m a n d e r R e le a s e G A R C 1 V-Commander Release 4.7.1 GA RC System Requirements What's New in this Release For Help and Support Installing V-Commander Resolved Issues Known Issues System Requirements Virtualization Platforms Supported

More information

CSE Lecture In Class Example Handout

CSE Lecture In Class Example Handout CSE 30321 Lecture 07-09 In Class Example Handout Part A: A Simple, MIPS-based Procedure: Swap Procedure Example: Let s write the MIPS code for the following statement (and function call): if (A[i] > A

More information

International Telecommunication Union. The Methodology for NGN Technical Means Testing (Q and Resolution 17 of WTDC 06)

International Telecommunication Union. The Methodology for NGN Technical Means Testing (Q and Resolution 17 of WTDC 06) International Telecommunication Union Ministry of information technologies and communications of the Russian Federation Central Research Telecommunication Institute of the Russian Federation The Methodology

More information

Notes: 1. The module is not protected against ESD, avoid potential difference between yourself and the module before use.

Notes: 1. The module is not protected against ESD, avoid potential difference between yourself and the module before use. The Digital PIR USB Interface module is a link between most* Digital PIR Detectors and a Personal Computer. The microcontroller on the module reads all available information from the Digital Detector on

More information

2.11 Assignment Operators. Assignment expression abbreviations c = c + 3; can be abbreviated as c += 3; using the addition assignment operator

2.11 Assignment Operators. Assignment expression abbreviations c = c + 3; can be abbreviated as c += 3; using the addition assignment operator 2.11 Assignment Operators 1 Assignment expression abbreviations c = c + 3; can be abbreviated as c += 3; using the addition assignment operator Statements of the form variable = variable operator expression;

More information

CD _. _. 'p ~~M CD, CD~~~~V. C ~'* Co ~~~~~~~~~~~~- CD / X. pd.0 & CD. On 0 CDC _ C _- CD C P O ttic 2 _. OCt CD CD (IQ. q"3. 3 > n)1t.

CD _. _. 'p ~~M CD, CD~~~~V. C ~'* Co ~~~~~~~~~~~~- CD / X. pd.0 & CD. On 0 CDC _ C _- CD C P O ttic 2 _. OCt CD CD (IQ. q3. 3 > n)1t. n 5 L n q"3 +, / X g ( E 4 11 " ') $ n 4 ) w Z$ > _ X ~'* ) i 1 _ /3 L 2 _ L 4 : 5 n W 9 U~~~~~~ 5 T f V ~~~~~~~~~~~~ (Q ' ~~M 3 > n)1 % ~~~~V v,~~ _ + d V)m X LA) z~~11 4 _ N cc ', f 'd 4 5 L L " V +,

More information

Once travel has been completed or expenses incurred, an expense report should be created in the ERS.

Once travel has been completed or expenses incurred, an expense report should be created in the ERS. Once travel has been completed or expenses incurred, an expense report should be created in the ERS. Creating an Expense Report In the ERS go to Expense, and click on Create New Report B CONCUR Re quests

More information

Page 1 of 29. PADS Viewer

Page 1 of 29. PADS Viewer Page 1 of 29 PADS Viewer Welcome to PADS Viewer Thank you for choosing PADS, one of the most advanced and complete digital signage software packages that are available today. This PADS Viewer manual describes

More information

The code generator must statically assign a location in the AR for each temporary add $a0 $t1 $a0 ; $a0 = e 1 + e 2 addiu $sp $sp 4 ; adjust $sp (!

The code generator must statically assign a location in the AR for each temporary add $a0 $t1 $a0 ; $a0 = e 1 + e 2 addiu $sp $sp 4 ; adjust $sp (! Lecture Outline Code Generation (II) Adapted from Lectures b Profs. Ale Aiken and George Necula (UCB) Allocating temporaries in the Activation Record Let s optimie cgen a little Code generation for OO

More information

Inheritance, Polymorphism and the Object Memory Model

Inheritance, Polymorphism and the Object Memory Model Inheritance, Polymorphism and the Object Memory Model 1 how objects are stored in memory at runtime? compiler - operations such as access to a member of an object are compiled runtime - implementation

More information

MPATE-GE 2618: C Programming for Music Technology. Unit 4.1

MPATE-GE 2618: C Programming for Music Technology. Unit 4.1 MPATE-GE 2618: C Programming for Music Technology Unit 4.1 Memory Memory in the computer can be thought of as a long string of consecutive bytes. Each byte has a corresponding address. When we declare

More information

Code Generation Super Lectures

Code Generation Super Lectures Code Generation Super Lectures Huge One-Slide Summary Assembly language is untyped, unstructured, low-level and imperative. In a load-store architecture, instructions operate on registers (which are like

More information

Tutorial: Working with layout

Tutorial: Working with layout Welcome to CorelDRAW, a comprehensive vector-based drawing program for the graphics professional. This tutorial introduces the layout and organization tools in CorelDRAW. These tools are essential for

More information

Resource Optimization

Resource Optimization Resource Optimization Compression Space Reclamation Scan Sharing Tim Vincent DB2 LUW Chief Architect June 18, 2010 Lower Storage Costs with Deep Compression With DB2 9, we re seeing compression rates up

More information

PROBLEM 1 : (Vocabulary: 8 points) For each of the words/phrases below, circle the denition that is the best description as it pertains in the context

PROBLEM 1 : (Vocabulary: 8 points) For each of the words/phrases below, circle the denition that is the best description as it pertains in the context Test 1: CPS 100 Owen Astrachan February 12, 1996 Name: Honor code acknowledgement (signature) Problem 1 Problem 2 Problem 3 Problem 4 Extra TOTAL: value 8 pts. 18 pts. 13 pts. 16 pts. 6 pts. 57 pts. grade

More information

Run-time Environments

Run-time Environments Run-time Environments Status We have so far covered the front-end phases Lexical analysis Parsing Semantic analysis Next come the back-end phases Code generation Optimization Register allocation Instruction

More information

Run-time Environments

Run-time Environments Run-time Environments Status We have so far covered the front-end phases Lexical analysis Parsing Semantic analysis Next come the back-end phases Code generation Optimization Register allocation Instruction

More information

Step 1: Get a login. There are two ways to get a login to the MBM Online Community: 1. Send an to requesting a login

Step 1: Get a login. There are two ways to get a login to the MBM Online Community: 1. Send an  to requesting a login MBM Online Community Training Sheet 1: Accessing the MBM Online Community Step 1: Get a login There are two ways to get a login to the MBM Online Community: 1. Send an email to admin@mbm.asn.au requesting

More information