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

Size: px
Start display at page:

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

Transcription

1 Chapter 4: Application Protocols 4.1: Layer : Internet Phonebook : DNS 4.3: The WWW and s OSI Reference Model Application Layer Presentation Layer Session Layer Application Protocols Chapter 3: Internet Protocols Chapter 2: Computer Networks Transport Layer Network Layer Data Link Layer Physical Layer Page 1

2 Layer 5: Session Layer Layer 5 is the lowest of the application orientated layers; it controls dialogs, i.e. the exchange of related information: Synchronization of partner instances by synchronization points: data can have been transferred correctly but have to be nevertheless partially retransmitted. (Crash of a sender in the mid of the data transmission process.) Therefore, synchronization points can be set on layer 5 at arbitrary times of the communication process. If a connection breaks down, not the entire data transmission has to be repeated; the transmission can remount at the last synchronization point. Dialog management during half duplex transmission: layer 5 controls the order in which the communication partners are allowed to send their data. Connection establishment, data transmission, and connection termination for layer 5 to 7. Use of different tokens for the assignment of transmission authorizations, for connection termination, and for the setting synchronization points. Page 2

3 Layer 6: Presentation Layer Layer 6 hides the use of different data structures or differences in their internal representation The same meaning of the data with the sender and the receiver is guaranteed Adapt character codes ASCII 7-bit American Standard Code for Information Interchange EBCDIC 8-bit Extended Binary Coded Digital Interchange Code Adapt number notation 32/40/56/64 bits Little Endian (byte 0 of a word is right) vs. Big Endian (byte 0 is left) Abstract Syntax Notation One, ASN.1 as transfer syntax Substantial tasks of layer 6: 1.) Negotiation of the transfer syntax 2.) Mapping of the own data to the transfer syntax 3.) and further data compression, data encryption (source coding) Page 3

4 Codes Source coding generally converts the representation of messages into a sequence of code words Efficient coding Remove redundancies Data compression Codes are meaningful only if they are clearly decodable, i.e. each sequence of characters, which consists of code words, can be divided definitely into a sequence of code words. In communication, immediately decodable codes are important, i.e. character sequences from code words can be decoded definitely from the beginning of the character sequence word by word, without considering following characters. Prefix code: no code word may be a prefix of another. Example: C = {0, 10, 011, 11111} is a definite code, but not immediately decodable To each definite code, an immediately decodable code exists, which is not longer. Page 4

5 Information Theory What is information? Definition: The mean information content (entropy) of a character is defined by N p log i= 1 i a p i = N p log i= 1 i a 1 p i with N - Number of different characters p i - Frequency of a character i (i=1,, N) A -Basis In a transferred sense: The entropy indicates, how surprised we are, which character comes next. Example 1: Given: 4 characters All N=4 characters are equivalent frequently (p i = 0.25 i) 4 Entropy: 0,25log 4 = log 4 = 2[ bit] 2 2 = i 1 There does not exist a better coding as with 2 bits per character Example 2: Given: 4 characters The first character has the frequency p 1 =1, thus is p 2 = p 3 = p 4 = 0 Entropy: 1 1 log 1+ lim3* p log = = 0 2 a p 0 The entropy is 0 [bit], i.e. because anyway only character 1 is transferred, we did not even code and transfer it. p Page 5

6 Huffman Code Lehrstuhl für Informatik 4 The entropy indicates how many bits at least are needed for coding. A good approximation to that theoretical minimum (for mean code word length) is the use of a binary tree. The characters which are to be coded are at the leafs. Huffman code (a prefix code) Precondition: the frequency of the occurrence of all characters is well-known. Principle: more frequently arising characters are coded shorter than rarer ones 1.) List all characters as well as their frequencies 2.) Select the two list elements with the smallest frequency and remove them from the list 3.) Make them the leafs of a tree, whereby the probabilities for both elements are being added; place the tree into the list 4.) Repeat steps 2 and 3, until the list contains only one element 5.) Mark all edges: Father left son with 0 Father right son with 1 The code words result from the path from the root to the leafs Page 6

7 Huffman Code - Example The characters A, B, C, D and E are given with the probabilities p(a) = 0.27, p(b) = 0.36, p(c) = 0.16, p(d) = 0.14, p(e) = 0.07 Entropy: 2,13 4 p(adceb) = p(ced) = p(c) = p(ed) = p(ab) = p(a) = 0.27 p(b) = 0.36 p(e) = 0.07 p(d) = 0.14 Resulting Code Words: w(a) = 10, w(b) = 11, w(c) = 00, w(d) = 011, w(e) = 010 Page 7

8 Huffman Code - Example A - Adenin 0,5 C - Cytosin 0,3 G - Guanin 0,15 T - Thymin 0,05 A (0,5) 0 C (0,3) (1,0) 1 (0,5) 0 1 (0,2) 0 1 G (0,15) T (0,05) Entropy 1.65 bit It can exist a coding with less than 2 bits per character on the average Page 8

