- Turing model (Note: Mathematical model of computation)
- Data Processor (Note: Like a function)
- Programmable Data Processor
- The universal turing machine
- The Von Neumann Model
- concept: program state stored in memory, program stored as binary patterns
- 4 subsystems: Memory, Arithmatic logic unit, control unit, I/O
- Sequential Execution of Instructions
- Computer Components
- Hardware, Software and Data
- Programs (Note: Program made of a set of instructions.)
- Computer History
- Mechanical Machines (before 1930)
- Electronic Computers (1930–1950)
- Computer Generations (1950 – Present) + 5 generations
- Social and Ethical Issues
- What is Computer Science?
- Data Types (5 types of data)
- Data Inside the Computer
- Encode/Decode of Different Data Types
- Note: computer don't know what type of bit patterns is, It's the responsibility of I/O devices or programs
- Number Systems
- Positional Number Systems (Note: binary, octal, decimal, hexa)
- Non-positional Number Systems (Note: Roman number)
- Storing Numbers
- Storing Integers (Integer Representation)
- Unsigned
- Signed
- Sign and Magnitude
- One's Complement
- Two's Complement
- Storing Reals
- Floating Point Representation (Note: Sign, Shifter, Fixed-point number)
- Normalization (Note: 1.yyyyyy which y is 0 or 1)
- Excess System
- IEEE Standard (Note: Single Precision, Double Precision)
- Howto convert float to bit patterns
- The sign is positive or negative
- Decimal to binary transformation
- Normalization
- Exponent = power + bias
- The number is stored in the computer
- Storing Text
- ASCII (American Standard Code for Information Interchange)
- Extended ASCII
- EBCDIC (Extended Binary Coded Decimal Interchange Code)
- Unicode Standard
- Storing Audio
- Sampling and Quantization
- Encoding
- Sound Encoding Standards (Note: MP3 (short for MPEG Layer 3))
- Storing Images
- Images are stored using 2 different techniques
- Raster graphics (or bitmap graphics)
- Vector graphics
- Resolution
- Color Depth
- True-Color
- Indexed Color
- Image Encoding Standards
- JPEG (Joint Photographic Experts Group)
- GIF (Graphic Interchange Format)
- PNG (Portable Network Graphics)
- Raster Graphics vs. Vector Graphics
- Images are stored using 2 different techniques
- Storing Video
- Storing Integers (Integer Representation)
- Four Bit Level Operations
- NOT
- AND
- OR
- XOR
- Shift Operations (Note: move the bits in a pattern)
- Logical Shift Operations
- Logical Shift
- Logical Circular Shift
- Arithmetic Shift Operations
- Logical Shift Operations
- Arithmetic Operations
- Adding
- Subtracting
- Multiplying
- Dividing
- Addition of Reals
- Howto adding 2 real numbers
- De-normalize
- Aligning decimal points
- Add up
- Normalize
- Computer Hardware Subsystems
- Central Processing Unit (CPU)
- arithmetic logic unit (ALU)
- control unit
- registers
- Note: Data registers, Instruction register, Program counter
- Main Memory
- Address Space
- Memory Units
- Memory Types
- Random access memory (RAM)
- Static RAM (SRAM)
- Dynamic RAM (DRAM)
- Read-only memory (ROM)
- Programmable read-only memory (PROM).
- Erasable programmable read-only memory (EPROM).
- Electrically erasable programmable read-only memory (EEPROM).
- Random access memory (RAM)
- Memory Hierarchy
- Cache Memory
- Input Output Subsystem
- Non-storage devices (Note: Keyboard, monitor, printer)
- Storage devices
- Magnetic Disk
- Magnetic Tape
- Solid State Drives (SSD)
- Creation and Use of CD ROMs
- Making CD-R and CD-RW
- Subsystems Interconnection
- Connecting CPU and memory (Note: connecting by bus)
- Note: Data Bus, Address bus, Control bus
- Connecting I/O Devices
- I/O Controllers – SCSI Controller
- I/O Controllers – Firewire Controller
- I/O Controllers – USB Controller
- I/O Controller – SATA and Thunderbolt
- I/O Addressing
- Connecting CPU and memory (Note: connecting by bus)
- Central Processing Unit (CPU)
- Program Execution
- Note: Machine cycle (Fetch, Decode, Execute)
- I/O Operation
- Programmed I/O
- Interrupt driven I/O
- Direct memory access (DMA)
- Different Computer Architectures
- CISC (pronounced sisk) stands for complex instruction set computer.
- RISC (pronounced risk) stands for reduced instruction set computer.
- Pipelining Execution
- Parallel Execution
- SISD Organization
- SIMD Organization
- MISD Organization
- MIMD Organization
- Performance Evaluation
- Depending on the context (Short response time, High throughput, High availability, High bandwidth)
- SPEC (Standard Performance Evaluation Cooperative)
- Performance Metrics
- Clock rate
- MIPS (Millions Instructions per Second)
- FLOPS (Floating Point Operations per second) – Mega-, Giga-, TeraFLOPS
- Response time or Turnaround time
- Throughput
- Utilization
- Speedup
- Scalability
- Evaluation Techniques
- Analytical Modeling
- Simulation
- Measurement
too much topic. nice!