understood as processors that match AST patterns of the source language and translate them into patterns in the target language.

Size: px
Start display at page:

Download "understood as processors that match AST patterns of the source language and translate them into patterns in the target language."

Transcription

1 A Basic Compier At a fundamenta eve compiers can be understood as processors that match AST patterns of the source anguage and transate them into patterns in the target anguage. Here we wi ook at a basic compier that transates Cuppa1 programs into exp1bytecode. Chap 6

2 A Basic Compier Cuppa1 Exp1bytecode

3 A Basic Compier Consider for exampe the AST pattern for the assignment statement in Cuppa1, ('assign', name, exp) We coud easiy envision transating this AST pattern into a pattern in Exp1bytecode as foows, store <name> <exp>; where <name> and <exp> are the appropriate transations of the variabe name and the assignment expression from Cuppa1 into Exp1bytecode.

4 A Basic Compier In our case it is not that difficut to come up with pattern transations for a the nonstructured statements and expressions in Cuppa1. For a the non-structured statements we have the pattern transations, ('assign', name, exp) => store <name> <exp>; ('put', exp) => print <exp>; ('get', name) => input <name>;

5 A Basic Compier And for the expressions we have, ('+', c1, c2) => ('+' <c1> <c2>) ('-', c1, c2) => ('-' <c1> <c2>) ('*', c1, c2) => ('*' <c1> <c2>) ('/', c1, c2) => ('/' <c1> <c2>) ('==', c1, c2) => ('==' <c1> <c2>) ('<=', c1, c2) => ('<=' <c1> <c2>) ('id', name) => <name> ('integer', vaue) => <vaue> ('uminus', vaue) => - <vaue> ('not', vaue) =>! <vaue>

6 A Basic Compier One way to transate the AST pattern for the whie oop into a code pattern in Exp1bytecode is, Note that we have to simuate the behavior of the Cuppa1 whie oop with jump statements in Exp1bytecode.

7 A Basic Compier We can do something simiar with if-then statements, Finay, adding the ese-statement to the if-then statement we have,

8 A Basic Compier One thing to keep in mind is the notion of target pattern compositionaity. By that we mean that any target anguage patterns generated from the same cass of AST patterns shoud be abe to be composed, Any one of the Exp1bytecode patterns due to statements in Cuppa1 shoud be abe to be composed with any other Exp1bytecode pattern due to a statement without ever generating incorrect target code. The same thing is true for Exp1bycode patterns generated from Cuppa1 expressions See the noop instructions at the end of the target patterns for whie, if-then, and if-then-ese.

9 A Basic Compier Architecture Our basic compier consists of: The Cuppa1 frontend A code generation tree waker

10 Frontend Pattern Transation Reca that the Cuppa1 frontend generates an AST for a source program, We can easiy appy our pattern transations to generate Exp1bytecode:

11 Codegen Tree Waker The code generator for our compier is a tree waker that waks the Cuppa1 AST and for each AST pattern that appears in a pattern transation rue it wi generate the corresponding target code. Cuppa1 statement patterns wi generate Exp1bytecode instructions on a ist and Cuppa1 expression patterns wi generated Exp1bytecode expressions returned as strings. The reason for this wi become cear ater when we ook at optimizations in this compier.

12 Codegen cuppa1_cc_codegen.py Reca the pattern transation, ('get', name) => input <name>; The codegen tree waker has a function for that, Even though the transation rue for the get statement demands that we aso generate the semicoon as part of the transation, we deay this unti we generate the actua machine instructions. We use Python s abiity to do pattern matching on tupes!

13 Codegen cuppa1_cc_codegen.py Reca the pattern transation, ('assign', name, exp) => store <name> <exp>; The codegen tree waker has a function for that,

14 Codegen Reca the pattern transation, cuppa1_cc_codegen.py The codegen tree waker has a function for that,

15 Codegen cuppa1_cc_codegen.py Reca the pattern transation for binops, The codegen tree waker has a function for that,

16 Codegen cuppa1_cc_codegen.py What remains to be ooked at is how the tree waker deas with Seq nodes since they act as the gue between the statements in the AST we saw above. Reated to this is how the waker deas with Ni nodes in a statement sequence since Seq sequences are Ni terminated.

17 Codegen cuppa1_cc_codegen.py

18 Running Codegen Consider our AST: Generated instruction ist:

19 Formatting the Output Convert the instruction tupe ist into a printabe target program.

20 Running the Phases of the Compier

21 Running the Phases of the Compier

22 Compiation vs Interpretation Compiation Interpretation

23 Compier Correctness We now have two ways to execute a Cuppa1 program: We can interpret the program directy with the Cuppa1 interpreter. We can first transate the Cuppa1 program into Exp1bytecode and then execute the bytecode in the abstract bytecode machine. A compier is correct if the transated program, when executed, gives the same resuts as the interpreted program.

24 Compier Correctness

25 Assignment Assignment #6 see webpage.

An Optimizing Compiler

An Optimizing Compiler An Optimizing Compier The big difference between interpreters and compiers is that compiers have the abiity to think about how to transate a source program into target code in the most effective way. Usuay

More information

Register Allocation. Consider the following assignment statement: x = (a*b)+((c*d)+(e*f)); In posfix notation: ab*cd*ef*++x

Register Allocation. Consider the following assignment statement: x = (a*b)+((c*d)+(e*f)); In posfix notation: ab*cd*ef*++x Register Aocation Consider the foowing assignment statement: x = (a*b)+((c*d)+(e*f)); In posfix notation: ab*cd*ef*++x Assume that two registers are avaiabe. Starting from the eft a compier woud generate

