introduction lecture1

advertisement
Princes Nora Bint Abdul Rahman University
Dept. of Computer & Information Sciences
CS 206D
Computer Organization
Course Introduction
Lecturer: Yasmeen Albarrak
 Office: 2.505.21
 e-mail: [email protected]
 Credit Hours: 3
 Course web site:
https://pnucs206.wordpress.com/lectures-slides/





“ Computer Architecture: A Quantitative Approach”, 4th Edition
John Hennessy, David Patterson.
Assembly Language for x86 Processors , 6th edition, by Kip R. Irvine,
Prentice Hall, 2012
Assembly Language Programming and Organization of the IBM PC,
Ytha Yu and Charles Marut
Assessment
method
Quiz
MID1
MID2
Lab attendance
&participation +
assessments
Final Lab
Final
Assessment
Week
Grade
Percentage from
overall grade
6
5
5%
7
10
10%
12
15
15%
After the end of
each chapter
15
15%
15
15%
40
40%


Part I : Computer organization
Part II: Assembly Language
Application (Netscape)
Software
Hardware
Operating System
Compiler
(Unix;
Assembler Windows 9x)
Processor Memory I/O system
Instruction Set
Architecture
Datapath & Control
Digital Design
Circuit Design
transistors, IC layout
CS 206 D

Explains how computers are designed and how does it work.

The components of a microcomputer system (Memory types, CPU, Buses,
I/O Ports).

Instruction Execution Cycle.

Microcomputer architecture.

Processor architecture – instruction types, register sets, addressing modes
and basic Instructions.

Introduction to the IBM PC assembly language (syntax, Variables..etc)

The Processor Status and the FLAGS Registers.

Flow Control Instructions.

Logic Shift and Rotate Instructions.

Multiplication and Division instructions.

Array and addressing Modes.
Machine Language
Language
Assembly Language
High-Level
Collection of binary
numbers encoded
Data and
instructions
Symbolic form of machine
language (i.e. symbolic
names are used to represent
operations, registers &
memory locations)
Combines algebraic
expressions & symbols taken
from English language
(ex. Pascal, COBOL
FORTRAN, …etc)
Ex.
Ex.
Ex.
10100001 00000000 00000000 MOV AX,A
00000101 00000100 00000000 ADD AX,4
10100011 00000000 00000000 MOV A,AX
A=A+ 4
Machine Language
Assembly Language
High-Level Language
Directly understood by a
computer
Assembler
converts to machine
language
Compiler (or interpreter)
converts to machine
language
1 assembly language
instruction = 1 machine
language instruction
1 HLL instruction = many
machine language
instructions
Not standard (i.e. different
assembly language for
every type of machine)
Standard (i.e. programs are
independent of the machine
on which they will be
executed)
Not standard (i.e. different
machine language for
every ISA for
Computer family)
Advantages of Assembly Language
• Performance:
• A well-written Assembly language program produces a faster,
shorter machine language program.
 For Some applications speed and size is critical
• Access to hardware:
•Some operations, such as reading or writing to specific
memory locations & I/O ports can be done easily in Assembly
but may be impossible by a higher level language.
• Studying ASM language gain a feeling of the way the computer
thinks and the ways that things are happen inside the computer.
Download