Embedded System
Embedded System
Languages
Kavita S Bagewadi
1st Semister
VLSI And ES
There are 3 type of Languages:
1. Assembly Language
2. High Level Languages
3. Mixed Level Languages
1. Assembly Language:
‘machine language’
•‘machine language’ is a processor understandable language
• Machine language is a binary representation and it consists of
1s and 0s
• Assembly language programming is the process of writing
Drawbacks:
• High Development time
• Developer Dependency
• Non-Portable
2. High Level Language:
• The embedded firmware is written in only high level
languages like C, C++
• A software utility called ‘cross-compiler’ converts the high
level language to target processor specific machine code
• The cross-compilation of each module generates a
corresponding object file.
• The object file does not contain the absolute address of
where the generated code needs to be placed(a re-locatable
code) on the program memory.
• The software program called ‘Object to Hex file converter’
translates the absolute object file to corresponding hex
file(binary file)
• Compiler:
Translates program for same hardware/platform/machine
on it is running.
• Cross-Compiler:
Translates program for different hardware/
platform/machine other than the platform which it is running.
Advantages :
• Reduced Development time
• Developer Independency
• Portability
Limitations :
• Some cross-compilers available for high level languages may
not be so efficient in generating optimized target processor
specific instructions.
• Such compilers may be messy and non-optimized in terms of
performance as well as code size.
3. Mixing Assembly and High level language: