Princes Nora Bint Abdul Rahman University Dept of
Princes Nora Bint Abdul Rahman University Dept. of Computer & Information Sciences CS 206 D Computer Organization Course Introduction
Course Introduction Lecturer: Yasmeen Albarrak � Office: 2. 505. 21 � e-mail: ysalbarrak@pnu. edu. sa � Credit Hours: 3 � Course web site: https: //pnucs 206. wordpress. com/lectures-slides/ �
References � � “ Computer Architecture: A Quantitative Approach”, 4 th Edition John Hennessy, David Patterson. Assembly Language for x 86 Processors , 6 th edition, by Kip R. Irvine, Prentice Hall, 2012 Assembly Language Programming and Organization of the IBM PC, Ytha Yu and Charles Marut
Course Assessment method Quiz MID 1 MID 2 Lab attendance &participation + assessments Final Lab Final Assessment Week Grade Percentage from overall grade 6 5 5% 7 10 10% 12 15 15% 40 40% After the end of each chapter
Course Outline � � Part I : Computer organization Part II: Assembly Language Application (Netscape) Software Hardware Operating System Compiler (Unix; Assembler Windows 9 x) Processor Memory I/O system Instruction Set Architecture Datapath & Control Digital Design Circuit Design transistors, IC layout CS 206 D
Part I: Computer organization � 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.
Part II: Assembly Language � 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.
Computer languages Machine Language Assembly Language High-Level Language 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. 10100001 00000000101 00000100 0000 10100011 00000000 MOV AX, A ADD AX, 4 MOV A, AX A=A+4
Computer languages 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.
- Slides: 10