Doubts with sidt instruction.
Hi Friends! I have a doubt with the sidt instruction. The Intel documentation for “SIDT m”
stated:
Stores the content of the IDTR in the destination
operand. The destination operand specifies a 6-byte memory location.
If the operand-size attribute is 32 bits, the 16-bit limit field of
the register is stored in the low 2 bytes of the memory location and the 32-bit base address is stored in the high 4 bytes.
DEST[0:15] <- IDTR(Limit);
DEST[16:47] <- IDTR(Base); (* Full 32-bit base address stored *)
I don't understand why they talk about operand-size attribute of 32 bits, when they say that the destination specifies a 6-byte (48 bits ) memory location. Can someone explain me this??
I am new with assembly code. Thank you very much!!!