DDCA Ch6 - Part 5: RISC-V Immediates (Constants)
Generating Constants
In this section, the video discusses generating constants, focusing on immediate operands and their significance in instructions.
Immediate Operands
- Immediate operands are constants available immediately as part of the instruction.
- Instructions like add can take a 12-bit immediate as part of the operation.
Handling Longer Constants
This segment delves into managing longer constants in RISC-V architecture.
Load Upper Immediate Instruction
- RISC-V offers a special instruction called load upper immediate for handling longer constants up to 32 bits.
- Load upper immediate places a 20-bit immediate in the upper bits and zeros in the lower bits, complemented by an add-i instruction to complete the value.
Sign Extension and Handling Negative Numbers
The discussion shifts towards sign extension and dealing with negative numbers in RISC-V instructions.
Sign Extension
- When using add-i with a 12-bit immediate, sign extension occurs where a most significant bit of '1' extends to create negative values.
- To load a constant that's 32 bits with the most significant bit set, incrementing the upper bits is necessary due to sign extension considerations.