Lisp objects are 32 bits long. They come in 32 basic types, divided into three classes: immediate data types, pointer types, and forwarding pointer types. The storage formats are as follows:
Immediate Data Types:
0 4 5 31 ------------------------------------------------------------------------ | Type Code (5) | Immediate Data (27) | ------------------------------------------------------------------------
Pointer and Forwarding Types:
0 4 5 6 7 29 31 ------------------------------------------------------------------------ | Type Code (5) | Space Code (2) | Pointer (23) | Unused (2) | ------------------------------------------------------------------------