There are a number of language is available for embedded system namely C, C++, Assembly, ADA.
Choosing a language for a particular project depends on requirement like that to what type of hardware is being targeted, cost etc.
Development using Assembly language rotates around processor architecture.
C language provides low level language features, it can interact hardware directly as well as high level. It is easy to get C programmer easily so it is another factor for choosing a language.
C++ provides additional object oriented features like data abstraction.