9 Frequency of Characters and Character Sequences (English language) Letters Digrams Trigrams E 13,05 TH 3,16 THE 4,72 T 9,02 IN 1,54 ING 1,42 O 8,21 ER 1,33 AND 1,13 A 7,81 RE 1,30 ION 1,00 N 7,28 AN 1,08 ENT 0,98 I 6,77 HE 1,08 FOR 0,76 R 6,64 AR 1,02 TIO 0,75 S 6,46 EN 1,02 ERE 0,69 H 5,85 TI 1,02 HER 0,68 D 4,11 TE 0,98 ATE 0,66 L 3,60 AT 0,88 VER 0,63 C 2,93 ON 0,84 TER 0,62 F 2,88 HA 0,84 THA 0,62 U 2,77 OU 0,72 ATI 0,59 M 2,62 IT 0,71 HAT 0,55 P 2,15 ES 0,69 ERS 0,54 Y 1,51 ST 0,68 HIS 0,52 W 1,49 OR 0,68 RES 0,50 G 1,39 NT 0,67 ILL 0,47 B 1,28 HI 0,66 ARE 0,46 V 1,00 EA 0,64 CON 0,45 K 0,42 VE 0,64 NCE 0,43 X 0,30 CO 0,59 ALL 0,44 J 0,23 DE 0,55 EVE 0,44 Q 0,14 RA 0,55 ITH 0,44 Z 0,09 RO 0,55 TED 0,44 Codes like the Huffman code are not limited necessarily to individual characters. It can be more meaningful (depending on the application) to code directly whole character strings example: the English language. Page 9

10 Arithmetic Coding Characteristics: Achieves optimality (coding rate) as the Huffman coding Difference to Huffman: the entire data stream has an assigned probability, which consists of the probabilities of the contained characters. Coding a character takes place with consideration of all previous characters. The data are coded as an interval of real numbers between 0 and 1. Each value within the interval can be used as code word. The minimum length of the code is determined by the assigned probability. Disadvantage: the data stream can be decoded only as a whole. Page 10

11 Arithmetic Coding: Example Code data ACAB with p A = 0.5, p B = 0.2, p C = p A = 0.5 pb = 0.2 p C = p AA = 0.25 p AB = 0.1p AC = 0.15 p BA p BB p BC p CA p CB p CC p ACA = p ACB = 0.03 p ACC = p ACAA = p ACAB = p ACAC = ACAB can be coded by each binary number from the interval [0.3875, ), rounded up to log 2 (p ACAB ) = 6.06 i.e. 7 bit, e.g Page 11

12 Layer 7: Application Layer Collection of often used communication services Identification of communication partners Detection of the availability of communication partners Authentication Negotiation of the grade of the transmission quality Synchronization of cooperating applications Page 12

2.2: Images and Graphics Digital image representation Image formats and color models JPEG, JPEG2000 Image synthesis and graphics systems

2.2: Images and Graphics Digital image representation Image formats and color models JPEG, JPEG2000 Image synthesis and graphics systems Chapter 2: Representation of Multimedia Data Audio Technology Images and Graphics Video Technology Chapter 3: Multimedia Systems Communication Aspects and Services Chapter 4: Multimedia Systems Storage

More information

Digital Image Representation. Image Representation. Color Models

Digital Image Representation. Image Representation. Color Models Digital Representation Chapter : Representation of Multimedia Data Audio Technology s and Graphics Video Technology Chapter 3: Multimedia Systems Communication Aspects and Services Chapter 4: Multimedia

More information

Data Compression Fundamentals

Data Compression Fundamentals 1 Data Compression Fundamentals Touradj Ebrahimi Touradj.Ebrahimi@epfl.ch 2 Several classifications of compression methods are possible Based on data type :» Generic data compression» Audio compression»

More information

Encoding. A thesis submitted to the Graduate School of University of Cincinnati in

Encoding. A thesis submitted to the Graduate School of University of Cincinnati in Lossless Data Compression for Security Purposes Using Huffman Encoding A thesis submitted to the Graduate School of University of Cincinnati in a partial fulfillment of requirements for the degree of Master

More information

David Rappaport School of Computing Queen s University CANADA. Copyright, 1996 Dale Carnegie & Associates, Inc.

David Rappaport School of Computing Queen s University CANADA. Copyright, 1996 Dale Carnegie & Associates, Inc. David Rappaport School of Computing Queen s University CANADA Copyright, 1996 Dale Carnegie & Associates, Inc. Data Compression There are two broad categories of data compression: Lossless Compression

More information

Data Compression Techniques

Data Compression Techniques Data Compression Techniques Part 1: Entropy Coding Lecture 1: Introduction and Huffman Coding Juha Kärkkäinen 31.10.2017 1 / 21 Introduction Data compression deals with encoding information in as few bits

More information

More Bits and Bytes Huffman Coding

More Bits and Bytes Huffman Coding More Bits and Bytes Huffman Coding Encoding Text: How is it done? ASCII, UTF, Huffman algorithm ASCII C A T Lawrence Snyder, CSE UTF-8: All the alphabets in the world Uniform Transformation Format: a variable-width

