Appendix A: Syntax Diagrams

Total Page:16

File Type:pdf, Size:1020Kb

Appendix A: Syntax Diagrams Appendix A: Syntax Diagrams Chapter 3 provides a syntax diagram for every language element of Modula-2. These diagrams have been collected in this appendix for easy reference when questions arise concerning the formulation of particular program constructs. The syntax diagrams are listed and numbered in the same order as in Chapter 3. The following alphabetical list is intended to assist in locating individual syntax diagrams. ArrayType19 OctInteger6 Assignment.41 ParamSection53 B lock 12 PointerType25 CaseLabelList24 PrioritY67 CaseStatement.43 ProcedureCa1l55 ConstantDeclaration26 ProcedureDeclarationso ConstExpr27 ProcedureHeadings1 DecInteger5 ProcedureType57 Declaration 13 ProgramModule11 Definition63 Qualldent2 DefinitionModule62 Reals Designator31 RecordType20 Element39 Relation33 Enumeration 15 RepeatStatemen~s ExitStatemen~s RetumStatement56 EXport61 Set3s Expression32 SetType17 Factor37 SimpleExpression34 FieldList21 SimpleType1s FormalParameters52 Statemen~o FormalType54 S tatementSequence 14 FormalTypeList5S String9 ForStatemen~6 Subrange 16 HexInteger7 Term35 Ident1 Type29 IfStatemen42 TypeDeclaration28 ImplementationModule65 TypeDefinition64 Import60 TypeTransfer 66 Integer4 VariableDeclaration3o LoopStatemen~7 Variant23 ModuleDeclarations9 VariantFieldList22 MulOperator36 WhileStatemen44 Number3 WithStatemen~9 OctChar10 Appendix A: Syntax Diagrams 235 Qualldent2 Number3 Integer4 Declnteger 5 1 Octlnteger 6 I Hexlnteger 7 ~ Declnteger5 OctInteger6 236 Appendix A: Syntax Diagrams HexInteger7 ,~4CJ)44?4~1 ~~~~--------------------~-~.~ Rea1s o 0character~ r~Chafficter~ :~ ~ OctChar 10 .1--------'''--... OctCharlO ProgramModulell ~~~~....L""I Block121-~lldent1 1-0-- Block12 Declaration 13 ---""'-------..J---ot"_( BEGIt\D-- StatementSequence 14 Appendix A: Syntax Diagrams 237 Declaration 13 ConstantDeciaration 26 Variable Declaration 30 ProcedureDeclaration 50 _.L-__..... I ModuleDeciaration 59 I-----....::=..~~ StatementSequencel4 ----~o~.. ------- ---'=1 State~ent 40 ~ Enumeration 15 Subrangel6 ~ Qualldent 2 tJ--CD--l ConstExpr 27 ~I ConstExpr 27 ~ SetTypel7 -C@-®--I SimpleType 181- SimpleTypel8 Qualldent 2 19Enumeration 15 1Subrange 161 • 238 Appendix A: Syntax Diagrams ArrayType19 - ( Q •. 1 -(ARRAY~I SimpleType 18 ~~I Type 29 r-- RecordType20 ,-----lQI4.-~ -(RECORD~I FieldList 21 ~~ Fie1dList21 o-lType29~ '----I VariantFieldList 221---,./ VariantFieldList22 .(CASE~lldent1I;--o-l Qualldent2~ OF Variant23 CaseLabelList 24 CaseLabelList24 o· ~ ConstExpr 27f---.rO=:l ConstExpr 271, J• Appendix A: Syntax Diagrams 239 PointerType25 -CPOINTER)-®---I Type 29 ~ ConstantDeclaration26 -ildent 1 ~0-1 ConstExpr 27 ~o- ConstExpr27 -I Expression 32 ~ TypeDeclaration28 _lldent 1 ~G-I Type 29 ~o- Type29 SetType 17 ~-...... Simple Type 18 ArrayType 19 t---..J VariableDeclaration3o ~o--I Type 29 1--0-- 240 Appendix A: Syntax Diagrams Designator31 1....-----1 Ident 1 }+.--..!Io.--1 Expression 32 - Qualldent 21--~-------------L-"" Expression32 - Simple Expression 34 I Relation 33 ~ SimpleExpression 34 Relation33 SimpleExpression34 Term35 MulOperator 36 ---=~--1.~1 Factor 37 I--~'--. MulOperator36 Appendix A: Syntax Diagrams 241 Factor37 Q.-..-----..) ·1 Designator 31 ( 1 Expression 321 CD ~ ., .. a>r Number 3 ·l String 9 Set 38 CD---I Expression 32 ) NOT - 1 Factor371 ~ ~. ) .CD­ LI Qualldent 2 tr-CD \ JI8Il1int 391 ! Element39 -I Expression 32 ~o---.I Expression 32 tr- 242 Appendix A: Syntax Diagrams Statemenl40 Assignment 41 If Statement 42 Assignmen41 -I Designator 31 ~G--I Expression 32 ~ IfStatemen42 r-------------~~EL~S~IF~~------------­ I Expression 32 ~C!B:®--- StatementSequence 14 '----~.. ~ StatementSequence 14 @Q)f------. Appendix A: Syntax Diagrams 243 CaseStatemen43 -------•• @@-I Expression 32~ OF )-------- '"--=-......1 CaseLabelList 24~o--. StatementSequence 141-:r--"~ '----........... ill@--- StatementSequence 14 @@I----_. WhileStatemen44 -CWHILE}--I Expression 32 ~ StatementSequence 14 ~@Q)-­ RepeatS tatemen45 -(REPEAT}---I StatementSequence 14 ~(UNTIL}---I Expression 32 ~ ForStatemen46 --~lldent 1 1--0-1 Expression 321--CIQ)- Expression 32 ConstExpr 27 ®---I StatementSequence 141--~ LoopS tatemen47 -~I StatementSequence 14 ~~ ExitStatemen4s WithStatemen49 -@ITB)----I Designator 31 ~@--I StatementSequence 14 ~@Q)-­ ProcedureDeclaration50 -I ProcedureHeading 51 ~I Block 12 ~@Q)---Ildent 1 ~o- 244 Appendix A: Syntax Diagrams ProcedureHeading51 -CPROCEDURE}--Ildent 1 ~I FormalParameters 52 r-0-- FormalParameters52 r---~O"·--""", ~CD \(1 ParamSection 531 J, "CD----x:0--1 Quallden. 2 r- ParamSection53 L@!D, ~0--1 FormaIType"i-- FormalType54 LCARRAY}-@y--I Qualldent 2 ~ ProcedureCa1l55 0,.·---. -I Designator 31 ~,-_CD_(_l_l_I_E_xp_re_S_S_io_n_32_I_J_ !__ ·_T~ RetumStatement56 -CRETURN~I Expression 32 r- ProcedureType57 -CPROCEDURE~I FormalTypeList 58 r- Appendix A: Syntax Diagrams 245 FormaiTypeLists8 ~CD l \' ~:nnaITYpe "I lJ ·<D---t=0-1 Q"IIde", , ry.---- ModuieDeciarationS9 -----... (MODULE}.-Ildent 1 ~I Priority 67 fy- ;J---- ....... I Block12~ Ident, ~o-- Import6o Lill!Q!\I[)--lldenl, Iy---(lMPORT~O-- EXport61 ~(EXPORT>----r-(QUALIFIED)f ~o-- DefinitionModule62 -(DEFINITION)---.(MODULE)--Ildent 1 ~ ; ~"----------"''' Definition 63 '-----~----....L.._@IQ)_Ildent 1 ~Of-----· 246 Appendix A: Syntax Diagrams Definition63 ConstantDeclaration 26 TypeDefinition 64 VariableDeclaration 30 ProcedureHeading 511 • TypeDefinition64 -ildent 1 ~0-1 Type 29 tJo---. ImplementationModule65 -OMPLEMENTATION}--I ProgramModule 11 ~ TypeTransfer66 -I Qualldent 2~CD--1 Expression 32~CD-- PrioritY67 -CD--I ConstExpr 27t-(j)- Appendix B: Predefined Identifiers Modula-2 contains a number of predefined identifiers for constants, elementary data types and standard procedures. The following summary provides an overview of what they mean. A more detailed explanation can be found in Sections 3.4.1.1 ("Predefined Data Types") and 3.7.8 ("Standard Procedures"). Predefined Constants FALSE boolean value "false" NIL POINTER value that points to no object TRUE boolean value "true" Predefined Data Types BITSET set BOOLEAN logical values "true" or "false" CARDINAL natural numbers (~O) CHAR characters INTEGER whole numbers (positive or negative) PROC parameterless procedures REAL real numbers Standard Procedures DEC (x) reduces (decrements) the value of x by 1 DEC(x,n) reduces (decrements) the value of x by n DISPOSE(p) frees the storage to which p points EXCL(s,e) removes (excludes) the element e from the set s HALT terminates program execution INC (x) increases (increments) the value of x by 1 INC(x,n) increases (increments) the value of x by n INCL(s,e) includes the element e in the set s NEW(p) allocates dynamic storage Standard Functions ABS (x) returns the absolute value of x CAP (ch) changes the character ch to a capital letter CHR(c) returns the character whose ordinal number is c FLOAT (c) transforms the CARDINAL number c into a REAL number HIGH (a) returns the highest index of the array a MAX(T) returns the greatest value that can be represented by the data type T MIN(T) returns the smallest value that can be represented by the data type T ODD (x) returns the boolean value of the expression"x is odd" TRUNC(r) transforms the REAL number r to a CARDINAL number VAL(T,c) returns the value of data type T having the ordinal number c Appendix C: Compatibility Rules The strict type concept in Modula-2 forces the programmer to keep in mind which data types are compatible under which conditions. All the respective rules were covered in Chapter 3, but they are spread throughout the entire chapter. Thus we have summarized all the rules governing compatibility in this appendix. Type Identity (see Section 3.4.5) The two objects x I and x2 with the data types t I and t 2 are of the same data type if one of the following conditions is met: t I and t 2 are identified by the same name, e.g.: VAR VAR n: INTEGER; material: Material; val: INTEGER; substance: Material; xl and x2 are declared within the same variable list, e.g.: VAR n, val: INTEGER; PROCEDURE P (x, y: CHAR) ; die,dot: [1. .6]; t I and t 2 are identified by names that are designated as synonyms in the type declaration, e.g.: TYPE TYPE Minute = [0 .. 59]; t = (a,b, c) ; Second = Minute; tl = t; VAR t2 = t; sec: Second; VAR min: Minute; xl: tl; x2: t2; xl and x2 are constants o/the same enumeration type, as low and high or red and yellow in these examples: VAR VAR voltage: (low,high); color: (red,blue,yellow); Type equality is required with V AR parameters The data types of formal and actual parameters must be the same. Exceptions: If the formal parameter is an ARRAY parameter, only the element types must be identical in the formal and actual parameters. ADDRESS is compatible with CARDINAL and with all POINTER types. Appendix C: Compatibility Rules 249 WORD is compatible with every data type that occupies exactly one word of memory. ARRAY OF WORD is compatible with any and all data types. with procedure variables If a procedure P is to be assigned to a procedure variable pv, the parameters of all data types in P and pv must be identical. If P and pv are function procedures, the data types of their function values must also be identical. Expression Compatibility (see Section 3.5.5) Two operands x 1 and x 2 with data types t 1 and t 2 are expression compatible if any one of the following conditions is met: t 1 and t 2 are the same data type. t 1 is a subrange type with base type t2 (or vice versa). t 1 and t 2 are subrange types with the same base types. t 1 is INTEGER or CARDINAL and t 2 is a subrange
Recommended publications
  • JHDF5 (HDF5 for Java) 19.04
    JHDF5 (HDF5 for Java) 19.04 Introduction HDF5 is an efficient, well-documented, non-proprietary binary data format and library developed and maintained by the HDF Group. The library provided by the HDF Group is written in C and available under a liberal BSD-style Open Source software license. It has over 600 API calls and is very powerful and configurable, but it is not trivial to use. SIS (formerly CISD) has developed an easy-to-use high-level API for HDF5 written in Java and available under the Apache License 2.0 called JHDF5. The API works on top of the low-level API provided by the HDF Group and the files created with the SIS API are fully compatible with HDF5 1.6/1.8/1.10 (as you choose). Table of Content Introduction ................................................................................................................................ 1 Table of Content ...................................................................................................................... 1 Simple Use Case .......................................................................................................................... 2 Overview of the library ............................................................................................................... 2 Numeric Data Types .................................................................................................................... 3 Compound Data Types ................................................................................................................ 4 System
    [Show full text]
  • Sun 64-Bit Binary Alignment Proposal
    1 KMIP 64-bit Binary Alignment Proposal 2 3 To: OASIS KMIP Technical Committee 4 From: Matt Ball, Sun Microsystems, Inc. 5 Date: May 1, 2009 6 Version: 1 7 Purpose: To propose a change to the binary encoding such that each part is aligned to an 8-byte 8 boundary 9 10 Revision History 11 Version 1, 2009-05-01: Initial version 12 Introduction 13 The binary encoding as defined in the 1.0 version of the KMIP draft does not maintain alignment to 8-byte 14 boundaries within the message structure. This causes problems on hard-aligned processors, such as the 15 ARM, that are not able to easily access memory on addresses that are not aligned to 4 bytes. 16 Additionally, it reduces performance on modern 64-bit processors. For hard-aligned processors, when 17 unaligned memory contents are requested, either the compiler has to add extra instructions to perform 18 two aligned memory accesses and reassemble the data, or the processor has to take a „trap‟ (i.e., an 19 interrupt generated on unaligned memory accesses) to correctly assemble the memory contents. Either 20 of these options results in reduced performance. On soft-aligned processors, the hardware has to make 21 two memory accesses instead of one when the contents are not properly aligned. 22 This proposal suggests ways to improve the performance on hard-aligned processors by aligning all data 23 structures to 8-byte boundaries. 24 Summary of Proposed Changes 25 This proposal includes the following changes to the KMIP 0.98 draft submission to the OASIS KMIP TC: 26 Change the alignment of the KMIP binary encoding such that each part is aligned to an 8-byte 27 boundary.
    [Show full text]
  • Making Classes Provable Through Contracts, Models and Frames
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by CiteSeerX DISS. ETH NO. 17610 Making classes provable through contracts, models and frames A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH (ETH Zurich)¨ for the degree of Doctor of Sciences presented by Bernd Schoeller Diplom-Informatiker, TU Berlin born April 5th, 1974 citizen of Federal Republic of Germany accepted on the recommendation of Prof. Dr. Bertrand Meyer, examiner Prof. Dr. Martin Odersky, co-examiner Prof. Dr. Jonathan S. Ostroff, co-examiner 2007 ABSTRACT Software correctness is a relation between code and a specification of the expected behavior of the software component. Without proper specifica- tions, correct software cannot be defined. The Design by Contract methodology is a way to tightly integrate spec- ifications into software development. It has proved to be a light-weight and at the same time powerful description technique that is accepted by software developers. In its more than 20 years of existence, it has demon- strated many uses: documentation, understanding object-oriented inheri- tance, runtime assertion checking, or fully automated testing. This thesis approaches the formal verification of contracted code. It conducts an analysis of Eiffel and how contracts are expressed in the lan- guage as it is now. It formalizes the programming language providing an operational semantics and a formal list of correctness conditions in terms of this operational semantics. It introduces the concept of axiomatic classes and provides a full library of axiomatic classes, called the mathematical model library to overcome prob- lems of contracts on unbounded data structures.
    [Show full text]
  • Multithreaded Programming Guide
    Multithreaded Programming Guide Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 816–5137–10 January 2005 Copyright 2005 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved. This product or document is protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, docs.sun.com, AnswerBook, AnswerBook2, and Solaris are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and Sun™ Graphical User Interface was developed by Sun Microsystems, Inc. for its users and licensees. Sun acknowledges the pioneering efforts of Xerox in researching and developing the concept of visual or graphical user interfaces for the computer industry. Sun holds a non-exclusive license from Xerox to the Xerox Graphical User Interface, which license also covers Sun’s licensees who implement OPEN LOOK GUIs and otherwise comply with Sun’s written license agreements.
    [Show full text]
  • IBM Informix Glossary
    IBM Informix Version 11.70 IBM Informix Glossary SC27-3531-00 IBM Informix Version 11.70 IBM Informix Glossary SC27-3531-00 Note Before using this information and the product it supports, read the information in “Notices” on page B-1. This document contains proprietary information of IBM. It is provided under a license agreement and is protected by copyright law. The information contained in this publication does not include any product warranties, and any statements provided in this manual should not be interpreted as such. When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright IBM Corporation 1996, 2010. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Glossary ..................................1-1 Numerics ....................................1-1 A......................................1-1 B ......................................1-3 C......................................1-4 D......................................1-8 E......................................1-13 F......................................1-15 G......................................1-16 H......................................1-17 I......................................1-17 J......................................1-19 K......................................1-19 L......................................1-19 M......................................1-21 N......................................1-22
    [Show full text]
  • High Dynamic Range Video
    High Dynamic Range Video Karol Myszkowski, Rafał Mantiuk, Grzegorz Krawczyk Contents 1 Introduction 5 1.1 Low vs. High Dynamic Range Imaging . 5 1.2 Device- and Scene-referred Image Representations . ...... 7 1.3 HDRRevolution ............................ 9 1.4 OrganizationoftheBook . 10 1.4.1 WhyHDRVideo? ....................... 11 1.4.2 ChapterOverview ....................... 12 2 Representation of an HDR Image 13 2.1 Light................................... 13 2.2 Color .................................. 15 2.3 DynamicRange............................. 18 3 HDR Image and Video Acquisition 21 3.1 Capture Techniques Capable of HDR . 21 3.1.1 Temporal Exposure Change . 22 3.1.2 Spatial Exposure Change . 23 3.1.3 MultipleSensorswithBeamSplitters . 24 3.1.4 SolidStateSensors . 24 3.2 Photometric Calibration of HDR Cameras . 25 3.2.1 Camera Response to Light . 25 3.2.2 Mathematical Framework for Response Estimation . 26 3.2.3 Procedure for Photometric Calibration . 29 3.2.4 Example Calibration of HDR Video Cameras . 30 3.2.5 Quality of Luminance Measurement . 33 3.2.6 Alternative Response Estimation Methods . 33 3.2.7 Discussion ........................... 34 4 HDR Image Quality 39 4.1 VisualMetricClassification. 39 4.2 A Visual Difference Predictor for HDR Images . 41 4.2.1 Implementation......................... 43 5 HDR Image, Video and Texture Compression 45 1 2 CONTENTS 5.1 HDR Pixel Formats and Color Spaces . 46 5.1.1 Minifloat: 16-bit Floating Point Numbers . 47 5.1.2 RGBE: Common Exponent . 47 5.1.3 LogLuv: Logarithmic encoding . 48 5.1.4 RGB Scale: low-complexity RGBE coding . 49 5.1.5 LogYuv: low-complexity LogLuv . 50 5.1.6 JND steps: Perceptually uniform encoding .
    [Show full text]
  • National Technical University of Athens School of Electrical and Computer Engineering Division of Computer Science
    National Technical University of Athens School of Electrical and Computer Engineering Division of Computer Science Detection Of Opaque Type Violations in Erlang Using Static Analysis Diploma Thesis by Manouk-Vartan Manoukian Supervisors: N.T.U.A Associate Prof. Konstantinos Sagonas Software Laboratory Athens, September 2009 National Technical University of Athens School of Electrical and Computer Engineering Division of Computer Science Software Laboratory Detection Of Opaque Type Violations in Erlang Using Static Analysis Diploma Thesis by Manouk-Vartan Manoukian Supervisors: N.T.U.A Associate Prof. Konstantinos Sagonas This thesis was approved by the examining committee on the 16th of September, 2009. (Signature) (Signature) (Signature) ........................ ........................ ........................ Kostas Kontogiannis Nikolaos Papaspyrou Konstantinos Sagonas N.T.U.A Associate Prof. N.T.U.A Assistant Prof. N.T.U.A Associate Prof. i (Signature) ........................ Manouk-Vartan Manoukian Graduate Electrical and Computer Engineer, N.T.U.A. c 2009 { All rights reserved] ii National Technical University of Athens School of Electrical and Computer Engineering Division of Computer Science Software Laboratory Copyright c All rights reserved Manouk-Vartan Manoukian, 2009 Publication and distribution of this thesis is allowed for non-commercial use only with ap- propriate acknowledgement of the author. For commercial use, permission can be obtained by contacting the author at [email protected]. iii iv Abstract Erlang is a general-purpose programming language designed at the Ericsson Computer Science Laboratory. Erlang has extensive dynamic libraries in which a plethora of abstract data types are defined. However, programming in Erlang suffers from the lack of opaque types. Opaque types are especially necessary in a production environment since they provide solid contractual guarantees.
    [Show full text]
  • IBM Informix User-Defined Routines and Data Types Developer.S Guide
    DB2 ® IBM Informix Version 10.0 IBM Informix User-Defined Routines and Data Types Developer’s Guide G251-2301-00 DB2 ® IBM Informix Version 10.0 IBM Informix User-Defined Routines and Data Types Developer’s Guide G251-2301-00 Note! Before using this information and the product it supports, read the information in “Notices” on page B-1. First Edition (December 2004) This document contains proprietary information of IBM. It is provided under a license agreement and is protected by copyright law. The information contained in this publication does not include any product warranties, and any statements provided in this manual should not be interpreted as such. When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright International Business Machines Corporation 1996, 2004. All rights reserved. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Introduction . .ix About This Manual . .ix Types of Users . .x Software Dependencies . .x Assumptions About Your Locale . .x Demonstration Databases . .x New Features . .xi Version 10.0 Enhancements . .xi Version 9.4 Enhancements . xii Documentation Conventions . xii Typographical Conventions . xii Feature, Product, and Platform . xiii Syntax Diagrams . xiv Example Code Conventions . xvii Additional Documentation . xviii Installation Guides . xviii Online Notes . xviii Informix Error Messages . .xx Manuals . xxi Online Help . xxi Accessibility . xxi IBM Informix Dynamic Server Version 10.0 and CSDK Version 2.90 Documentation Set . xxi Compliance with Industry Standards . xxiv IBM Welcomes Your Comments .
    [Show full text]
  • Proposal to Allocate Ranges to P1619.3
    1 From: Matt Ball, Sun Microsystems 2 To: OASIS KMIP TC 3 Date: June 25, 2009 4 Subject: Proposal to reserve values for IEEE P1619.3 5 Overview 6 This proposal requests allocating ranges of values within the binary encoding to IEEE P1619.3 so that 7 P1619.3 can make extensions without colliding with future KMIP versions or with vendor-specific or 8 proprietary extensions. 9 See changes below (with changebars) 10 9 Message Encoding 11 To support different transport protocols and different client capabilities, a number of message-encoding 12 mechanisms are supported. 13 9.1 TTLV Encoding 14 In order to minimize the resource impact on potentially low-function clients, one encoding 15 mechanism to be used for protocol messages is a simplified TTLV (Tag, Type, Length, Value) 16 scheme. 17 The scheme is designed to minimize the CPU cycle and memory requirements of clients that 18 must encode or decode protocol messages, and to provide optimal alignment for both 32-bit and 19 64-bit processors. Minimizing bandwidth over the transport mechanism is considered to be of 20 lesser importance. 21 9.1.1 TTLV Encoding Fields 22 Every Data object encoded by the TTLV scheme consists of 4 items, in order: 23 9.1.1.1 Item Tag 24 An Item Tag is a 3-byte binary unsigned integer, transmitted big endian, which contains a 25 number that designates the specific Protocol Field or Object that the TTLV object 26 represents. To ease debugging, and to ensure that malformed messages are detected 27 more easily, all tags must contain either the value 42 in hex or the value 54 in hex as the 28 high order (first) byte.
    [Show full text]
  • AN5092, FIR Filtering Using the Lightweight Signal Processor on MPC5777M
    Freescale Semiconductor, Inc. Document Number: AN5092 Application note Rev. 1 , 05/2015 FIR Filtering Using the Lightweight Signal Processor on MPC5777M by: Andrew Turner and Ian Howie 1 Introduction The Lightweight Signal Processing (LSP) auxiliary Contents processing unit (APU) is designed to accelerate processing applications normally suited to digital signal 1 Introduction .............................................................................. 1 processing (DSP) operations. The LSP-APU is 2 LSP comparison with SPE and SPE2 ....................................... 2 embedded in the e200z425n3 I/O processor found on 3 LSP –APU Programming basics .............................................. 2 3.1 GPR Registers .................................................................. 2 the Freescale’s MPC5777M device. The LSP-APU can 3.2 GPR Register pairings ..................................................... 3 be used to accelerate signal processing routines such as 3.3 Instruction Overview ....................................................... 3 finite impulse response (FIR) and infinite impulse 3.4 Example instructions ....................................................... 3 3.5 LSP-APU Data formats ................................................... 4 response (IIR) filters. This is accomplished using the 3.6 Fractional arithmetic and its benefits to signal processing5 standard 32-bit general purpose registers (GPRs), and 4 FIR Filter Introduction ............................................................. 6 supports vector
    [Show full text]
  • Fundamental Data Structures Contents
    Fundamental Data Structures Contents 1 Introduction 1 1.1 Abstract data type ........................................... 1 1.1.1 Examples ........................................... 1 1.1.2 Introduction .......................................... 2 1.1.3 Defining an abstract data type ................................. 2 1.1.4 Advantages of abstract data typing .............................. 4 1.1.5 Typical operations ...................................... 4 1.1.6 Examples ........................................... 5 1.1.7 Implementation ........................................ 5 1.1.8 See also ............................................ 6 1.1.9 Notes ............................................. 6 1.1.10 References .......................................... 6 1.1.11 Further ............................................ 7 1.1.12 External links ......................................... 7 1.2 Data structure ............................................. 7 1.2.1 Overview ........................................... 7 1.2.2 Examples ........................................... 7 1.2.3 Language support ....................................... 8 1.2.4 See also ............................................ 8 1.2.5 References .......................................... 8 1.2.6 Further reading ........................................ 8 1.2.7 External links ......................................... 9 1.3 Analysis of algorithms ......................................... 9 1.3.1 Cost models ......................................... 9 1.3.2 Run-time analysis
    [Show full text]
  • Essentials of Programming Languages Third Edition Daniel P
    computer science/programming languages PROGRAMMING LANGUAGES ESSENTIALS OF Essentials of Programming Languages third edition Daniel P. Friedman and Mitchell Wand ESSENTIALS OF This book provides students with a deep, working understanding of the essential concepts of program- ming languages. Most of these essentials relate to the semantics, or meaning, of program elements, and the text uses interpreters (short programs that directly analyze an abstract representation of the THIRD EDITION program text) to express the semantics of many essential language elements in a way that is both clear PROGRAMMING and executable. The approach is both analytical and hands-on. The book provides views of program- ming languages using widely varying levels of abstraction, maintaining a clear connection between the high-level and low-level views. Exercises are a vital part of the text and are scattered throughout; the text explains the key concepts, and the exercises explore alternative designs and other issues. The complete LANGUAGES Scheme code for all the interpreters and analyzers in the book can be found online through The MIT Press website. For this new edition, each chapter has been revised and many new exercises have been added. Significant additions have been made to the text, including completely new chapters on modules and continuation-passing style. Essentials of Programming Languages can be used for both graduate and un- dergraduate courses, and for continuing education courses for programmers. Daniel P. Friedman is Professor of Computer Science at Indiana University and is the author of many books published by The MIT Press, including The Little Schemer (fourth edition, 1995), The Seasoned Schemer (1995), A Little Java, A Few Patterns (1997), each of these coauthored with Matthias Felleisen, and The Reasoned Schemer (2005), coauthored with William E.
    [Show full text]