MemorySizeInfo¶
- class iced_x86.MemorySizeInfo(memory_size)¶
MemorySizeenum info, see alsoMemorySizeExt- Parameters:
memory_size (
MemorySize) – Enum value
Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.size == 32
- element_count¶
(
u32) Gets the number of elements in the packed data type or 1 if it’s not packed data (MemorySizeInfo.is_packed)Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert info.element_count == 1 info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.element_count == 16 info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert info.element_count == 1
- Type:
- element_size¶
(
u32) Gets the size in bytes of the packed element. If it’s not a packed data type, it’s equal toMemorySizeInfo.size.Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert info.element_size == 4 info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.element_size == 2 info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert info.element_size == 8
- Type:
- element_type¶
Gets the element type if it’s packed data or the type itself if it’s not packed data
Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert info.element_type == MemorySize.UINT32 info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.element_type == MemorySize.UINT16 info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert info.element_type == MemorySize.UINT64
- Type:
- element_type_info¶
Gets the element type if it’s packed data or the type itself if it’s not packed data
Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32).element_type_info assert info.memory_size == MemorySize.UINT32 info = MemorySizeInfo(MemorySize.PACKED256_UINT16).element_type_info assert info.memory_size == MemorySize.UINT16 info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64).element_type_info assert info.memory_size == MemorySize.UINT64
- Type:
- is_broadcast¶
Trueif it’s a broadcast memory typeExamples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert not info.is_broadcast info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert not info.is_broadcast info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert info.is_broadcast
- Type:
- is_packed¶
Trueif this is a packed data type, eg.MemorySize.PACKED128_FLOAT32. See alsoMemorySizeInfo.element_countExamples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert not info.is_packed info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.is_packed info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert not info.is_packed
- Type:
- is_signed¶
Trueif it’s signed data (signed integer or a floating point value)Examples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert not info.is_signed info = MemorySizeInfo(MemorySize.INT32) assert info.is_signed info = MemorySizeInfo(MemorySize.FLOAT64) assert info.is_signed
- Type:
- memory_size¶
Gets the
MemorySizevalueExamples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.memory_size == MemorySize.PACKED256_UINT16
- Type:
- size¶
(
u32) Gets the size in bytes of the memory location or 0 if it’s not accessed or unknownExamples:
from iced_x86 import * info = MemorySizeInfo(MemorySize.UINT32) assert info.size == 4 info = MemorySizeInfo(MemorySize.PACKED256_UINT16) assert info.size == 32 info = MemorySizeInfo(MemorySize.BROADCAST512_UINT64) assert info.size == 8
- Type: