Se proprio muori dalla voglia di creare un inutile programma avviabile al boot, scarica un tool come
Rufus che fa da solo tutto ciò che dovreti studiare un paio d'anni per fare, poi butta via Nasm e GCC, scarica
FreeDOS e usa il compilatore a 16 bit ivi incluso per creare un'applicazione DOS pura, che infine avvierai senza problemi sul thumb drive USB formattato FreeDOS, dentro il classico autoexec.bat.
Così avrai fatto il tuo clone dei poveri di UBCD, Hiren e quant'altri che funzionano esattamente col medesimo principio, caricando al bisogno un FreeDOS o un kernel linux per eseguire determinate utilities general purpose o legacy (tipicamente quelle che un tempo si lanciavano facendo partire il sistema da floppy avviabile), in alternativa ad altri software scritti esplicitamente per essere caricati pre-OS o senza OS anche sfruttando le nuove estensioni EFI/UEFI. Software che, ancora per lungo tempo, sono molto al di là delle tue capacità: e certamente non imparerai a scriverli seguendo sgangherati tutorial online scritti de gente che conosce la materia più o meno quanto te.