reven2.address.LinearAddress(_AbstractAddress)
class documentationreven2.address
(View In Hierarchy)
Representation of a linear address.
>>> addr = address.LinearAddress(0xfffff800c99455b0L) >>> hex(addr.offset) '0xfffff800c99455b0L' >>> print(addr) lin:0xfffff800c99455b0
Method | __init__ | Initializes a LinearAddress from an offset. |
Method | translate | Translates this virtual address to a physical address, if it is mapped at the specified context. |
Method | __repr__ | Undocumented |
Method | __str__ | Undocumented |
Method | _pack | Pack a LinearAddress to its high level representation
(reven_api.VirtualAddress ). |
Method | _is_comparable | Whether two address objects are comparable or not. |
Inherited from _AbstractAddress:
Method | offset | Property: The offset of the address. |
Method | __eq__ | Undocumented |
Method | __ne__ | Undocumented |
Method | __lt__ | Undocumented |
Method | __le__ | Undocumented |
Method | __gt__ | Undocumented |
Method | __ge__ | Undocumented |
Method | __iadd__ | Undocumented |
Method | __isub__ | Undocumented |
Method | __add__ | Undocumented |
Method | __sub__ | Undocumented |
Static Method | _unpack_segment_register | Undocumented |
Static Method | _unpack | Unpack a low level representation of an address to its high level representation. |
Initializes a LinearAddress
from an offset.
>>> print(address.LinearAddress(0x10)) lin:0x10 >>> print(address.LinearAddress(256)) lin:0x100 >>> print(address.LinearAddress(0xfffff800c99455b0L)) lin:0xfffff800c99455b0
Parameters | offset | The offset of the linear address. (type: integer ) |
Raises | TypeError | if `offset` is not an integer . |
ValueError | if `offset` can not be converted to an integer . |
Translates this virtual address to a physical address, if it is mapped at the specified context.
Parameters | context | The reven2.trace.Context at
which the translation should be attempted |
Returns | A PhysicalAddress
if the current virtual address is mapped at the specified context,
otherwise None |