On Tue, Mar 07, 2017 at 04:32:34PM -0800, Ricardo Neri wrote:
Even though memory addresses are unsigned. The operands used to compute the
... unsigned, the operands ...
effective address do have a sign. This is true for the r/m part of the ModRM byte, the base and index parts of the SiB byte as well as the displacement. Thus, signed variables shall be used when computing the effective address from these operands. Once the signed effective address has been computed, it is casted to an unsigned long to determine the linear address.
Variables are renamed to better reflect the type of address being computed.