Back to Software
Programming refers to the process of authoring software to run on a hardware device. Most often this device is some form of microprocessor or CPU which accepts instructions, or opcodes, in a binary form. Different opcodes represent differing operations such as arithmetic addition and multiplication, logical xor, and, or, branch instruction such as compare and jump. Each microprocessor architecture be it x86, PowerPC, SH4, ARM, etc have different binary sequences for each opcode, however most architectures posess similar basis instruction to each other.
In order to program a CPU one must provide it an ordered sequence of opcodes which represent the desired sequence of instructions to be performed. It would be impractical to manually enter these opcodes in Hexidecimal format thus a language called Assembly is used. Assembly in its most basic form is a textual representation of a CPU's binary opcodes, it is the most low level language available.
Application Development Languages
Web Scripting Languages
General Scripting Languages
Database Query Languages
4th Generation Languages
See also the Programming Interfaces / Utilities section in the Freeware & Open Source category