EC-10.1 The Hardware and Software Boundary
You can describe the instruction set as a contract, say what a processor is free to change without breaking it, explain who saves which register across a call, and place the compiler, the linker and the loader on the right side of the line.
Before:S5-2. Computer Architecture and MicroprocessorsUnlocks:S5-3. Digital Signal Processing
Computer organisation is often taught as one machine in detail, which leaves a reader unable to say which parts of what they learned were universal. This topic draws the line instead: the promise a processor makes to software, and the freedom it keeps underneath. Everything after it in this module lives on one side or the other of that line.
Work through these
The instruction set as a contract
The instruction set is the promise a processor makes to compiled code: these instructions, these registers, this behaviour. Two processors keeping the same promise run the same program however differently they are built.
NPTEL: Computer Architecture (IIT Delhi) · CourseWhat the hardware is free to change underneath
Pipeline depth, cache sizes, how many instructions start each cycle and the order they finish in are all invisible to correct software. That freedom is why one instruction set survives decades of redesign.
NPTEL: Computer Architecture (IIT Delhi) · CourseRegisters, memory and the cost of the gap between them
A register is read in a fraction of a cycle and main memory takes hundreds. Almost every performance idea in this module is an attempt to hide that gap rather than to close it.
NPTEL: Computer Architecture and Organization (IIT Kharagpur) · CourseThe calling convention, and who saves what
An agreement about which registers a called function may destroy, where arguments go and where the result comes back. It is not part of the hardware, which is why code from two compilers can still work together.
NPTEL: ARM Based Development (IIT Madras) · CoursePrivilege, and the two worlds a processor runs in
Some instructions and some memory are available only in a privileged mode. That single distinction is what lets an operating system keep one program from reading another's data.
NPTEL: Computer Architecture and Organization (IIT Kharagpur) · CourseWhere the compiler, the linker and the loader each stop
The compiler turns source into machine code with addresses unresolved, the linker fills them in and combines pieces, and the loader places the result in memory at run time. Knowing which one to suspect saves hours.
NPTEL: Computer Architecture and Organization (IIT Kharagpur) · Course
Sign in to keep your progress.
Free resources
We haven't checked most of these for screen reader use yet.
Links last checked 3 Sept 2026.
Stuck here?
Ask a mentor. A real person answers, and they can see exactly which topic you're on. Usually within a couple of working days.
Checking your session…
Topics shown in module order.