More information

ES623 Networked Embedded Systems

ES623 Networked Embedded Systems ES623 Networked Embedded Systems Introduction to Network models & Data Communication 16 th April 2013 OSI Models An ISO standard that covers all aspects of network communication is the Open Systems Interconnection

More information

CSE 484 / CSE M 584 Computer Security. TA: Jared Moore

CSE 484 / CSE M 584 Computer Security. TA: Jared Moore CSE 484 / CSE M 584 Computer Security TA: Jared Moore jlcmoore@cs Logistics Lab #1 due next Friday Today: Lab 1 questions. Authentication grab bag. (if time) Cryptography Password Salting Servers shouldn

More information

Data Compression. Guest lecture, SGDS Fall 2011

Data Compression. Guest lecture, SGDS Fall 2011 Data Compression Guest lecture, SGDS Fall 2011 1 Basics Lossy/lossless Alphabet compaction Compression is impossible Compression is possible RLE Variable-length codes Undecidable Pigeon-holes Patterns

More information

Entropy Coding. - to shorten the average code length by assigning shorter codes to more probable symbols => Morse-, Huffman-, Arithmetic Code

Entropy Coding. - to shorten the average code length by assigning shorter codes to more probable symbols => Morse-, Huffman-, Arithmetic Code Entropy Coding } different probabilities for the appearing of single symbols are used - to shorten the average code length by assigning shorter codes to more probable symbols => Morse-, Huffman-, Arithmetic

More information

Multimedia Networking ECE 599

Multimedia Networking ECE 599 Multimedia Networking ECE 599 Prof. Thinh Nguyen School of Electrical Engineering and Computer Science Based on B. Lee s lecture notes. 1 Outline Compression basics Entropy and information theory basics

More information

CSE 143, Winter 2013 Programming Assignment #8: Huffman Coding (40 points) Due Thursday, March 14, 2013, 11:30 PM

CSE 143, Winter 2013 Programming Assignment #8: Huffman Coding (40 points) Due Thursday, March 14, 2013, 11:30 PM CSE, Winter Programming Assignment #8: Huffman Coding ( points) Due Thursday, March,, : PM This program provides practice with binary trees and priority queues. Turn in files named HuffmanTree.java, secretmessage.short,

More information

Chapter 3: Multimedia Systems - Communication Aspects and Services Chapter 4: Multimedia Systems Storage Aspects Chapter 5: Multimedia Usage

Chapter 3: Multimedia Systems - Communication Aspects and Services Chapter 4: Multimedia Systems Storage Aspects Chapter 5: Multimedia Usage Chapter : Basics Audio Technology Images and Graphics Video and Animation.: Images and Graphics Digital image representation Image formats and color models JPEG, JPEG Image synthesis and graphics systems

More information

CS-461 Internetworking. Dr. Mohamed Aboutabl

CS-461 Internetworking. Dr. Mohamed Aboutabl CS-461 Internetworking Dr. Mohamed Aboutabl http://www.cs.jmu.edu/users/aboutams The McGraw-Hill Companies, Inc., 2000 1 Chapter 1 Introduction The McGraw-Hill Companies, Inc., 2000 2 Internet today Network

More information

CMPSCI 240 Reasoning Under Uncertainty Homework 4

CMPSCI 240 Reasoning Under Uncertainty Homework 4 CMPSCI 240 Reasoning Under Uncertainty Homework 4 Prof. Hanna Wallach Assigned: February 24, 2012 Due: March 2, 2012 For this homework, you will be writing a program to construct a Huffman coding scheme.

More information

Binary Trees Case-studies

Binary Trees Case-studies Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 https://ece.uwaterloo.ca/~cmoreno/ece250 Standard reminder to set phones to silent/vibrate mode, please! Today's class: Binary Trees Case-studies We'll look

More information

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science Advanced Computer Networks Department of Computer Science DCS COMSATS Institute of Information Technology Rab Nawaz Jadoon Assistant Professor COMSATS University, Lahore Pakistan Advanced Computer Networks

More information

CMSC 313 Lecture 03 Multiple-byte data big-endian vs little-endian sign extension Multiplication and division Floating point formats Character Codes

CMSC 313 Lecture 03 Multiple-byte data big-endian vs little-endian sign extension Multiplication and division Floating point formats Character Codes Multiple-byte data CMSC 313 Lecture 03 big-endian vs little-endian sign extension Multiplication and division Floating point formats Character Codes UMBC, CMSC313, Richard Chang 4-5 Chapter

More information

Uniquely Decodable. Code 1 Code 2 A 00 0 B 1 1 C D 11 11

Uniquely Decodable. Code 1 Code 2 A 00 0 B 1 1 C D 11 11 Uniquely Detectable Code Uniquely Decodable A code is not uniquely decodable if two symbols have the same codeword, i.e., if C(S i ) = C(S j ) for any i j or the combination of two codewords gives a third

More information

July Registration of a Cyrillic Character Set. Status of this Memo

