RISC-V: Immediate Encoding Variants : <p>In the  RISC-V Instruction Set Manual, User-Level ISA, I couldn't understand section 2.3 Immediate Encoding Variants page 11.</p>

<p>There is four types of instruction formats R, I, S, and U, then there is a variants of S and U types which are SB and UJ which I suppose mean Branch and Jump as shown in figure 2.3. Then there is the types of Immediate produced by RISC-V instructions shown in figure 2.4.</p>

<p>So my questions are, why the SB and UJ are needed? and why shuffle the Immediate bits in that way? what does it mean to say "the Immediate produced by RISC-V instructions"? and how are they produced in this manner?</p>

<p><a href="https://i.stack.imgur.com/Gkjuc.png" rel="noreferrer"><img src="https://i.stack.imgur.com/Gkjuc.png" alt="enter image description here"></a></p>

<p><a href="https://i.stack.imgur.com/IlZmZ.png" rel="noreferrer"><img src="https://i.stack.imgur.com/IlZmZ.png" alt="enter image description here"></a></p>
