For FASM related information I recommend this course:
Assembly Language Adventures: Complete Course on Udemy
The instructor is also preparing a course on reverse engineering x64 on linux.
The Intel manual volume one is giving pretty decent introduction into processor details. I grabbed the whole 5 volumes (4800 pages :-O )
Intel 64 and IA-32 Architectures Software Developers Manual
A more interactive site on x86 opcodes, registers, flags, instruction sets, etc.
x86 instruction set reference - another resource. Haven't used this as much though and just do CTRL+F on the Intel phone book :)
Difference between kernel space and user space in Linux. When I needed to search for how syscalls work in Linux
Found this quite useful when searching about MOVZSX and how stuff is stored in the registers and memory.
Data Types and Memory Allocation
On YouTube I found 2 resourceful that are quite good to get your feet wet.
The FASM one on linux fasm 0 - Introduction and the x86_64 Linux Assembly tutorial that is more focused on the concepts. He's using nasm here but useful nevertheless.
Also using a debugger like edb-debugger is necessary. On linux if you prefer the terminal but don't like gdb you can extend it with gef