1
0
mirror of https://github.com/Interlisp/maiko.git synced 2026-03-08 03:29:33 +00:00

Add documentation of NEWCDRCODING cdr codes

This commit is contained in:
Nick Briggs
2020-09-16 15:12:58 -07:00
parent b68ecc73b9
commit ce28b0da56

16
NEWCDRCODING.md Normal file
View File

@@ -0,0 +1,16 @@
The cdr-code is a 4-bit field of a 32-bit cons cell.
It is treated as an on-page indicator bit and a 3-bit scaled offset.
Certain combinations are treated specially.
on-page| offset | interpretation
-------|--------|----------------------------------------------------------------------------
1 | 0 | CDR is NIL
1 | 1 - 7 | CDR is at 2*offset (counted in 32-bit cells) on same page
0 | 0 | CDR is indirect, CDR(car)
0 | 1 - 7 | CDR is not a cons cell but is in the car of cell at 2*offset on same page
-------|--------|----------------------------------------------------------------------------