Computer Architecture I (1DT016) : Cary Laxer, Ph.D. Visiting Lecturer
Computer Architecture I (1DT016) : Cary Laxer, Ph.D. Visiting Lecturer
Informationsteknologi
Todays class
Introductions
Computer organization overview
Introduction to assembly language
programming
Friday, Septembe
Introductions
Informationsteknologi
Instructor
Cary Laxer
Visiting lecturer
Home institution is Rose-Hulman Institute of
Technology, Terre Haute, Indiana, USA
Professor and Head of Computer Science and
Software Engineering
Bachelors degree in computer science and
mathematics from New York University
Ph.D. in biomedical engineering from Duke
University
Friday, Septembe
Informationsteknologi
Course
www.it.uu.se/edu/course/homepage/dark/ht07
Texts
Friday, Septembe
Informationsteknologi
Introduce yourselves
Tell us:
Your
name
Your hometown
Your computer background
Something interesting about yourself
Friday, Septembe
Computer organization
overview
Informationsteknologi
Friday, Septembe
Informationsteknologi
A multilevel machine
Friday, Septembe
Informationsteknologi
Contemporary Multilevel
Machines
Friday, Septembe
10
Informationsteknologi
Milestones in Computer
Architecture (1)
Friday, Septembe
11
Informationsteknologi
Milestones in Computer
Architecture (2)
Friday, Septembe
12
Informationsteknologi
Computer Generations
Zeroth Generation
Mechanical Computers (1642 1945)
First Generation
Vacuum Tubes (1945 1955)
Second Generation
Transistors (1955 1965)
Third Generation
Integrated Circuits (1965 1980)
Fourth Generation
Very Large Scale Integration (1980 ?)
Friday, Septembe
13
Informationsteknologi
Friday, Septembe
14
Informationsteknologi
Friday, Septembe
15
Informationsteknologi
IBM 360
Friday, Septembe
16
Informationsteknologi
Friday, Septembe
17
Informationsteknologi
Personal Computer
1. Pentium 4 socket
2. 875P Support chip
3. Memory sockets
4. AGP connector
5. Disk interface
6. Gigabit Ethernet
7. Five PCI slots
8. USB 2.0 ports
9. Cooling technology
10. BIOS
Friday, Septembe
18
Informationsteknologi
Friday, Septembe
19
Informationsteknologi
Friday, Septembe
20
Informationsteknologi
Metric Units
21
Introduction to Assembly
Language
Informationsteknologi
Number systems
Decimal (base 10)
Binary (base 2)
Hexadecimal (base 16)
Friday, Septembe
23
Informationsteknologi
Friday, Septembe
24
Informationsteknologi
25
Informationsteknologi
Characters
ASCII (American Standard Code for
Information Interchange)
EBCDIC (Extended Binary-Coded
Decimal Interchange Code)
Unicode
Friday, Septembe
26
Informationsteknologi
In-class exercise
Binary
Hex
Eight-bit twos complement binary notation
32-bit twos complement hexadecimal notation
Friday, Septembe
27
Informationsteknologi
Friday, Septembe
28
Informationsteknologi
Memory is byteaddressable
Addresses of
memory
cells
Friday, Septembe
0x00000000
0x00
0x00000001
0xA0
0x00000002
0x3E
0x00000003
0x10
.
.
.
0xFFFFFFFC
0x90
0xFFFFFFFD
0x6F
0xFFFFFFFE
0xA1
0xFFFFFFFF
0x00
Each
cell
holds
one
byte
29
Informationsteknologi
A programs address
space is composed of
three parts:
Friday, Septembe
0x7FFFFFFF
Stack segment
.
.
.
Data segment
0x10000000
Text segment
0x00400000
Reserved
30
Informationsteknologi
MIPS Registers
Register n is designated by $n or Rn
Register zero, $0, always contains the hardwired
value 0
There are conventions governing their use (see
Table 3.1 on page 20 of Waldron)
Friday, Septembe
31
Informationsteknologi
SPIM Simulator
Runs programs for the MIPS assembly
language on other platforms
Free versions available online (I got a
Windows version at
http://pages.cs.wisc.edu/~larus/spim.html)
Friday, Septembe
32
Informationsteknologi
SPIM I/O
Friday, Septembe
33
Informationsteknologi
Hello World
.text
.globl __start
__start:
la $a0,str
li $v0,4
syscall
li $v0,10
syscall
str:
#
#
#
#
# au revoir...
.data
.asciiz "hello world\n"
Friday, Septembe
34
Informationsteknologi
Demonstration
Friday, Septembe
35