Cell Type Type

A cell type denotes the possible ways a cell's value can be represented within a Map or Categorical Map.

Cell Type Domain Cell Size Signed Minimum Value Maximum Value Default Null
1 Bit Integer Integer (whole numbers only) 1 bit No (non-negative values only) 0 1 0
Signed 8 Bit Integer 1 byte Yes (positive and negative values) -128 127 -128
Unsigned 8 Bit Integer 1 byte No (non-negative values only) 0 255 0
Signed 16 Bit Integer 2 bytes Yes (positive and negative values) -32768 32767 -32768
Unsigned 16 Bit Integer 2 bytes No (non-negative values only) 0 65535 0
Signed 32 Bit Integer 4 bytes Yes (positive and negative values) -2147483648 2147483647 -2147483648
Unsigned 32 Bit Integer 4 bytes No (non-negative values only) 0 4294967295 0
IEEE 754 32 Bit Real Real (fractional and whole numbers) 4 bytes Yes (positive and negative values) -3.4028235*1038 3.4028235*1038 -9999
IEEE 754 64 Bit Real Real (fractional and whole numbers) 8 bytes Yes (positive and negative values) -2.2250738585072014*10308 2.2250738585072014*10308 -9999

Both real cell types have limited precision: IEEE 754 32 Bit Real usually preserves only about 7 significant digits, and IEEE 754 64 Bit Real about 16.

A cell type value can also be created from integral values, such as Integer Value, Positive Integer Value, and Non Negative Integer Value, and from real values, such as Real Value. The mapping between numeric values and their corresponding cell type values is shown below:

Numeric Value Cell Type
0 1 Bit Integer
1 Signed 8 Bit Integer
2 Unsigned 8 Bit Integer
3 Signed 16 Bit Integer
4 Unsigned 16 Bit Integer
5 Signed 32 Bit Integer
6 Unsigned 32 Bit Integer
7 IEEE 754 32 Bit Real
8 IEEE 754 64 Bit Real

Defining a map with the 1 Bit Integer cell type saves memory, but at a significant cost to performance. Conversely, IEEE 754 64 Bit Real uses far more memory than any other cell type.

GUI Editor

Graphical representation of the cell type editor

EGO Script

A cell type constant can be represented in EGO Script — see Constants — using the following syntax:

Cell Type Representation
1 Bit Integer .uint1
Signed 8 Bit Integer .int8
Unsigned 8 Bit Integer .uint8
Signed 16 Bit Integer .int16
Unsigned 16 Bit Integer .uint16
Signed 32 Bit Integer .int32
Unsigned 32 Bit Integer .uint32
IEEE 754 32 Bit Real .float32
IEEE 754 64 Bit Real .float64

Automatic Conversions

See Type System for the complete conversion reference across all types.