More information

Bottom-Up Parsing LR(1)

Bottom-Up Parsing LR(1) Bottom-Up Parsing LR(1) Previousy we have studied top-down or LL(1) parsing. The idea here was to start with the start symbo and keep expanding it unti the whoe input was read and matched. In bottom-up

More information

Intro to Programming & C Why Program? 1.2 Computer Systems: Hardware and Software. Why Learn to Program?

Intro to Programming & C Why Program? 1.2 Computer Systems: Hardware and Software. Why Learn to Program? Intro to Programming & C++ Unit 1 Sections 1.1-3 and 2.1-10, 2.12-13, 2.15-17 CS 1428 Spring 2018 Ji Seaman 1.1 Why Program? Computer programmabe machine designed to foow instructions Program a set of

More information

Professor: Alvin Chao

Professor: Alvin Chao Professor: Avin Chao Anatomy of a Java Program: Comments Javadoc comments: /** * Appication that converts inches to centimeters. * * @author Chris Mayfied * @version 01/21/2014 */ Everything between /**

More information

Functions. 6.1 Modular Programming. 6.2 Defining and Calling Functions. Gaddis: 6.1-5,7-10,13,15-16 and 7.7

Functions. 6.1 Modular Programming. 6.2 Defining and Calling Functions. Gaddis: 6.1-5,7-10,13,15-16 and 7.7 Functions Unit 6 Gaddis: 6.1-5,7-10,13,15-16 and 7.7 CS 1428 Spring 2018 Ji Seaman 6.1 Moduar Programming Moduar programming: breaking a program up into smaer, manageabe components (modues) Function: a

More information

Welcome - CSC 301. CSC 301- Foundations of Programming Languages

Welcome - CSC 301. CSC 301- Foundations of Programming Languages Wecome - CSC 301 CSC 301- Foundations of Programming Languages Instructor: Dr. Lutz Hame Emai: hame@cs.uri.edu Office: Tyer, Rm 251 Office Hours: TBA TA: TBA Assignments Assignment #0: Downoad & Read Syabus

More information

file://j:\macmillancomputerpublishing\chapters\in073.html 3/22/01

file://j:\macmillancomputerpublishing\chapters\in073.html 3/22/01 Page 1 of 15 Chapter 9 Chapter 9: Deveoping the Logica Data Mode The information requirements and business rues provide the information to produce the entities, attributes, and reationships in ogica mode.

More information

Insert the power cord into the AC input socket of your projector, as shown in Figure 1. Connect the other end of the power cord to an AC outlet.

Insert the power cord into the AC input socket of your projector, as shown in Figure 1. Connect the other end of the power cord to an AC outlet. Getting Started This chapter wi expain the set-up and connection procedures for your projector, incuding information pertaining to basic adjustments and interfacing with periphera equipment. Powering Up

More information

Solutions to the Final Exam

Solutions to the Final Exam CS/Math 24: Intro to Discrete Math 5//2 Instructor: Dieter van Mekebeek Soutions to the Fina Exam Probem Let D be the set of a peope. From the definition of R we see that (x, y) R if and ony if x is a

More information

Neural Network Enhancement of the Los Alamos Force Deployment Estimator

Neural Network Enhancement of the Los Alamos Force Deployment Estimator Missouri University of Science and Technoogy Schoars' Mine Eectrica and Computer Engineering Facuty Research & Creative Works Eectrica and Computer Engineering 1-1-1994 Neura Network Enhancement of the

More information

Modelling and Performance Evaluation of Router Transparent Web cache Mode

Modelling and Performance Evaluation of Router Transparent Web cache Mode Emad Hassan A-Hemiary IJCSET Juy 2012 Vo 2, Issue 7,1316-1320 Modeing and Performance Evauation of Transparent cache Mode Emad Hassan A-Hemiary Network Engineering Department, Coege of Information Engineering,

More information

l Tree: set of nodes and directed edges l Parent: source node of directed edge l Child: terminal node of directed edge

l Tree: set of nodes and directed edges l Parent: source node of directed edge l Child: terminal node of directed edge Trees & Heaps Week 12 Gaddis: 20 Weiss: 21.1-3 CS 5301 Fa 2016 Ji Seaman 1 Tree: non-recursive definition Tree: set of nodes and directed edges - root: one node is distinguished as the root - Every node

More information

Lecture outline Graphics and Interaction Scan Converting Polygons and Lines. Inside or outside a polygon? Scan conversion.

Lecture outline Graphics and Interaction Scan Converting Polygons and Lines. Inside or outside a polygon? Scan conversion. Lecture outine 433-324 Graphics and Interaction Scan Converting Poygons and Lines Department of Computer Science and Software Engineering The Introduction Scan conversion Scan-ine agorithm Edge coherence

More information

A Comparison of a Second-Order versus a Fourth- Order Laplacian Operator in the Multigrid Algorithm

A Comparison of a Second-Order versus a Fourth- Order Laplacian Operator in the Multigrid Algorithm A Comparison of a Second-Order versus a Fourth- Order Lapacian Operator in the Mutigrid Agorithm Kaushik Datta (kdatta@cs.berkeey.edu Math Project May 9, 003 Abstract In this paper, the mutigrid agorithm

More information

DETERMINING INTUITIONISTIC FUZZY DEGREE OF OVERLAPPING OF COMPUTATION AND COMMUNICATION IN PARALLEL APPLICATIONS USING GENERALIZED NETS

DETERMINING INTUITIONISTIC FUZZY DEGREE OF OVERLAPPING OF COMPUTATION AND COMMUNICATION IN PARALLEL APPLICATIONS USING GENERALIZED NETS DETERMINING INTUITIONISTIC FUZZY DEGREE OF OVERLAPPING OF COMPUTATION AND COMMUNICATION IN PARALLEL APPLICATIONS USING GENERALIZED NETS Pave Tchesmedjiev, Peter Vassiev Centre for Biomedica Engineering,

More information

MCSE Training Guide: Windows Architecture and Memory

MCSE Training Guide: Windows Architecture and Memory MCSE Training Guide: Windows 95 -- Ch 2 -- Architecture and Memory Page 1 of 13 MCSE Training Guide: Windows 95-2 - Architecture and Memory This chapter wi hep you prepare for the exam by covering the

More information

MACHINE learning techniques can, automatically,

MACHINE learning techniques can, automatically, Proceedings of Internationa Joint Conference on Neura Networks, Daas, Texas, USA, August 4-9, 203 High Leve Data Cassification Based on Network Entropy Fiipe Aves Neto and Liang Zhao Abstract Traditiona

More information

Outerjoins, Constraints, Triggers

Outerjoins, Constraints, Triggers Outerjoins, Constraints, Triggers Lecture #13 Autumn, 2001 Fa, 2001, LRX #13 Outerjoins, Constraints, Triggers HUST,Wuhan,China 358 Outerjoin R S = R S with danging tupes padded with nus and incuded in

More information

Intro to Programming & C Why Program? 1.2 Computer Systems: Hardware and Software. Hardware Components Illustrated

Intro to Programming & C Why Program? 1.2 Computer Systems: Hardware and Software. Hardware Components Illustrated Intro to Programming & C++ Unit 1 Sections 1.1-3 and 2.1-10, 2.12-13, 2.15-17 CS 1428 Fa 2017 Ji Seaman 1.1 Why Program? Computer programmabe machine designed to foow instructions Program instructions

More information

Alpha labelings of straight simple polyominal caterpillars

Alpha labelings of straight simple polyominal caterpillars Apha abeings of straight simpe poyomina caterpiars Daibor Froncek, O Nei Kingston, Kye Vezina Department of Mathematics and Statistics University of Minnesota Duuth University Drive Duuth, MN 82-3, U.S.A.

More information

Quality of Service Evaluations of Multicast Streaming Protocols *

Quality of Service Evaluations of Multicast Streaming Protocols * Quaity of Service Evauations of Muticast Streaming Protocos Haonan Tan Derek L. Eager Mary. Vernon Hongfei Guo omputer Sciences Department University of Wisconsin-Madison, USA {haonan, vernon, guo}@cs.wisc.edu

More information

Load Balancing by MPLS in Differentiated Services Networks

Load Balancing by MPLS in Differentiated Services Networks Load Baancing by MPLS in Differentiated Services Networks Riikka Susitaiva, Jorma Virtamo, and Samui Aato Networking Laboratory, Hesinki University of Technoogy P.O.Box 3000, FIN-02015 HUT, Finand {riikka.susitaiva,

More information

Arrays. Array Data Type. Array - Memory Layout. Array Terminology. Gaddis: 7.1-4,6

Arrays. Array Data Type. Array - Memory Layout. Array Terminology. Gaddis: 7.1-4,6 Arrays Unit 5 Gaddis: 7.1-4,6 CS 1428 Fa 2017 Ji Seaman Array Data Type Array: a variabe that contains mutipe vaues of the same type. Vaues are stored consecutivey in memory. An array variabe definition

More information

Arrays. Array Data Type. Array - Memory Layout. Array Terminology. Gaddis: 7.1-3,5

Arrays. Array Data Type. Array - Memory Layout. Array Terminology. Gaddis: 7.1-3,5 Arrays Unit 5 Gaddis: 7.1-3,5 CS 1428 Spring 2018 Ji Seaman Array Data Type Array: a variabe that contains mutipe vaues of the same type. Vaues are stored consecutivey in memory. An array variabe decaration

More information

A SIMPLE APPROACH TO SPECIFYING CONCURRENT SYSTEMS

A SIMPLE APPROACH TO SPECIFYING CONCURRENT SYSTEMS Artificia Inteigence and Language Processing ]acques Cohen Editor A SIMPLE APPROACH TO SPECIFYING CONCURRENT SYSTEMS LESLIE LAMPORT Over the past few years, I have deveoped an approach to the forma specification

More information

May 13, Mark Lutz Boulder, Colorado (303) [work] (303) [home]

May 13, Mark Lutz Boulder, Colorado (303) [work] (303) [home] "Using Python": a Book Preview May 13, 1995 Mark Lutz Bouder, Coorado utz@kapre.com (303) 546-8848 [work] (303) 684-9565 [home] Introduction. This paper is a brief overview of the upcoming Python O'Reiy

More information

Outline. Parallel Numerical Algorithms. Forward Substitution. Triangular Matrices. Solving Triangular Systems. Back Substitution. Parallel Algorithm

Outline. Parallel Numerical Algorithms. Forward Substitution. Triangular Matrices. Solving Triangular Systems. Back Substitution. Parallel Algorithm Outine Parae Numerica Agorithms Chapter 8 Prof. Michae T. Heath Department of Computer Science University of Iinois at Urbana-Champaign CS 554 / CSE 512 1 2 3 4 Trianguar Matrices Michae T. Heath Parae

More information

Special Edition Using Microsoft Excel Selecting and Naming Cells and Ranges

Special Edition Using Microsoft Excel Selecting and Naming Cells and Ranges Specia Edition Using Microsoft Exce 2000 - Lesson 3 - Seecting and Naming Ces and.. Page 1 of 8 [Figures are not incuded in this sampe chapter] Specia Edition Using Microsoft Exce 2000-3 - Seecting and

More information

Xisa: Extensible Inductive Shape Analysis

Xisa: Extensible Inductive Shape Analysis Xisa: Extensibe Inductive Shape Anaysis Bor-Yuh Evan Chang U of Coorado, Bouder Xavier Riva INRIA/ENS Paris George C. Necua U of Caifornia, Berkeey Additiona Contributors: Vincent Laviron, James Hoey,

More information

Nearest Neighbor Learning

Nearest Neighbor Learning Nearest Neighbor Learning Cassify based on oca simiarity Ranges from simpe nearest neighbor to case-based and anaogica reasoning Use oca information near the current query instance to decide the cassification

More information

Section 3: Exploring 3D shapes

Section 3: Exploring 3D shapes Section 3: Exporing 3D shapes Contents Section 3: Exporing 3D shapes 3 1. Using practica work 3 2. A cross-curricuar approach 5 3. Using practica work to consoidate earning 6 Resource 1: Coecting and making

More information

Language Identification for Texts Written in Transliteration

Language Identification for Texts Written in Transliteration Language Identification for Texts Written in Transiteration Andrey Chepovskiy, Sergey Gusev, Margarita Kurbatova Higher Schoo of Economics, Data Anaysis and Artificia Inteigence Department, Pokrovskiy

More information

Infinity Connect Web App Customization Guide

Infinity Connect Web App Customization Guide Infinity Connect Web App Customization Guide Contents Introduction 1 Hosting the customized Web App 2 Customizing the appication 3 More information 8 Introduction The Infinity Connect Web App is incuded

More information

Meeting Exchange 4.1 Service Pack 2 Release Notes for the S6200/S6800 Servers

Meeting Exchange 4.1 Service Pack 2 Release Notes for the S6200/S6800 Servers Meeting Exchange 4.1 Service Pack 2 Reease Notes for the S6200/S6800 Servers The Meeting Exchange S6200/S6800 Media Servers are SIP-based voice and web conferencing soutions that extend Avaya s conferencing

More information

A Robust Sign Language Recognition System with Sparsely Labeled Instances Using Wi-Fi Signals

A Robust Sign Language Recognition System with Sparsely Labeled Instances Using Wi-Fi Signals A Robust Sign Language Recognition System with Sparsey Labeed Instances Using Wi-Fi Signas Jiacheng Shang, Jie Wu Center for Networked Computing Dept. of Computer and Info. Sciences Tempe University Motivation

More information

Section 3 : Exploring 3D shapes

Section 3 : Exploring 3D shapes Section 3 : Exporing 3D shapes Copyright 2016 The Open University Contents Section 3: Exporing 3D shapes 3 1. Using practica work 3 2. A cross-curricuar approach 4 3. Using practica work to consoidate

More information

A Petrel Plugin for Surface Modeling

A Petrel Plugin for Surface Modeling A Petre Pugin for Surface Modeing R. M. Hassanpour, S. H. Derakhshan and C. V. Deutsch Structure and thickness uncertainty are important components of any uncertainty study. The exact ocations of the geoogica

More information

Shape Analysis with Structural Invariant Checkers

Shape Analysis with Structural Invariant Checkers Shape Anaysis with Structura Invariant Checkers Bor-Yuh Evan Chang Xavier Riva George C. Necua University of Caifornia, Berkeey SAS 2007 Exampe: Typestate with shape anaysis Concrete Exampe Abstraction

More information

Dynamic Symbolic Execution of Distributed Concurrent Objects

Dynamic Symbolic Execution of Distributed Concurrent Objects Dynamic Symboic Execution of Distributed Concurrent Objects Andreas Griesmayer 1, Bernhard Aichernig 1,2, Einar Broch Johnsen 3, and Rudof Schatte 1,2 1 Internationa Institute for Software Technoogy, United

More information

ECEn 528 Prof. Archibald Lab: Dynamic Scheduling Part A: due Nov. 6, 2018 Part B: due Nov. 13, 2018

ECEn 528 Prof. Archibald Lab: Dynamic Scheduling Part A: due Nov. 6, 2018 Part B: due Nov. 13, 2018 ECEn 528 Prof. Archibad Lab: Dynamic Scheduing Part A: due Nov. 6, 2018 Part B: due Nov. 13, 2018 Overview This ab's purpose is to expore issues invoved in the design of out-of-order issue processors.

More information

Readme ORACLE HYPERION PROFITABILITY AND COST MANAGEMENT

Readme ORACLE HYPERION PROFITABILITY AND COST MANAGEMENT ORACLE HYPERION PROFITABILITY AND COST MANAGEMENT Reease 11.1.2.4.000 Readme CONTENTS IN BRIEF Purpose... 2 New Features in This Reease... 2 Instaation Information... 2 Supported Patforms... 2 Supported

More information

PL/SQL, Embedded SQL. Lecture #14 Autumn, Fall, 2001, LRX

PL/SQL, Embedded SQL. Lecture #14 Autumn, Fall, 2001, LRX PL/SQL, Embedded SQL Lecture #14 Autumn, 2001 Fa, 2001, LRX #14 PL/SQL,Embedded SQL HUST,Wuhan,China 402 PL/SQL Found ony in the Orace SQL processor (sqpus). A compromise between competey procedura programming

More information

SPT: Storyboard Programming Tool

SPT: Storyboard Programming Tool SPT: Storyboard Programming Too The MIT Facuty has made this artice openy avaiabe. Pease share how this access beneits you. Your story matters. Citation As Pubished Pubisher Singh, Rishabh, and Armando

More information

Priority Queueing for Packets with Two Characteristics

Priority Queueing for Packets with Two Characteristics 1 Priority Queueing for Packets with Two Characteristics Pave Chuprikov, Sergey I. Nikoenko, Aex Davydow, Kiri Kogan Abstract Modern network eements are increasingy required to dea with heterogeneous traffic.

More information

The Big Picture WELCOME TO ESIGNAL

The Big Picture WELCOME TO ESIGNAL 2 The Big Picture HERE S SOME GOOD NEWS. You don t have to be a rocket scientist to harness the power of esigna. That s exciting because we re certain that most of you view your PC and esigna as toos for

More information

Straight-line code (or IPO: Input-Process-Output) If/else & switch. Relational Expressions. Decisions. Sections 4.1-6, , 4.

Straight-line code (or IPO: Input-Process-Output) If/else & switch. Relational Expressions. Decisions. Sections 4.1-6, , 4. If/ese & switch Unit 3 Sections 4.1-6, 4.8-12, 4.14-15 CS 1428 Spring 2018 Ji Seaman Straight-ine code (or IPO: Input-Process-Output) So far a of our programs have foowed this basic format: Input some

More information

Fastest-Path Computation

Fastest-Path Computation Fastest-Path Computation DONGHUI ZHANG Coege of Computer & Information Science Northeastern University Synonyms fastest route; driving direction Definition In the United states, ony 9.% of the househods

More information

On-Chip CNN Accelerator for Image Super-Resolution

On-Chip CNN Accelerator for Image Super-Resolution On-Chip CNN Acceerator for Image Super-Resoution Jung-Woo Chang and Suk-Ju Kang Dept. of Eectronic Engineering, Sogang University, Seou, South Korea {zwzang91, sjkang}@sogang.ac.kr ABSTRACT To impement

More information

Distinct Sampling on Streaming Data with Near-Duplicates*

Distinct Sampling on Streaming Data with Near-Duplicates* Distinct Samping on Streaming Data with Near-Dupicates* ABSTRACT Jiecao Chen Indiana University Boomington Boomington, IN, USA jiecchen@umai.iu.edu In this paper we study how to perform distinct samping

More information

Automatic Program Inversion using Symbolic Transducers

Automatic Program Inversion using Symbolic Transducers Automatic Program Inversion using Symboic Transducers Qinheping Hu University of Wisconsin-Madison qhu8@wisc.edu Loris D Antoni University of Wisconsin-Madison oris@cs.wisc.edu Abstract We propose a fuy-automated

More information

Authorization of a QoS Path based on Generic AAA. Leon Gommans, Cees de Laat, Bas van Oudenaarde, Arie Taal

Authorization of a QoS Path based on Generic AAA. Leon Gommans, Cees de Laat, Bas van Oudenaarde, Arie Taal Abstract Authorization of a QoS Path based on Generic Leon Gommans, Cees de Laat, Bas van Oudenaarde, Arie Taa Advanced Internet Research Group, Department of Computer Science, University of Amsterdam.

More information

Space-Time Trade-offs.

Space-Time Trade-offs. Space-Time Trade-offs. Chethan Kamath 03.07.2017 1 Motivation An important question in the study of computation is how to best use the registers in a CPU. In most cases, the amount of registers avaiabe

More information

Genetic Algorithms for Parallel Code Optimization

Genetic Algorithms for Parallel Code Optimization Genetic Agorithms for Parae Code Optimization Ender Özcan Dept. of Computer Engineering Yeditepe University Kayışdağı, İstanbu, Turkey Emai: eozcan@cse.yeditepe.edu.tr Abstract- Determining the optimum

More information

Stenning s Protocol Implemented in UDP and Verified in Isabelle

Stenning s Protocol Implemented in UDP and Verified in Isabelle Stenning s Protoco Impemented in UDP and Verified in Isabee Michae Compton Computer Laboratory University of Cambridge, JJ Thomson Avenue, Cambridge CB3 0FD, UK, Emai: Michae.Compton@c.cam.ac.uk Abstract

More information

Delay Budget Partitioning to Maximize Network Resource Usage Efficiency

Delay Budget Partitioning to Maximize Network Resource Usage Efficiency Deay Budget Partitioning to Maximize Network Resource Usage Efficiency Kartik Gopaan Tzi-cker Chiueh Yow-Jian Lin Forida State University Stony Brook University Tecordia Technoogies kartik@cs.fsu.edu chiueh@cs.sunysb.edu

More information

Topology-aware Key Management Schemes for Wireless Multicast

Topology-aware Key Management Schemes for Wireless Multicast Topoogy-aware Key Management Schemes for Wireess Muticast Yan Sun, Wade Trappe,andK.J.RayLiu Department of Eectrica and Computer Engineering, University of Maryand, Coege Park Emai: ysun, kjriu@gue.umd.edu

More information

Mobile App Recommendation: Maximize the Total App Downloads

Mobile App Recommendation: Maximize the Total App Downloads Mobie App Recommendation: Maximize the Tota App Downoads Zhuohua Chen Schoo of Economics and Management Tsinghua University chenzhh3.12@sem.tsinghua.edu.cn Yinghui (Catherine) Yang Graduate Schoo of Management

More information

Hiding secrete data in compressed images using histogram analysis

Hiding secrete data in compressed images using histogram analysis University of Woongong Research Onine University of Woongong in Dubai - Papers University of Woongong in Dubai 2 iding secrete data in compressed images using histogram anaysis Farhad Keissarian University

More information

Windows NT, Terminal Server and Citrix MetaFrame Terminal Server Architecture

Windows NT, Terminal Server and Citrix MetaFrame Terminal Server Architecture Windows NT, Termina Server and Citrix MetaFrame - CH 3 - Termina Server Architect.. Page 1 of 13 [Figures are not incuded in this sampe chapter] Windows NT, Termina Server and Citrix MetaFrame - 3 - Termina

More information

Forgot to compute the new centroids (-1); error in centroid computations (-1); incorrect clustering results (-2 points); more than 2 errors: 0 points.

Forgot to compute the new centroids (-1); error in centroid computations (-1); incorrect clustering results (-2 points); more than 2 errors: 0 points. Probem 1 a. K means is ony capabe of discovering shapes that are convex poygons [1] Cannot discover X shape because X is not convex. [1] DBSCAN can discover X shape. [1] b. K-means is prototype based and

More information

A Method for Calculating Term Similarity on Large Document Collections

A Method for Calculating Term Similarity on Large Document Collections $ A Method for Cacuating Term Simiarity on Large Document Coections Wofgang W Bein Schoo of Computer Science University of Nevada Las Vegas, NV 915-019 bein@csunvedu Jeffrey S Coombs and Kazem Taghva Information

More information

As Michi Henning and Steve Vinoski showed 1, calling a remote

As Michi Henning and Steve Vinoski showed 1, calling a remote Reducing CORBA Ca Latency by Caching and Prefetching Bernd Brügge and Christoph Vismeier Technische Universität München Method ca atency is a major probem in approaches based on object-oriented middeware

More information

An Introduction to Design Patterns

An Introduction to Design Patterns An Introduction to Design Patterns 1 Definitions A pattern is a recurring soution to a standard probem, in a context. Christopher Aexander, a professor of architecture Why woud what a prof of architecture

More information

IBC DOCUMENT PROG007. SA/STA SERIES User's Guide V7.0

IBC DOCUMENT PROG007. SA/STA SERIES User's Guide V7.0 IBC DOCUMENT SA/STA SERIES User's Guide V7.0 Page 2 New Features for Version 7.0 Mutipe Schedues This version of the SA/STA firmware supports mutipe schedues for empoyees. The mutipe schedues are impemented

More information

Multi-task implementation of multi-periodic synchronous programs

Multi-task implementation of multi-periodic synchronous programs Muti-task impementation of muti-periodic synchronous programs Caire Pagetti, Juien Forget, Frédéric Bonio, Mike Cordovia, David Lesens To cite this version: Caire Pagetti, Juien Forget, Frédéric Bonio,

More information

Layout Conscious Approach and Bus Architecture Synthesis for Hardware-Software Co-Design of Systems on Chip Optimized for Speed

Layout Conscious Approach and Bus Architecture Synthesis for Hardware-Software Co-Design of Systems on Chip Optimized for Speed Layout Conscious Approach and Bus Architecture Synthesis for Hardware-Software Co-Design of Systems on Chip Optimized for Speed Nattawut Thepayasuwan, Member, IEEE and Aex Doboi, Member, IEEE Abstract

More information

Traversal Graphs: Characterization and Efficient Implementation

Traversal Graphs: Characterization and Efficient Implementation Traversa Graphs: Characterization and Efficient Impementation Ahmed Abdemeged Therapon Skotiniotis Panagiotis Manoios Kar Lieberherr Coege of Computer & Information Science Northeastern University, 60

More information

CSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Synchronization: Semaphore

CSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Synchronization: Semaphore CSE120 Principes of Operating Systems Prof Yuanyuan (YY) Zhou Synchronization: Synchronization Needs Two synchronization needs Mutua excusion Whenever mutipe threads access a shared data, you need to worry

More information

Sensitivity Analysis of Hopfield Neural Network in Classifying Natural RGB Color Space

Sensitivity Analysis of Hopfield Neural Network in Classifying Natural RGB Color Space Sensitivity Anaysis of Hopfied Neura Network in Cassifying Natura RGB Coor Space Department of Computer Science University of Sharjah UAE rsammouda@sharjah.ac.ae Abstract: - This paper presents a study

More information

CSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Lecture 4: Threads

CSE120 Principles of Operating Systems. Prof Yuanyuan (YY) Zhou Lecture 4: Threads CSE120 Principes of Operating Systems Prof Yuanyuan (YY) Zhou Lecture 4: Threads Announcement Project 0 Due Project 1 out Homework 1 due on Thursday Submit it to Gradescope onine 2 Processes Reca that

More information

Relational Model. Lecture #6 Autumn, Fall, 2001, LRX

Relational Model. Lecture #6 Autumn, Fall, 2001, LRX Reationa Mode Lecture #6 Autumn, 2001 #06 Reationa Mode HUST,Wuhan,China 121 Reationa Mode Tabe = reation. Coumn headers = attributes. Row = tupe Reation schema = name(attributes). Exampe: Beers(name,

More information

More Relation Model: Functional Dependencies

More Relation Model: Functional Dependencies More Reation Mode: Functiona Dependencies Lecture #7 Autumn, 2001 Fa, 2001, LRX #07 More Reation Mode: Functiona Dependencies HUST,Wuhan,China 152 Functiona Dependencies X -> A = assertion about a reation

More information

RDF Objects 1. Alex Barnell Information Infrastructure Laboratory HP Laboratories Bristol HPL November 27 th, 2002*

RDF Objects 1. Alex Barnell Information Infrastructure Laboratory HP Laboratories Bristol HPL November 27 th, 2002* RDF Objects 1 Aex Barne Information Infrastructure Laboratory HP Laboratories Bristo HPL-2002-315 November 27 th, 2002* E-mai: Andy_Seaborne@hp.hp.com RDF, semantic web, ontoogy, object-oriented datastructures

More information

index.pdf March 17,

index.pdf March 17, index.pdf March 17, 2013 1 ITI 1121. Introduction to omputing II Marce Turcotte Schoo of Eectrica Engineering and omputer Science Linked List (Part 2) Tai pointer ouby inked ist ummy node Version of March

More information

A Design Method for Optimal Truss Structures with Certain Redundancy Based on Combinatorial Rigidity Theory

A Design Method for Optimal Truss Structures with Certain Redundancy Based on Combinatorial Rigidity Theory 0 th Word Congress on Structura and Mutidiscipinary Optimization May 9 -, 03, Orando, Forida, USA A Design Method for Optima Truss Structures with Certain Redundancy Based on Combinatoria Rigidity Theory

More information

TSR: Topology Reduction from Tree to Star Data Grids

TSR: Topology Reduction from Tree to Star Data Grids 03 Seventh Internationa Conference on Innovative Mobie and Internet Services in biquitous Computing TSR: Topoogy Reduction from Tree to Star Data Grids Ming-Chang Lee #, Fang-Yie Leu *, Ying-ping Chen

More information

WATERMARKING GIS DATA FOR DIGITAL MAP COPYRIGHT PROTECTION

WATERMARKING GIS DATA FOR DIGITAL MAP COPYRIGHT PROTECTION WATERMARKING GIS DATA FOR DIGITAL MAP COPYRIGHT PROTECTION Shen Tao Chinese Academy of Surveying and Mapping, Beijing 100039, China shentao@casm.ac.cn Xu Dehe Institute of resources and environment, North

More information

Databases and PHP. Accessing databases from PHP

Databases and PHP. Accessing databases from PHP Databases and PHP Accessing databases from PHP PHP & Databases PHP can connect to virtuay any database There are specific functions buit-into PHP to connect with some DB There is aso generic ODBC functions

More information

Navigating and searching theweb

Navigating and searching theweb Navigating and searching theweb Contents Introduction 3 1 The Word Wide Web 3 2 Navigating the web 4 3 Hyperinks 5 4 Searching the web 7 5 Improving your searches 8 6 Activities 9 6.1 Navigating the web

More information

Sample of a training manual for a software tool

Sample of a training manual for a software tool Sampe of a training manua for a software too We use FogBugz for tracking bugs discovered in RAPPID. I wrote this manua as a training too for instructing the programmers and engineers in the use of FogBugz.

More information

Congestion Avoidance and Control in Sensor Network Based on Fuzzy AQM

Congestion Avoidance and Control in Sensor Network Based on Fuzzy AQM ICSP2012 Proceedings Congestion Avoidance and Contro in Sensor Network Based on Fuzzy AQM Luo Cheng, Xie Weixin,Li Qiusheng ATR Key Laboratory of Nationa Defense Technoogy, Shenzhen University, Shenzhen

More information

Enumeration of MSO Queries on Strings with Constant Delay and Logarithmic Updates

Enumeration of MSO Queries on Strings with Constant Delay and Logarithmic Updates Enumeration of MSO Queries on Strings with Constant Deay and Logarithmic Updates ABSTRACT Matthias Niewerth University of Bayreuth We consider the enumeration of MSO queries over strings under updates.

More information

Modeling of Problems of Projection: A Non-countercyclic Approach * Jason Ginsburg Osaka Kyoiku University

Modeling of Problems of Projection: A Non-countercyclic Approach * Jason Ginsburg Osaka Kyoiku University Modeing of Probems of Projection: A Non-countercycic Approach * Jason Ginsburg Osaka Kyoiku University Abstract This paper describes a computationa impementation of the recent Probems of Projection (POP)

More information

Adapted from a lesson found at: popehs.typepad,corn

Adapted from a lesson found at: popehs.typepad,corn Diations nvestigationstudent Activity Objective: Given grid paper, a centimeter ruer, a protractor, and a sheet of patty paper the students wi generate and appy the reationship between the scae factor

More information

Testing Whether a Set of Code Words Satisfies a Given Set of Constraints *

Testing Whether a Set of Code Words Satisfies a Given Set of Constraints * JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 6, 333-346 (010) Testing Whether a Set of Code Words Satisfies a Given Set of Constraints * HSIN-WEN WEI, WAN-CHEN LU, PEI-CHI HUANG, WEI-KUAN SHIH AND MING-YANG

More information

TechTest2017. Solutions Key. Final Edit Copy. Merit Scholarship Examination in the Sciences and Mathematics given on 1 April 2017, and.

TechTest2017. Solutions Key. Final Edit Copy. Merit Scholarship Examination in the Sciences and Mathematics given on 1 April 2017, and. TechTest07 Merit Schoarship Examination in the Sciences and Mathematics given on Apri 07, and sponsored by The Sierra Economics and Science Foundation Soutions Key V9feb7 TechTest07 Soutions Key / 9 07

More information

NCH Software Spin 3D Mesh Converter

NCH Software Spin 3D Mesh Converter NCH Software Spin 3D Mesh Converter This user guide has been created for use with Spin 3D Mesh Converter Version 1.xx NCH Software Technica Support If you have difficuties using Spin 3D Mesh Converter

More information

NCH Software Express Delegate

NCH Software Express Delegate NCH Software Express Deegate This user guide has been created for use with Express Deegate Version 4.xx NCH Software Technica Support If you have difficuties using Express Deegate pease read the appicabe

More information

Teaching CS1 with Karel the Robot in Java

Teaching CS1 with Karel the Robot in Java Teaching CS1 with Kare the Robot in Java Byron Weber Becker Department of Computer Science University of Wateroo Wateroo, Ontario, Canada N2L 3G1 bwbecker@uwateroo.ca Abstract Most current Java textbooks

More information

Chapter 3: KDE Page 1 of 31. Put icons on the desktop to mount and unmount removable disks, such as floppies.

Chapter 3: KDE Page 1 of 31. Put icons on the desktop to mount and unmount removable disks, such as floppies. Chapter 3: KDE Page 1 of 31 Chapter 3: KDE In This Chapter What Is KDE? Instaing KDE Seecting KDE Basic Desktop Eements Running Programs Stopping KDE KDE Capabiities Configuring KDE with the Contro Center

More information

lnput/output (I/O) AND INTERFACING

lnput/output (I/O) AND INTERFACING CHAPTER 7 NPUT/OUTPUT (I/O) AND INTERFACING INTRODUCTION The input/output section, under the contro of the CPU s contro section, aows the computer to communicate with and/or contro other computers, periphera

More information

Hour 3: The Network Access Layer Page 1 of 10. Discuss how TCP/IP s Network Access layer relates to the OSI networking model

Hour 3: The Network Access Layer Page 1 of 10. Discuss how TCP/IP s Network Access layer relates to the OSI networking model Hour 3: The Network Access Layer Page 1 of 10 Hour 3: The Network Access Layer At the base of the TCP/IP protoco stack is the Network Access ayer, the coection of services and specifications that provide

More information

Avaya Extension to Cellular User Guide Avaya Aura TM Communication Manager Release 5.2.1

Avaya Extension to Cellular User Guide Avaya Aura TM Communication Manager Release 5.2.1 Avaya Extension to Ceuar User Guide Avaya Aura TM Communication Manager Reease 5.2.1 November 2009 2009 Avaya Inc. A Rights Reserved. Notice Whie reasonabe efforts were made to ensure that the information

More information

Automatic Hidden Web Database Classification

Automatic Hidden Web Database Classification Automatic idden Web atabase Cassification Zhiguo Gong, Jingbai Zhang, and Qian Liu Facuty of Science and Technoogy niversity of Macau Macao, PRC {fstzgg,ma46597,ma46620}@umac.mo Abstract. In this paper,

More information

Backing-up Fuzzy Control of a Truck-trailer Equipped with a Kingpin Sliding Mechanism

Backing-up Fuzzy Control of a Truck-trailer Equipped with a Kingpin Sliding Mechanism Backing-up Fuzzy Contro of a Truck-traier Equipped with a Kingpin Siding Mechanism G. Siamantas and S. Manesis Eectrica & Computer Engineering Dept., University of Patras, Patras, Greece gsiama@upatras.gr;stam.manesis@ece.upatras.gr

More information

1. INTRODUCTION 1.1 Product Introduction 1.2 Product Modes 1.3 Product Package 1.4 Network Printing Architecture 1.5 Network Printing Environment 1.6

1. INTRODUCTION 1.1 Product Introduction 1.2 Product Modes 1.3 Product Package 1.4 Network Printing Architecture 1.5 Network Printing Environment 1.6 Links for mode 504058 (1-Port UTP/BNC Parae Pocket Print Server): Downoads & inks http://www.inteinet-network.com/htm/d-pserver.htm This manua http://inteinet-network.com/mk2/manuas/502993_manua.zip Instructions

More information

Tutorial 3 Concepts for A1

Tutorial 3 Concepts for A1 CPSC 231 Introduction to Computer Science for Computer Science Majors I Tutoria 3 Concepts for A1 DANNY FISHER dgfisher@ucagary.ca September 23, 2014 Agenda script command more detais Submitting using

More information

Portable Compiler Optimisation Across Embedded Programs and Microarchitectures using Machine Learning

Portable Compiler Optimisation Across Embedded Programs and Microarchitectures using Machine Learning Portabe Compier Optimisation Across Embedded Programs and Microarchitectures using Machine Learning Christophe Dubach, Timothy M. Jones, Edwin V. Bonia Members of HiPEAC Schoo of Informatics University

More information

Distance Weighted Discrimination and Second Order Cone Programming

Distance Weighted Discrimination and Second Order Cone Programming Distance Weighted Discrimination and Second Order Cone Programming Hanwen Huang, Xiaosun Lu, Yufeng Liu, J. S. Marron, Perry Haaand Apri 3, 2012 1 Introduction This vignette demonstrates the utiity and

More information