Skip to main content

Computer Architecture · Datapath and control implementation

A J-type jump instruction has the 32-bit encoding `0x0810000F`

Problem

A J-type jump instruction has the 32-bit encoding `0x0810000F`. Fields are opcode[31:26] \(=000010\) and addr[25:0] \(=\) the remaining bits. The jump target is formed as \(\{\,(\mathrm{PC}+4)[31:28],\,\mathrm{addr}[25:0],\,2'b00\,\}\). The instruction is fetched from address `0x00400000`. Compute \(\mathrm{PC}+4\), extract addr[25:0], and compute the 32-bit jump target in hexadecimal. Then prove that this concatenation always produces a word-aligned address.

Hint

The 26-bit jump field is *not* a complete 32-bit address; it is the middle field of a concatenation.

Check your work

Work the problem yourself first. Then open it in Training to check your answer and read the full worked solution.

The answer check and full solution for this problem come with ProofAnvil Practice membership ($19 USD monthly). See membership. Or start with the free Computer Architecture sample problem: Try the free sample problem.

More Computer Architecture practice problems