Impact of Machine Architectures - PowerPoint PPT Presentation

1 / 11
About This Presentation
Title:

Impact of Machine Architectures

Description:

Summer 2003. 9. Attributes. Value (10) Value representation (10102) big-endian vs. little-endian ... Summer 2003. 10. Little- vs. Big-Endians. Big-endian ... – PowerPoint PPT presentation

Number of Views:48
Avg rating:3.0/5.0
Slides: 12
Provided by: juancarl
Category:

less

Transcript and Presenter's Notes

Title: Impact of Machine Architectures


1
Impact of Machine Architectures
  • Juan Carlos Guzmán
  • CS 6123 Theory Implementation of Programming
    Languages
  • Southern Polytechnic State University

2
Machines
Von Neumann Machine
  • Hardware computer that built out of wires,
    gates, circuit boards, etc.
  • An elaboration of the Von Neumann Machine
  • Software simulated computer that implemented in
    software, which runs on top of another computer
  • Data
  • Primitive Operations
  • Sequence Control
  • Data Access
  • Storage Management
  • Operating Environment

3
Why So Many Computers?
  • It is economically feasible to produce in
    hardware (or firmware) only relatively simple
    computers
  • More complex or abstract computers are built in
    software

4
A Six-Level Computer
Applications
Level 5
Application Level
Compilers, Editors, Navigators
Software
Level 4
Assembly Language Level
Assembler, Linker, Loader
Level 3
Operating System Machine Level
Operating System
Level 2
Instruction Set Architecture Level
Hardware
Microprogram or hardware
Level 1
Microarchitecture Level
Hardware
Level 0
Digital Logic Level
from Andrew S. Tanenbaum, Structured Computer
Organization, 4th Edition, Prentice Hall, 1999.
5
Virtual Computers
  • How can we execute programs written in the
    high-level computer, given that all we have is
    the low-level computer?
  • Compilation
  • Translate instructions to the high-level computer
    to those of the low-level
  • Simulation (interpretation)
  • create a virtual machine

6
A Web Application
Input
Output
Web Application Computer (HTML web pages)
Web Virtual Computer (Navigator implemented in C
or Java)
C Virtual Computer (standard C libraries)
Operating System Virtual Computer (implemented in
machine Instructions)
Firmware Virtual Computer (implemented in
microcode)
Actual Hardware Computer
7
Binding
  • Binding an association between an attribute and
    an entity
  • Binding Time when does it happen?
  • and, when can it happen?

8
Binding Time
  • Static
  • Language definition time
  • Language implementation time
  • Program writing time
  • Compile time
  • Link time
  • Load time
  • Dynamic
  • Run time
  • At the start of execution (program)
  • On entry to a subprogram or block
  • When the expression is evaluated
  • When the data is accessed

9
Attributes
  • Value (10)
  • Value representation (10102)
  • big-endian vs. little-endian
  • Type (int)
  • Storage (4 bytes)
  • stack or global allocation
  • Scope
  • lexical or dynamic scope

10
Little- vs. Big-Endians
  • Big-endian
  • A computer architecture in which, within a given
    multi-byte numeric representation, the most
    significant byte has the lowest address (the word
    is stored big-end-first').
  • Motorola and Sun processors
  • Little-endian
  • a computer architecture in which, within a given
    16- or 32-bit word, bytes at lower addresses have
    lower significance (the word is stored
    little-end-first').
  • Intel processors

from The Jargon Dictionary - http//info.astrian.n
et/jargon
11
Static vs. Dynamic Scope
  • Under lexical scope, sub1 will always reference
    the x defined in big
  • Under dynamic scope, the x it references depends
    on the dynamic state of execution
  • procedure big
  • var x integer
  • procedure sub1
  • begin sub1
  • ... x ...
  • end sub1
  • procedure sub2
  • var x integer
  • begin sub2
  • ...
  • sub1
  • ...
  • end sub2

begin big ... sub1 sub2
... end big
Write a Comment
User Comments (0)
About PowerShow.com