Языки низкого уровня используются сейчас лишь для реализации специальных частей программ, в которых необходимо обеспечить наивысшую эффективность.
Машинные коды – набор двоичных данных (поскольку компьютеры – это двоичные машины, распознающие только нули и единицы). Программа представляет собой невероятно сложную структуру. Сейчас на машинных кодах практически не программируют.
Язык ассемблера – адаптированные версии машинных кодов под аппаратную платформу. Каждая архитектура имеет свою собственную версию ассемблера. Ассемблеры переводят программу на языке ассемблера в машинные коды. Сейчас эти языки используются только в мелких, но очень важных частях системы, в которых необходимо быстродействие.