Code Types
Machine Code
- Machine language instructions
- Directly control CPU
- Strictly numerical
- Lowest-level representation of a compiled or assembled program- Lowest-level visible to programmer
- Internally microcode might used
 
- Hardware dependent
- Higher-level languages translated to machine code- Compilers, assemblers and linkers
- Not for interpreted code- Interpreter runs machine code
 
 
- Assembly is effectively human readable machine code- Has mnemonics for opcodes etc
 
Microcode
- Layer between CPU hardware and instruction set architecture
- Normally written during design phase- Deployed to ROM or PLA- Programmable logic array
 
 
- Deployed to ROM or PLA
- Machine code often has some backward compatibility- Microcode is circuit specific
 
Byte Code
Portable Code
- Efficient execution by interpreter
- Compact numeric codes, constants and references- Encode compiler output following analysis and validation
 
- Can be further compiled
- Typically passed to VM- Java, Python #py
 
Object Code
- Product of compiler
- Sequence of statements- Machine code
- Intermediate- RTL
 
 
- Linked to form executable- Object code portion of machine code not yet linked