Executando verificação de segurança...
1

C é baixo nível, mas é mais fácil e prático que assembly no geral.
Como C tem que ser portátil, você não escreve instruções de assembly diretamente, porque cada arquitetura vai ter suas próprias instruções.

Mas se você precisar, você pode escrever instruções de assembly no C.
Já vi fazerem isso em códigos de jogos de N64, onde a performance do código C não é suficiente. Exemplo:

__asm__("movl %edx, %eax");

Mas pensa o seguinte, o código do kernel Linux é majoritariamente feito em C, e kernels são coisas extremamente baixo nível.

Carregando publicação patrocinada...
1

Creio que houve outro comentário, com mais relevância que o meu, que explica o porquê de não ser baixo nível. Dei um exemplo de memória mais do que me lembrava mesmo