Cразу уточню, нужны современные знания, а не для 16битных системах.
В общем нужно понимания устройств построения компиляторов, понятия различий написания для разных ОС и машин. Желательно fasm.
Нужно компилятор реализовать,
И нужно реализовать такие объекты out, in, socket, innetAddress, file, for, if else . Особенно первые 3, чтение запись и сокеты.
Я вас расстрою, но их просто нет. Обычно задачи такого уровня решают люди, способные читать спецификацию CPU и исходники ядра операционной системы, им не нужны учебники.
Само применения ассемблера на современных платформах, без "понимания устройств построения компиляторов", можете попробовать почерпнуть из Jeff Duntemann "Assembly Language Step-by-Step Programming with Linux" и Ray Seyfarth "Introduction to 64-bit Windows Assembly Programming".