Знаком ваш интерес, поэтому отвечу именно на теоретическую часть, не обсуждая "надо ли".
Самый простой способ (на мой взгляд): напишите свой компилятор, который будет формировать машинные коды команд под конкретный процессор. У каждой команды ассемблера есть свой машинный код, гуглится легко. Вам нужно просто их генерировать.
Дальше в зависимости от целевой платформы; познакомиться со структурой исполнимого файла или алгоритмом работы загрузчика, если хотите написать сразу под BIOS