July Registration of a Cyrillic Character Set. Status of this Memo Network Working Group Request for Comments: 1489 A. Chernov RELCOM Development Team July 1993 Status of this Memo Registration of a Cyrillic Character Set This memo provides information for the Internet

More information

DECnet. Background CHAPTER

DECnet. Background CHAPTER CHAPTER 28 DECnet Background DECnet is a group of data-communications products, including a protocol suite, developed and supported by Digital Equipment Corporation. The first version of DECnet, released

More information

Ch. 2: Compression Basics Multimedia Systems

Ch. 2: Compression Basics Multimedia Systems Ch. 2: Compression Basics Multimedia Systems Prof. Ben Lee School of Electrical Engineering and Computer Science Oregon State University Outline Why compression? Classification Entropy and Information

More information

Computer Networks and reference models. 1. List of Problems (so far)

Computer Networks and reference models. 1. List of Problems (so far) Computer s and reference models Chapter 2 1. List of Problems (so far) How to ensure connectivity between users? How to share a wire? How to pass a message through the network? How to build Scalable s?

More information

Lossless Compression Algorithms

Lossless Compression Algorithms Multimedia Data Compression Part I Chapter 7 Lossless Compression Algorithms 1 Chapter 7 Lossless Compression Algorithms 1. Introduction 2. Basics of Information Theory 3. Lossless Compression Algorithms

More information

An undirected graph is a tree if and only of there is a unique simple path between any 2 of its vertices.

An undirected graph is a tree if and only of there is a unique simple path between any 2 of its vertices. Trees Trees form the most widely used subclasses of graphs. In CS, we make extensive use of trees. Trees are useful in organizing and relating data in databases, file systems and other applications. Formal

More information

15 July, Huffman Trees. Heaps

15 July, Huffman Trees. Heaps 1 Huffman Trees The Huffman Code: Huffman algorithm uses a binary tree to compress data. It is called the Huffman code, after David Huffman who discovered d it in 1952. Data compression is important in

More information

Chapter 2 Network Models 2.1

Chapter 2 Network Models 2.1 Chapter 2 Network Models 2.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 2-1 LAYERED TASKS We use the concept of layers in our daily life. As an example,

More information

Network Model: Each layer has a specific function.

Network Model: Each layer has a specific function. OBJECTIVES: To discuss the OSI model and its layer architecture and to show the interface between the layers. To briefly discuss the functions of each layer in the OSI model. To introduce the TCP/IP protocol.

More information

Intro. To Multimedia Engineering Lossless Compression

Intro. To Multimedia Engineering Lossless Compression Intro. To Multimedia Engineering Lossless Compression Kyoungro Yoon yoonk@konkuk.ac.kr 1/43 Contents Introduction Basics of Information Theory Run-Length Coding Variable-Length Coding (VLC) Dictionary-based

More information

CIS-331 Exam 2 Fall 2015 Total of 105 Points Version 1

CIS-331 Exam 2 Fall 2015 Total of 105 Points Version 1 Version 1 1. (20 Points) Given the class A network address 117.0.0.0 will be divided into multiple subnets. a. (5 Points) How many bits will be necessary to address 4,000 subnets? b. (5 Points) What is

More information

The OSI Model and the TCP/IP Protocol Suite Outline: 1. Protocol Layers 2. OSI Model 3. TCP/IP Model 4. Addressing

The OSI Model and the TCP/IP Protocol Suite Outline: 1. Protocol Layers 2. OSI Model 3. TCP/IP Model 4. Addressing The OSI Model and the TCP/IP Protocol Suite Outline: 1. Protocol Layers 2. OSI Model 3. TCP/IP Model 4. Addressing OBJECTIVES To discuss the OSI model and its layer architecture and to show the interface

More information

CSE 143 Lecture 22. Huffman Tree

CSE 143 Lecture 22. Huffman Tree CSE 4 Lecture Huffman slides created by Ethan Apter http://www.cs.washington.edu/4/ Huffman Tree For your next assignment, you ll create a Huffman tree Huffman trees are used for file compression file

More information

DECnet. Chapter Goals. Introduction CHAPTER

DECnet. Chapter Goals. Introduction CHAPTER 38 CHAPTER Chapter Goals Describe the development history of the protocol, used primarily in Digital Equipment Corporation minicomputers. Describe the architecture of networks. Discuss the addressing methods

More information

Lecture (02) Network Protocols and Standards

Lecture (02) Network Protocols and Standards Lecture (02) Network Protocols and Standards Dr. Ahmed M. ElShafee 1 Agenda - - 2 Preface Protocols and standards are what make networks work together. Protocols make it possible for the various components

More information

CS 206 Introduction to Computer Science II

CS 206 Introduction to Computer Science II CS 206 Introduction to Computer Science II 04 / 25 / 2018 Instructor: Michael Eckmann Today s Topics Questions? Comments? Balanced Binary Search trees AVL trees / Compression Uses binary trees Balanced

More information

Chapter -4 OSI Reference Model

