140 likes | 157 Views
COE 205 - 3 Computer Organization & Assembly Language. Talal Alkharobi. COE 205 section 3. Term 042 (2005) TIME SMW 1:10 PM – 2:00 PM Location 24-133. Instructor. Dr. Talal Alkharobi E-mail talal@ccse.kfupm.edu.sa Web http://www.ccse.kfupm.edu.sa/~talal Office 22-326
E N D
COE 205 - 3Computer Organization & Assembly Language Talal Alkharobi
COE 205 section 3 • Term 042 (2005) • TIME SMW 1:10 PM – 2:00 PM • Location 24-133 COE 205 Dr.Talal AlKharobi
Instructor • Dr. Talal Alkharobi • E-mail talal@ccse.kfupm.edu.sa • Web http://www.ccse.kfupm.edu.sa/~talal • Office 22-326 • Phone 2897 • Office Hours TBA COE 205 Dr.Talal AlKharobi
COE 205 • Corequisite: COE 200 • Textbook: Introduction to Assembly Language Programming: From 8086 to Pentium ProcessorsSivarama P. Dandamudi, , Springer, 1998. Computer Systems Design and Architecture Vincent P. Heuring & Harry F. Jordan, , Addison Wesley, 1997. • Online Material: http://assembly.pc.ccse.kfupm.edu.sa COE 205 Dr.Talal AlKharobi
Course outline • Introduction to Computer Organization & Assembly 1 Week • Review of Internal Data Representation 1 Week • Assembly Language Concepts 2 Weeks • Assembly Language Instructions 2 Weeks • Assembly Language Programming 2 Weeks • Procedures and the Stack 2 Weeks • Interrupts and I/O 2 weeks • Processor and Control Unit Design 3 Weeks COE 205 Dr.Talal AlKharobi
(1) Introduction • Assembly language versus high level language programming • Basic Components: • processor, • memory, • bus, • input and output devices COE 205 Dr.Talal AlKharobi
(2) Review of Internal Data Representation • Integer representation • Unsigned integers • Signed integer • Integer arithmetic • carry • overflow • Character representation COE 205 Dr.Talal AlKharobi
(3) Assembly Language Concepts • Program structure • Statements • Directives • Instructions • Variable and array declarations • Constant definitions • I/O using interrupt 21H • Memory segmentation • Logical and physical addresses • Intel x86 16-bit and 32-bit registers and architectures • Instruction formats • Opcodes and operands • Addressing modes COE 205 Dr.Talal AlKharobi
(4) Assembly Language Instructions • Data movement instructions • Arithmetic instructions and flags • Logical and bit manipulating operations • Flow control • Compare • Jump • Loop COE 205 Dr.Talal AlKharobi
(5) Assembly Language Programming • Implementing conditional statements and loops in assembly language • Pentium Memory Addressing Modes • Traversing and processing arrays • String processing COE 205 Dr.Talal AlKharobi
(6) Procedures and the Stack • Stacks • Pentium implementation of the stack • Stack operations • Procedures • Writing procedures • calling and returning from a procedure • Parameter passing • Local variables • Macros COE 205 Dr.Talal AlKharobi
(7) Interrupts and I/O • Interrupts • Types • Software • Hardware • processor interrupts • Interrupt processing • I/O • I/O instructions • Peripheral support chips • Direct Memory Access (DMA) COE 205 Dr.Talal AlKharobi
(8) Processor and Control Unit Design • Register transfer • Data-path design • Bus organization • 1, 2 & 3 bus organizations • performance considerations. • Fetch and execute control sequences at the register transfer level, • Control Unit design • Hardwired control unit design, • Microprogrammed control unit: • horizontal microprogramming • vertical microprogramming • Instructions sets design and formats COE 205 Dr.Talal AlKharobi
Grading Policy • Homework: 5% Online submission is required (WebCT) • Programming Assignments 10% Demonstration may be required • Quizzes: 10% Pop quizzes. be ready every class • Major Exam I: 20%Thursday March 24th 9:30am • Major Exam II: 20%Thursday May 12th 9:30am • Final Exam: 20%TBA • LAB 20% Subject to normalization 105% COE 205 Dr.Talal AlKharobi