Programmers write instructions in various programming languages, some directly understandable by computers and others requiring intermediate translation steps.
Three general language types:
§Machine languages
§Assembly languages
§High-level languages
Machine Languages
}Any computer can directly understand onlyits own machine language.
§This is the computer’s “natural language,” defined by its hard-ware de-sign.
§Generally consist of strings of numbers (ultimately reduced to 1s and 0s) that instruct computers to perform their most elementary operations one at a time.
§Machine dependent—a particular machine language can beused on only one type of computer.
Assembly Languages
}Englishlike abbreviations that represent elementary operations formed the basis of assembly languages.
}Translator programs called assemblers convert assembly-language programs to machine language.
High-Level Languages
}High-level languages
§Single statements accomplish substantial tasks.
§Compilers convert high-level language programs into machine language.
§Allow you to write instructions that look almost like everyday English and contain commonly used mathematical notations.
}C, C++, Microsoft’s .NET languages (e.g.,Visual Basic, Visual C++ and C#) are among the most widely used high-levelprogramming languages; Java is by far the most widely used.
}Compiling a high-level language programinto machine language can take a considerable amount of computer time.
}Interpreter programs execute high-level language programs directly, although slower than compiled programs run.
}Java uses a clever mixture of compilation and interpretation to run programs.

