Абстрагирован ровно настолько насколько и высокоуровневые языки абстрагированы
На мой взгляд, разница принципиальная.
Ассемблер описан как-то так: "такая-то инструкия таким-то образом поменяет состояние процессора/чего-то еще"
Раст (будет) описан как-то так: "такая-то инструкция таким-то образом поменяет состояние Rust Abstract Machine".