Есть несколько проблем, которые появляются на первый взгляд.
Во-первых, D = 5 не является допустимой операцией взлома.Если вы хотите загрузить 5 в D, вы должны сначала загрузить его в A, а затем перейти к D:
@5
D=A
Second,;является ограничителем перехода и должен сопровождаться условием перехода (например, JEQ или JMP для безусловного перехода).У вас есть несколько строк (включая строку 1), где у вас есть;но нет условия прыжка.Их следует удалить.
Наконец, вам, вероятно, следует просмотреть страницы книг по синтаксису языка ассемблера Hack, чтобы убедиться, что вы понимаете, как он работает.В частности, в приведенном выше коде вы не указали свои цели перехода, такие как END и LOOP.Это делается с помощью конструкции (LABEL).