Does FSH take the address from an FP register?
No. The address base comes from integer register rs1; FP register rs2 only supplies the data bit pattern to store.
Store a 16-bit half-precision bit pattern from an FP register to memory.
FSH uses the S-type STORE-FP encoding to store the low 16 half-precision floating-point bits from floating-point register f[rs2] to the effective address x[rs1] plus a signed 12-bit byte offset. The store writes the format-width bits and performs no FP rounding, format conversion, or NaN payload canonicalization. Atomicity of naturally aligned access follows the official Zfh rule, while misaligned access is constrained by the execution environment.
Shows the Zfh/Zfhmin-extension FP store flow: decode the S-type encoding, form the address from an integer base plus a 12-bit offset, and transfer a 16-bit FP bit pattern.
The word is split as a S-type instruction; FP memory access is not an OP-FP arithmetic encoding.
FSH stores only the low 16 half-precision bits from rs2 and performs no rounding, format conversion, or NaN canonicalization.
This animation shows only Zfh/Zfhmin-extension FP load/store ISA-visible address calculation and bit-pattern transfer; it does not model caches, buses, trap handlers, FPU pipelines, or microarchitectural timing.
FSH is the Zfh/Zfhmin half-precision floating-point store. It computes the address from an integer base and a 12-bit byte offset, then writes the 16-bit half-precision bit pattern from f[rs2] to memory; it is not an FP operation and has no rm rounding step.
Understand this scenario with real code like «fsh f10, 4(x11) ; store lower 16 bits of f10 to [x11+4]».
Understand this scenario with real code like «fsh f10, 4(x11) ; store lower 16 bits of f10 to [x11+4]».
No. The address base comes from integer register rs1; FP register rs2 only supplies the data bit pattern to store.
No. FSH is a bit-pattern store and performs no FP arithmetic or rounding, so it does not set floating-point exception flags by ISA-visible semantics.