Chapter -4 OSI Reference Model Chapter -4 OSI Reference Model Objectives Concept of Reference Model. OSI Reference Model Concept. Layers of OSI Reference Model. 4.1 Introduction Layered Architecture, Peer-to- Peer Processes, Interfaces

More information

Lossless compression II

Lossless compression II Lossless II D 44 R 52 B 81 C 84 D 86 R 82 A 85 A 87 A 83 R 88 A 8A B 89 A 8B Symbol Probability Range a 0.2 [0.0, 0.2) e 0.3 [0.2, 0.5) i 0.1 [0.5, 0.6) o 0.2 [0.6, 0.8) u 0.1 [0.8, 0.9)! 0.1 [0.9, 1.0)

More information

Data Compression. An overview of Compression. Multimedia Systems and Applications. Binary Image Compression. Binary Image Compression

Data Compression. An overview of Compression. Multimedia Systems and Applications. Binary Image Compression. Binary Image Compression An overview of Compression Multimedia Systems and Applications Data Compression Compression becomes necessary in multimedia because it requires large amounts of storage space and bandwidth Types of Compression

More information

Welcome Back to Fundamentals of Multimedia (MR412) Fall, 2012 Lecture 10 (Chapter 7) ZHU Yongxin, Winson

Welcome Back to Fundamentals of Multimedia (MR412) Fall, 2012 Lecture 10 (Chapter 7) ZHU Yongxin, Winson Welcome Back to Fundamentals of Multimedia (MR412) Fall, 2012 Lecture 10 (Chapter 7) ZHU Yongxin, Winson zhuyongxin@sjtu.edu.cn 2 Lossless Compression Algorithms 7.1 Introduction 7.2 Basics of Information

More information

Module 1. Computer Communications and Networking

Module 1. Computer Communications and Networking Module 1 Computer Communications and Networking Topic Covered 1. 7 layer model for computer communications 2. Network topologies 3. Network bearers 4. LANs and WANs 5. CSMA and token protocols 6. Networking

More information

Data Representation. Types of data: Numbers Text Audio Images & Graphics Video

Data Representation. Types of data: Numbers Text Audio Images & Graphics Video Data Representation Data Representation Types of data: Numbers Text Audio Images & Graphics Video Analog vs Digital data How is data represented? What is a signal? Transmission of data Analog vs Digital

More information

Chapter 12. Network Organization and Architecture. Chapter 12 Objectives Introduction Introduction

Chapter 12. Network Organization and Architecture. Chapter 12 Objectives Introduction Introduction Chapter 12 Objectives Chapter 12 Network Organization and Architecture Become familiar with the fundamentals of network architectures. Be able to describe the ISO/OSI reference model and the TCP/IP standard.

More information

Overview. Last Lecture. This Lecture. Next Lecture. Data Transmission. Data Compression Source: Lecture notes

Overview. Last Lecture. This Lecture. Next Lecture. Data Transmission. Data Compression Source: Lecture notes Overview Last Lecture Data Transmission This Lecture Data Compression Source: Lecture notes Next Lecture Data Integrity 1 Source : Sections 10.1, 10.3 Lecture 4 Data Compression 1 Data Compression Decreases

More information

Greedy Algorithms CHAPTER 16

Greedy Algorithms CHAPTER 16 CHAPTER 16 Greedy Algorithms In dynamic programming, the optimal solution is described in a recursive manner, and then is computed ``bottom up''. Dynamic programming is a powerful technique, but it often

More information

CIS-331 Fall 2014 Exam 1 Name: Total of 109 Points Version 1

CIS-331 Fall 2014 Exam 1 Name: Total of 109 Points Version 1 Version 1 1. (24 Points) Show the routing tables for routers A, B, C, and D. Make sure you account for traffic to the Internet. Router A Router B Router C Router D Network Next Hop Next Hop Next Hop Next

More information

Data Structures and Algorithms

Data Structures and Algorithms Data Structures and Algorithms CS245-2015S-P2 Huffman Codes Project 2 David Galles Department of Computer Science University of San Francisco P2-0: Text Files All files are represented as binary digits

More information

Digital Image Processing

Digital Image Processing Digital Image Processing Image Compression Caution: The PDF version of this presentation will appear to have errors due to heavy use of animations Material in this presentation is largely based on/derived

More information

Network Models. Behrouz A. Forouzan Data communication and Networking Fourth edition

Network Models. Behrouz A. Forouzan Data communication and Networking Fourth edition Chapter 2 Network Models Behrouz A. Forouzan Data communication and Networking Fourth edition 1 Layered Tasks We use the concept of layers in our daily life. As an example, let us consider two friends

More information

Chapter 1 : Introduction to Computer Networks

Chapter 1 : Introduction to Computer Networks Topic List: A. Need to Share Resources B. Layering Concept and Example C. TCP/IP and OSI Layering Models D. Connection Oriented vs. Connectionless Transfer E. Top-Down and Bottom Up Approaches to study

More information

CMSC 330: Organization of Programming Languages. Architecture of Compilers, Interpreters

