core Estimated learning time: 10 h

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) · Course
  • What 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) · Course
  • Registers, 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) · Course
  • The 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) · Course
  • Privilege, 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) · Course
  • Where 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

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.