6.3 Memory addressing and allocation