CMSC 330: Organization of Programming Languages. Architecture of Compilers, Interpreters : Organization of Programming Languages Context Free Grammars 1 Architecture of Compilers, Interpreters Source Scanner Parser Static Analyzer Intermediate Representation Front End Back End Compiler / Interpreter

More information

Huffman Coding Assignment For CS211, Bellevue College (rev. 2016)

Huffman Coding Assignment For CS211, Bellevue College (rev. 2016) Huffman Coding Assignment For CS, Bellevue College (rev. ) (original from Marty Stepp, UW CSE, modified by W.P. Iverson) Summary: Huffman coding is an algorithm devised by David A. Huffman of MIT in 95

More information

Huffman Code Application. Lecture7: Huffman Code. A simple application of Huffman coding of image compression which would be :

Huffman Code Application. Lecture7: Huffman Code. A simple application of Huffman coding of image compression which would be : Lecture7: Huffman Code Lossless Image Compression Huffman Code Application A simple application of Huffman coding of image compression which would be : Generation of a Huffman code for the set of values

More information

EE-575 INFORMATION THEORY - SEM 092

EE-575 INFORMATION THEORY - SEM 092 EE-575 INFORMATION THEORY - SEM 092 Project Report on Lempel Ziv compression technique. Department of Electrical Engineering Prepared By: Mohammed Akber Ali Student ID # g200806120. ------------------------------------------------------------------------------------------------------------------------------------------

More information

Text Compression through Huffman Coding. Terminology

Text Compression through Huffman Coding. Terminology Text Compression through Huffman Coding Huffman codes represent a very effective technique for compressing data; they usually produce savings between 20% 90% Preliminary example We are given a 100,000-character

More information

Chapter 2 Network Models 2.1

Chapter 2 Network Models 2.1 Chapter 2 Network Models 2.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Network Models n Network Architecture: n A) Hardware: at the core of any network;

More information

Internetworking Models The OSI Reference Model

Internetworking Models The OSI Reference Model Internetworking Models When networks first came into being, computers could typically communicate only with computers from the same manufacturer. In the late 1970s, the Open Systems Interconnection (OSI)

More information

Several versions of DECnet have been released. The first allowed two directly attached minicomputers to communicate.

Several versions of DECnet have been released. The first allowed two directly attached minicomputers to communicate. DECnet DECnet is a group of data communications products, including a protocol suite, developed and supported by Digital Equipment Corporation (Digital). The first version of DECnet, released in 1975,

More information

14.4 Description of Huffman Coding

14.4 Description of Huffman Coding Mastering Algorithms with C By Kyle Loudon Slots : 1 Table of Contents Chapter 14. Data Compression Content 14.4 Description of Huffman Coding One of the oldest and most elegant forms of data compression

More information

Architecture of Compilers, Interpreters. CMSC 330: Organization of Programming Languages. Front End Scanner and Parser. Implementing the Front End

Architecture of Compilers, Interpreters. CMSC 330: Organization of Programming Languages. Front End Scanner and Parser. Implementing the Front End Architecture of Compilers, Interpreters : Organization of Programming Languages ource Analyzer Optimizer Code Generator Context Free Grammars Intermediate Representation Front End Back End Compiler / Interpreter

More information

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Security Architecture. Lecture 13: Prof. Shervin Shirmohammadi CEG

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Security Architecture. Lecture 13: Prof. Shervin Shirmohammadi CEG Lecture 13: Security Architecture Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4185 13-1 Network Assets and Security Threats Assets: Hardware (PC, workstation,

More information

ASCII American Standard Code for Information Interchange. Text file is a sequence of binary digits which represent the codes for each character.

ASCII American Standard Code for Information Interchange. Text file is a sequence of binary digits which represent the codes for each character. Project 2 1 P2-0: Text Files All files are represented as binary digits including text files Each character is represented by an integer code ASCII American Standard Code for Information Interchange Text

More information

An Efficient Decoding Technique for Huffman Codes Abstract 1. Introduction

An Efficient Decoding Technique for Huffman Codes Abstract 1. Introduction An Efficient Decoding Technique for Huffman Codes Rezaul Alam Chowdhury and M. Kaykobad Department of Computer Science and Engineering Bangladesh University of Engineering and Technology Dhaka-1000, Bangladesh,

More information

L2. An Introduction to Classical Cryptosystems. Rocky K. C. Chang, 23 January 2015

L2. An Introduction to Classical Cryptosystems. Rocky K. C. Chang, 23 January 2015 L2. An Introduction to Classical Cryptosystems Rocky K. C. Chang, 23 January 2015 This and the next set of slides 2 Outline Components of a cryptosystem Some modular arithmetic Some classical ciphers Shift

More information

Information Science 2

Information Science 2 Information Science 2 - Path Lengths and Huffman s Algorithm- Week 06 College of Information Science and Engineering Ritsumeikan University Agenda l Review of Weeks 03-05 l Tree traversals and notations

More information

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan Chapter3: OSI Reference Model: Network Software: Network

More information

A New Compression Method Strictly for English Textual Data

A New Compression Method Strictly for English Textual Data A New Compression Method Strictly for English Textual Data Sabina Priyadarshini Department of Computer Science and Engineering Birla Institute of Technology Abstract - Data compression is a requirement

More information

Dialog Box Displaying the VPN Connection Status.

Dialog Box Displaying the VPN Connection Status. By using SoftEther VPN Client to define the required connection settings of a connection setting and then connecting to that connection setting, you can start the connection to VPN Server. 4.5.1 Starting

More information

Where We Are. CMSC 330: Organization of Programming Languages. This Lecture. Programming Languages. Motivation for Grammars

Where We Are. CMSC 330: Organization of Programming Languages. This Lecture. Programming Languages. Motivation for Grammars CMSC 330: Organization of Programming Languages Context Free Grammars Where We Are Programming languages Ruby OCaml Implementing programming languages Scanner Uses regular expressions Finite automata Parser

More information

ASCII American Standard Code for Information Interchange. Text file is a sequence of binary digits which represent the codes for each character.

ASCII American Standard Code for Information Interchange. Text file is a sequence of binary digits which represent the codes for each character. Project 2 1 P2-0: Text Files All files are represented as binary digits including text files Each character is represented by an integer code ASCII American Standard Code for Information Interchange Text

More information

Networking Applications

Networking Applications Networking Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab Academy for Science & Technology and Maritime Transport 1 Outline Internet Layers Internet Data Packet transmission

More information

Efficient VLSI Huffman encoder implementation and its application in high rate serial data encoding

Efficient VLSI Huffman encoder implementation and its application in high rate serial data encoding LETTER IEICE Electronics Express, Vol.14, No.21, 1 11 Efficient VLSI Huffman encoder implementation and its application in high rate serial data encoding Rongshan Wei a) and Xingang Zhang College of Physics

