An x86-64 register.

Namespace: SharpAssembler.x86
Assembly: SharpAssembler x86-64 (in SharpAssembler x86-64.dll) Version: 1.0.0.0 (1.0.0.0)

Syntax

C#
public enum Register
Visual Basic
Public Enumeration Register
Visual C++
public enum class Register

Members

Member nameValueDescription
None0 No register.
AL8224 The lower 8-bits of the accumulator register.
AX8256 The lower 16-bits of the accumulator register.
EAX8320 The lower 32-bits of the accumulator register.
RAX8448 The lower 64-bits of the accumulator register.
MM033024 The first 64-bit SIMD register.
XMM066048 The first 128-bit SIMD register.
ES131136 The extra segment register.
CR0262272 The first control register.
DR0524416 The first debug register.
ST016704 The floating point stack register index 0.
CL8225 The lower 8-bits of the counter register.
CX8257 The lower 16-bits of the counter register.
ECX8321 The lower 32-bits of the counter register.
RCX8449 The lower 64-bits of the counter register.
MM133025 The second 64-bit SIMD register.
XMM166049 The second 128-bit SIMD register.
CS131137 The code segment register.
CR1262273 The second control register.
DR1524417 The second debug register.
ST116705 The floating point stack register index 1.
DL8226 The lower 8-bits of the data register.
DX8258 The lower 16-bits of the data register.
EDX8322 The lower 32-bits of the data register.
RDX8450 The lower 64-bits of the data register.
MM233026 The third 64-bit SIMD register.
XMM266050 The third 128-bit SIMD register.
SS131138 The stack segment register.
CR2262274 The third control register.
DR2524418 The third debug register.
ST216706 The floating point stack register index 2.
BL8227 The lower 8-bits of the base register.
BX8259 The lower 16-bits of the base register.
EBX8323 The lower 32-bits of the base register.
RBX8451 The lower 64-bits of the base register.
MM333027 The fourth 64-bit SIMD register.
XMM366051 The fourth 128-bit SIMD register.
DS131139 The data segment register.
CR3262275 The fourth control register.
DR3524419 The fourth debug register.
ST316707 The floating point stack register index 3.
AH8228 The higher 8-bits of the lower 16-bits of the accumulator register.
SPL8244 The lower 8-bits of the stack pointer register.
SP8260 The lower 16-bits of the stack pointer register.
ESP8324 The lower 32-bits of the stack pointer register.
RSP8452 The lower 64-bits of the stack pointer register.
MM433028 The fifth 64-bit SIMD register.
XMM466052 The fifth 128-bit SIMD register.
FS131140 The second extra segment register.
CR4262276 The fifth control register.
DR4524420 The fifth debug register.
ST416708 The floating point stack register index 4.
CH8229 The higher 8-bits of the lower 16-bits of the counter register.
BPL8245 The lower 8-bits of the base pointer register.
BP8261 The lower 16-bits of the base pointer register.
EBP8325 The lower 32-bits of the base pointer register.
RBP8453 The lower 64-bits of the base pointer register.
MM533029 The sixth 64-bit SIMD register.
XMM566053 The sixth 128-bit SIMD register.
GS131141 The third extra segment register.
CR5262277 The sixth control register.
DR5524421 The sixth debug register.
ST516709 The floating point stack register index 5.
DH8230 The higher 8-bits of the lower 16-bits of the data register.
SIL8246 The lower 8-bits of the source index register.
SI8262 The lower 16-bits of the source index register.
ESI8326 The lower 32-bits of the source index register.
RSI8454 The lower 64-bits of the source index register.
MM633030 The seventh 64-bit SIMD register.
XMM666054 The seventh 128-bit SIMD register.
CR6262278 The seventh control register.
DR6524422 The seventh debug register.
ST616710 The floating point stack register index 6.
BH8231 The higher 8-bits of the lower 16-bits of the base register.
DIL8247 The lower 8-bits of the destination index register.
DI8263 The lower 16-bits of the destination index register.
EDI8327 The lower 32-bits of the destination index register.
RDI8455 The lower 64-bits of the destination index register.
MM733031 The eighth 64-bit SIMD register.
XMM766055 The eighth 128-bit SIMD register.
CR7262279 The eighth control register.
DR7524423 The eighth debug register.
ST716711 The floating point stack register index 7.
R8L8232 The lower 8-bits of the nineth general purpose register.
R8W8264 The lower 16-bits of the nineth general purpose register.
R8D8328 The lower 32-bits of the nineth general purpose register.
R88456 The lower 64-bits of the nineth general purpose register.
XMM866056 The nineth 128-bit SIMD register.
CR8262280 The nineth control register.
DR8524424 The nineth debug register.
R9L8233 The lower 8-bits of the tenth general purpose register.
R9W8265 The lower 16-bits of the tenth general purpose register.
R9D8329 The lower 32-bits of the tenth general purpose register.
R98457 The lower 64-bits of the tenth general purpose register.
XMM966057 The tenth 128-bit SIMD register.
CR9262281 The tenth control register.
DR9524425 The tenth debug register.
R10L8234 The lower 8-bits of the eleventh general purpose register.
R10W8266 The lower 16-bits of the eleventh general purpose register.
R10D8330 The lower 32-bits of the eleventh general purpose register.
R108458 The lower 64-bits of the eleventh general purpose register.
XMM1066058 The eleventh 128-bit SIMD register.
CR10262282 The eleventh control register.
DR10524426 The eleventh debug register.
R11L8235 The lower 8-bits of the twelfth general purpose register.
R11W8267 The lower 16-bits of the twelfth general purpose register.
R11D8331 The lower 32-bits of the twelfth general purpose register.
R118459 The lower 64-bits of the twelfth general purpose register.
XMM1166059 The twelfth 128-bit SIMD register.
CR11262283 The twelfth control register.
DR11524427 The twelfth debug register.
R12L8236 The lower 8-bits of the thirteenth general purpose register.
R12W8268 The lower 16-bits of the thirteenth general purpose register.
R12D8332 The lower 32-bits of the thirteenth general purpose register.
R128460 The lower 64-bits of the thirteenth general purpose register.
XMM1266060 The thirteenth 128-bit SIMD register.
CR12262284 The thirteenth control register.
DR12524428 The thirteenth debug register.
R13L8237 The lower 8-bits of the fourteenth general purpose register.
R13W8269 The lower 16-bits of the fourteenth general purpose register.
R13D8333 The lower 32-bits of the fourteenth general purpose register.
R138461 The lower 64-bits of the fourteenth general purpose register.
XMM1366061 The fourteenth 128-bit SIMD register.
CR13262285 The fourteenth control register.
DR13524429 The fourteenth debug register.
R14L8238 The lower 8-bits of the fifteenth general purpose register.
R14W8270 The lower 16-bits of the fifteenth general purpose register.
R14D8334 The lower 32-bits of the fifteenth general purpose register.
R148462 The lower 64-bits of the fifteenth general purpose register.
XMM1466062 The fifteenth 128-bit SIMD register.
CR14262286 The fifteenth control register.
DR14524430 The fifteenth debug register.
R15L8239 The lower 8-bits of the sixteenth general purpose register.
R15W8271 The lower 16-bits of the sixteenth general purpose register.
R15D8335 The lower 32-bits of the sixteenth general purpose register.
R158463 The lower 64-bits of the sixteenth general purpose register.
XMM1566063 The sixteenth 128-bit SIMD register.
CR15262287 The sixteenth control register.
DR15524431 The sixteenth debug register.
GetRegisterType Returns the register type of the specified register.
GetValue Returns the value of the specified register.
GetSize Returns the register size of the specified register.
IsGeneralPurposeRegister Returns whether the register is a general purpose register.
IsControlRegister Returns whether the register is a control register.
IsDebugRegister Returns whether the register is a debug register.
IsFloatingPointRegister Returns whether the register is an x87 floating-point register.
IsSegmentRegister Returns whether the register is a segment register.
IsSimdRegister Returns whether the register is a SIMD register.

Remarks

OperationResult
value & 0x7The value of the register.
value & 0x8A value of 1 when REX.b, REX.r or REX.x is set; otherwise, 0.
value & 0x10A value of 1 when a REX prefix is required; otherwise, 0.
value >> 5The RegisterType of the register.
(value >> 5) & 0xFFThe number of bytes required for this type of register.
(value >> 5) & 0xFFThe DataSize of this register.

See Also