stem/CS/Code Types.md
andy 236a5eac06 vault backup: 2023-05-31 22:51:45
Affected files:
.obsidian/app.json
.obsidian/appearance.json
.obsidian/workspace.json
Money/Markets/Commodity.md
STEM/AI/Neural Networks/CNN/CNN.md
STEM/AI/Neural Networks/CNN/GAN/CycleGAN.md
STEM/AI/Neural Networks/CNN/GAN/DC-GAN.md
STEM/AI/Neural Networks/CNN/GAN/cGAN.md
STEM/AI/Neural Networks/CV/Data Manipulations.md
STEM/AI/Neural Networks/MLP/Back-Propagation.md
STEM/CS/Code Types.md
STEM/CS/Compilers.md
STEM/Quantum/Confinement.md
2023-05-31 22:51:45 +01:00

1.3 KiB

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
  • 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

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