More information

Networking Models OSI Model Created by International Organization Standardization

Networking Models OSI Model Created by International Organization Standardization Networking Models OSI Model Created by International Organization Standardization Prepared by Agha Mohammad Haidari Network Manager ICT Directorate Ministry of Communication & IT Email : Agha.m@mcit.gov.af

More information

OBJECTIVES After reading this chapter, the student should be able to:

OBJECTIVES After reading this chapter, the student should be able to: Data Representation OBJECTIVES After reading this chapter, the student should be able to: Define data types. Visualize how data are stored inside a computer. Understand the differences between text, numbers,

More information

CIS-331 Spring 2016 Exam 1 Name: Total of 109 Points Version 1

CIS-331 Spring 2016 Exam 1 Name: Total of 109 Points Version 1 Version 1 Instructions Write your name on the exam paper. Write your name and version number on the top of the yellow paper. Answer Question 1 on the exam paper. Answer Questions 2-4 on the yellow paper.

More information

Lecture Outline. Lecture 2. OSI model and networking. The OSI model and networking. The OSI model and networking. The OSI model and networking

Lecture Outline. Lecture 2. OSI model and networking. The OSI model and networking. The OSI model and networking. The OSI model and networking Lecture 2 The OSI model Chapter 2, specifically pages 42-58 Dave Novak School of Business Administration, University of Vermont Sources: 1) Network+ Guide to Networks, Dean 2013 2) Comer, Computer Networks

More information

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 02, FALL 2012 CMSC 33 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 2, FALL 22 TOPICS TODAY Bits of Memory Data formats for negative numbers Modulo arithmetic & two s complement Floating point formats

More information

Fundamentals of Networking. OSI & TCP/IP Model. Kuldeep Sonar 1

Fundamentals of Networking. OSI & TCP/IP Model. Kuldeep Sonar 1 Fundamentals of Networking OSI & TCP/IP Model Kuldeep Sonar 1 Kuldeep Sonar 2 OSI Model Kuldeep Sonar 3 Application Layer Layer 7 provides an interface between a host s communication software and any necessary

More information

15110 Principles of Computing, Carnegie Mellon University - CORTINA. Digital Data

15110 Principles of Computing, Carnegie Mellon University - CORTINA. Digital Data UNIT 7A Data Representa1on: Numbers and Text 1 Digital Data 10010101011110101010110101001110 What does this binary sequence represent? It could be: an integer a floa1ng point number text encoded with ASCII

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Organization of Programming Languages Context Free Grammars and Parsing 1 Recall: Architecture of Compilers, Interpreters Source Parser Static Analyzer Intermediate Representation Front End Back

More information

MCS-375: Algorithms: Analysis and Design Handout #G2 San Skulrattanakulchai Gustavus Adolphus College Oct 21, Huffman Codes

MCS-375: Algorithms: Analysis and Design Handout #G2 San Skulrattanakulchai Gustavus Adolphus College Oct 21, Huffman Codes MCS-375: Algorithms: Analysis and Design Handout #G2 San Skulrattanakulchai Gustavus Adolphus College Oct 21, 2016 Huffman Codes CLRS: Ch 16.3 Ziv-Lempel is the most popular compression algorithm today.

More information

Communication and Networks. Problems

