I'm coming from a similar background and asked myself that exact question :)
These two books helped me much already:
Programming from the Ground Up by Jonathan Bartlett
- A very good introduction to assembly
Learning Computer Architecture with Raspberry Pi by Eben Upton
- Great read about the inner working of memory and the CPU, with reference to the past and how things developed
These two books helped me much already:
Programming from the Ground Up by Jonathan Bartlett - A very good introduction to assembly
Learning Computer Architecture with Raspberry Pi by Eben Upton - Great read about the inner working of memory and the CPU, with reference to the past and how things developed