STRH
Store 16 bits
Store values through a 64-bit base address, with the selected byte offset and writeback behavior.
| Form | Bits | Requires | Encoding |
|---|---|---|---|
STRH Wt, [Xn|SP{, #offset}] | 32 | Armv8-A | 0111100100xxxxxxxxxxxxxxxxxxxxxx |
Operation#
Pseudo-C · selected form
old_base = base
address = (old_base + offset) mod 2^64
Store16(address, low_16_bits(Rt))What to watch for
- The base is X0–X30 or SP. The data register may be ZR; loads to ZR still access memory, and stores from ZR supply zero.
- The operation describes successful ordinary accesses. Data endianness, translation, permissions, alignment and applicable tag checks still apply. No acquire/release ordering is implied.
Architectural details#
- Flags
- NZCV unchanged.
- Destination
- Writes 2 bytes of memory. No base writeback.
- Encoding
0111100100xxxxxxxxxxxxxxxxxxxxxx- Operands
Wtread · 32 bitsXn|SPread · 64 bitsoffsetreadmemory at addresswrite · 16 bits
- Coverage
- Selected general-register memory forms with explicitly shown widths and addressing. Register-offset, literal, exclusive, acquire/release and vector forms are outside this selection.
- offset
- 0 to 8190, in steps of 2.
Exception information & execution requirements
Complete exception conditions have not been imported.
MRS supplies encoding and availability conditions, not an exhaustive exception model.
Feature availability alone does not guarantee execution: OS state and execution-level controls also apply. Use the linked architecture documentation for the full exception conditions.
Sources & provenance#
Technical fields are imported from pinned upstream files. Explanations and explorer behavior are maintained separately.
Architectural references for this form
Arm · aarchmrs
- Revision
2026-03_rel- SHA-256
bf355d263eed08ef6b3e4e680e6bba3642fa7c3dd0be77ffb4783420041a0860- Terms
- BSD-3-Clause