Communication and Networks. Problems Electrical and Information Technology Communication and Networks Problems Network Layer (IP) 2016 Problems 1. The table below describes the next hop for each destination in the network for all nodes in

More information

Architectures of Communication Subsystems

Architectures of Communication Subsystems Architectures of Communication Subsystems Open System Interconnection Reference Model Computer Networks Lecture 2 http://goo.gl/pze5o8 Connection-Oriented versus Connectionless Communication 2 Connection-Oriented

More information

Huffman Codes (data compression)

Huffman Codes (data compression) Huffman Codes (data compression) Data compression is an important technique for saving storage Given a file, We can consider it as a string of characters We want to find a compressed file The compressed

More information

6.1 Font Types. Font Types

6.1 Font Types. Font Types 6 Font This chapter explains basic features of GP-Pro EX's "Font" and basic ways of placing text with each font. Please start by reading "6.1 Font Types" (page 6-2) and then turn to the corresponding page.

More information

The Client Server Model and Software Design

The Client Server Model and Software Design The Client Server Model and Software Design Prof. Chuan-Ming Liu Computer Science and Information Engineering National Taipei University of Technology Taipei, TAIWAN MCSE Lab, NTUT, TAIWAN 1 Introduction

More information

CHAPTER 1 Encoding Information

CHAPTER 1 Encoding Information MIT 6.02 DRAFT Lecture Notes Spring 2011 Comments, questions or bug reports? Please contact 6.02-staff@mit.edu CHAPTER 1 Encoding Information In this lecture and the next, we ll be looking into compression

More information

CS15100 Lab 7: File compression

CS15100 Lab 7: File compression C151 Lab 7: File compression Fall 26 November 14, 26 Complete the first 3 chapters (through the build-huffman-tree function) in lab (optionally) with a partner. The rest you must do by yourself. Write

More information

IEC Contactors. Auxiliary Contact Blocks GENERAL

IEC Contactors. Auxiliary Contact Blocks GENERAL IEC Contactors Auxiliary Contact Blocks GENERAL Description 3RH19 Auxiliary contact blocks The 3RH19 auxiliary contact blocks are available in 1, 2, 3 and 4-pole front mount versions and 2-pole side mount

More information

Fundamentals of Multimedia. Lecture 5 Lossless Data Compression Variable Length Coding

Fundamentals of Multimedia. Lecture 5 Lossless Data Compression Variable Length Coding Fundamentals of Multimedia Lecture 5 Lossless Data Compression Variable Length Coding Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Mahmoud El-Gayyar / Fundamentals of Multimedia 1 Data Compression Compression

More information

Source coding and compression

Source coding and compression Computer Mathematics Week 5 Source coding and compression College of Information Science and Engineering Ritsumeikan University last week binary representations of signed numbers sign-magnitude, biased

More information

Greedy Algorithms and Huffman Coding

Greedy Algorithms and Huffman Coding Greedy Algorithms and Huffman Coding Henry Z. Lo June 10, 2014 1 Greedy Algorithms 1.1 Change making problem Problem 1. You have quarters, dimes, nickels, and pennies. amount, n, provide the least number

More information

Concept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space provided.

Concept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space provided. 113 Chapter 9 TCP/IP Transport and Application Layer Services that are located in the transport layer enable users to segment several upper-layer applications onto the same transport layer data stream.

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Organization of Programming Languages Context Free Grammars 1 Architecture of Compilers, Interpreters Source Analyzer Optimizer Code Generator Abstract Syntax Tree Front End Back End Compiler

More information

ENSC Multimedia Communications Engineering Huffman Coding (1)

ENSC Multimedia Communications Engineering Huffman Coding (1) ENSC 424 - Multimedia Communications Engineering Huffman Coding () Jie Liang Engineering Science Simon Fraser University JieL@sfu.ca J. Liang: SFU ENSC 424 Outline Entropy Coding Prefix code Kraft-McMillan

More information

Digital Logic Lecture 4 Binary Codes

Digital Logic Lecture 4 Binary Codes Digital Logic Lecture 4 Binary Codes By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department Outline Introduction. Character coding. Error detection codes. Gray code. Decimal coding.

More information

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties

More information

Chapter 2 Network Models 2.1

Chapter 2 Network Models 2.1 Chapter 2 Network Models 2.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 2.2 2-1 LAYERED TASKS We use the concept of layers in our daily life. As an example,

More information

EE67I Multimedia Communication Systems Lecture 4

EE67I Multimedia Communication Systems Lecture 4 EE67I Multimedia Communication Systems Lecture 4 Lossless Compression Basics of Information Theory Compression is either lossless, in which no information is lost, or lossy in which information is lost.

More information

PCL ISO 8859/5 Latin/Cyrillic

PCL ISO 8859/5 Latin/Cyrillic Page 1 of 5 PCL Symbol Se t: 10N Unicode gly ph correspondence tables. Contact:help@redtitan.com http://pcl.to $20 U0020 Space -- -- -- -- $21 U0021 Ê Exclamation mark -- -- -- -- $22 U0022 Ë Quotation

More information