I usually regard any book titled like this with great caution. They are often confusing and badly written, or subtly condescending. Either way, I found them hard going, none giving me the basic understanding I needed to make a start on machine code.
Joe Pritchard is to be congratulated, therefore, on a book which really does start at the beginning. Not only that, he uses a very simple approach to give you a picture in your head of what's going on in the CPU and what it all means. You don't need to know about binary, hex or any of the other pitfalls before starting; Joe covers the lot with reference to counting on your fingers and toes!
You have all that you require to hand assemble simple programs for any Z80 based micro and more, because, using the published routines in the Amstrad firmware spec. you are shown how to build these into your own work. Interestingly, Joe also shows how machine language interfaces with and controls the hardware too.
Don't imagine, however, that you will sail through this in one night, then go on to write your own chart busting game. That would be too much to ask. Serious study is required, and at some point the purchase of an assembler will be useful. Even so, the first steps being the hardest, I would recommend this heartily as the best introduction I have yet to see.