Недостатки языка ассемблера

· В силу своей машинной ориентации («низкого» уровня) человеку по сравнению с языками программирования высокого уровня сложнее читать и понимать программу, она состоит из слишком «мелких» элементов — машинных команд, соответственно усложняются программирование и отладка, растет трудоемкость, велика вероятность внесения ошибок. В значительной степени возрастает сложность совместной разработки.

· Как правило, меньшее количество доступных библиотек по сравнению с современными индустриальными языками программирования.

· Отсутствует переносимость программ на ЭВМ с другой архитектурой и системой команд (кроме двоично совместимых).