logo

Pearson Edexcel GCSE (9-1) Computer Science revision notes

Programming languages Revision Notes

Review revision notes for Programming languages in Edexcel Computer Science.

At a glance

revision notes

Resource type

Topic

Programming languages

Pearson EdexcelGCSE (9-1)Computer SciencePaper 1 (1CP2/01)

Revision notes

  • How Interpreters Differ from Compilers Revision Notes

    Compiler Characteristics

    A compiler translates the entire high-level source code into machine code in a single step, creating an executable file. This process happens once, and if syntax errors exist, the compiler identifies and reports all of them before any execution. Compiled code usually runs faster. Examples include C++ and Java, where Java code is first compiled to bytecode, which is then interpreted or JIT-compiled by the JVM.

    Interpreter Characteristics

    An interpreter translates and executes code line-by-line during runtime. The interpreter must be present every time the program runs. It stops and reports an error immediately if it encounters a problematic line, making it useful for debugging and testing. Interpreted programs typically run slower than compiled ones. Languages often associated with interpretation include Python, JavaScript, and Ruby.

  • Low-level vs. High-level Programming Languages Revision Notes

    Low-level Languages

    Low-level languages are close to machine code. They offer direct hardware control, making them fast and efficient for specific tasks, like device drivers or operating systems. Examples include machine code (binary instructions) and assembly language (symbolic representation of machine code). They are hardware-dependent, meaning code written for one type of processor may not work on another. They are challenging to learn, write, and debug; however, they provide fine-grained control and can optimise performance significantly in resource-constrained environments.

    High-level Languages

    High-level languages are more abstract and human-readable, using syntax similar to natural language. Examples include Python, Java, C++, and JavaScript. They are hardware-independent, meaning one program can run on different types of computers with minimal changes. Tools like compilers or interpreters translate them into machine code. They are easier to learn, faster to write, and simpler to debug than low-level languages. Their main purpose is to increase programmer productivity, readability, and portability across various platforms, suitable for most general-purpose applications.

    Characteristics and Purposes

    Key characteristics of low-level languages are direct hardware access, fast execution, and hardware dependence, used for tasks requiring optimisation or direct control. High-level languages are characterised by abstraction, human-readability, hardware independence, and portability, suitable for application development, data processing, and user interfaces. The choice between them depends on the project's requirements: performance and control (low-level) versus development speed and portability (high-level).

Revision hubs

Keep studying from the right hub

Programming languages Revision Notes | Edexcel Computer Science | ExamCompanion