17.40 LDRSB (immediate)

Load Register Signed Byte (immediate).

Syntax

LDRSB Wt, [Xn|SP], #simm ; 32-bit, Post-index

LDRSB Xt, [Xn|SP], #simm ; 64-bit, Post-index

LDRSB Wt, [Xn|SP, #simm]! ; 32-bit, Pre-index

LDRSB Xt, [Xn|SP, #simm]! ; 64-bit, Pre-index

LDRSB Wt, [Xn|SP{, #pimm}] ; 32-bit

LDRSB Xt, [Xn|SP{, #pimm}] ; 64-bit

Where:

Wt
Is the 32-bit name of the general-purpose register to be transferred.
simm
Is the signed immediate byte offset, in the range -256 to 255.
Xt
Is the 64-bit name of the general-purpose register to be transferred.
pimm
Is the optional positive immediate byte offset, in the range 0 to 4095, defaulting to 0.
Xn|SP
Is the 64-bit name of the general-purpose base register or stack pointer.

Usage

Load Register Signed Byte (immediate) loads a byte from memory, sign-extends it to either 32 bits or 64 bits, and writes the result to a register. The address that is used for the load is calculated from a base register and an immediate offset. For information about memory accesses, see Load/Store addressing modes in the Arm® Architecture Reference Manual Arm®v8, for Arm®v8‑A architecture profile.

Note:

For information about the constrained unpredictable behavior of this instruction, see Architectural Constraints on UNPREDICTABLE behaviors in the Arm® Architecture Reference Manual Arm®v8, for Arm®v8‑A architecture profile, and particularly LDRSB (immediate).
Non-ConfidentialPDF file icon PDF versionDUI0801J
Copyright © 2014–2017, 2019 Arm Limited or its affiliates. All rights reserved.