Lect01 Introduction
Lect01 Introduction
Introduction
From High-Level Languages to Computer Organisation
(AY2024/25 Semester 2)
Blended Learning Format
• Lecture slides and videos will be uploaded in advance.
• We have recitations every Monday face-to-face and over
Zoom (hybrid) to answer your questions and do additional
exercises.
• First meeting on 13 January 2025, 10am – 12nn.
• Hybrid: LT8 and Zoom
QnA website
Lecture #1: Introduction
1. Programming Languages
2. C Programming Language
3. Abstraction
4. So, What is a Computer?
5. Why Study Computer Organisation?
1. Programming Languages
Programming language: a formal language that
specifies a set of instructions for a computer to
implement specific algorithms to solve problems.
3. Abstraction (1/3)
High-level language
Level of abstraction closer to
problem domain
Provides productivity and
portability
Assembly language
Textual and symbolic
representation of instructions
Compiler
Assembler Operating System
Linker Loader Scheduler Device Drivers
Credit:
http://www.computer-hardware-explained.com/wh
at-is-a-motherboard.html
4. So, What is a Computer? (5/6)
Control Unit
Input Output
Device ALU Device
Memory Unit
CS2100
5. Why Study Computer Organisation?
(From user to builder)
You want to call yourself a computer scientist/specialist.
You want to build software people use.
You need to make purchasing decisions.
You need to offer “expert” advice.
Hardware and software affect performance
Algorithm determines number of source-level statements
(eg: CS1010, CS2030, CS2040, CS3230)
Language, compiler, and architecture determine machine
instructions (COD chapters 2 and 3)
Processor and memory determine how fast instructions are
executed (COD chapters 5, 6 and 7)
Understanding performance (COD chapter 4)
End of File