Before we write code, we must understand the machine. From basic logic gates to complex architectures.
The building blocks of everything we do.
The Exclusive OR (XOR) is critical in assembly for toggling bits and comparing values.
Output is 1 only if inputs are different.
| Input A | Input B | Output (A^B) |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
Embedded systems live in Hexadecimal.
In code, we see 0 and 1. In the real world, these are voltage levels.
Between HIGH and LOW lies the dangerous "Undefined Region" (Noise Margin).
It is a computing system dedicated to a specific task within a larger system. Unlike a PC (General Purpose), an embedded system does one thing, and does it efficiently.
From the first chips to modern microcontrollers.
Intel 4004 & TI TMS1000. The first "computers on a chip".
More peripherals (ADC, UART). 8-bit dominates (8051, PIC).
16/32-bit (MSP430, ARM). Low Power for battery devices.
CPU only. Needs external RAM, Flash, I/O.
CPU + RAM + FRAM + Peripherals in one chip.
CPU + GPU + Radio + DSP. Extreme integration.
How does the CPU fetch Data and Instructions?
Used by MSP430. Simpler, flexible, but creates a "Bottleneck".
Separate paths allow simultaneous access. Faster, but more complex.
Why did we choose this specific chip for the course?
8-bit is too limiting. 32-bit is complex. 16-bit is perfect for learning: clean architecture, powerful enough for math, simple enough to understand every bit.
Designed to run on batteries for years. It has sophisticated Low Power Modes (LPM) that we will master.
It's not just a CPU. It includes Timers, ADCs, and Communication modules on-chip. Real-world capabilities.