Why don’t programmers have to program in machine code?

Slides:



Advertisements
Similar presentations
GCSE Computing Lesson 5.
Advertisements

compilers and interpreters
CS0004: Introduction to Programming Introduction to Programming.
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
Chapter 16 Programming and Languages: Telling the Computer What to Do.
Compilers and Interpreters. Translation to machine language Every high level language needs to be translated to machine code There are different ways.
Course: Introduction to Computers
Source Code Basics. Code For a computer to execute instructions, it needs to be in binary Each instruction is given a number Known as “operation code”
Activity 1 - WBs 5 mins Go online and spend a moment trying to find out the difference between: HIGH LEVEL programming languages and LOW LEVEL programming.
Introduction to Programming Language CS105 Programming Language First-generation: Machine language Second-generation: Assembly language Third-generation:
Basics Programming Concepts. Basics A computer program is a set of instructions to tell a computer what to do Machine language = circuit level language.
Standard Grade Computing SYSTEM SOFTWARE CHAPTER 19.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
3/5/2009Computer software1 Introduction Computer System Hardware Software HW Kernel/OS API Application Programs SW.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
1 3. Computing System Fundamentals 3.1 Language Translators.
Represents different voltage levels High: 5 Volts Low: 0 Volts At this raw level a digital computer is instructed to carry out instructions.
A compiler is a computer program that translate written code (source code) into another computer language Associated with high level languages A well.
Compilers and Interpreters. HARDWARE Machine LanguageAssembly Language High Level Language C++ Visual Basic JAVA Humans.
 Programming - the process of creating computer programs.
 Computer Languages Computer Languages  Machine Language Machine Language  Assembly Language Assembly Language  High Level Language High Level Language.
By: Cheryl Mok & Sarah Tan. Java is partially interpreted. 1. Programmer writes a program in textual form 2. Runs the compiler, which converts the textual.
Compilers and Interpreters
The Functions and Purposes of Translators Translators, Interpreters and Compilers - High Level Languages.
Software. Introduction n A computer can’t do anything without a program of instructions. n A program is a set of instructions a computer carries out.
Representation of Data - Instructions Start of the lesson: Open this PowerPoint from the A451 page – Representation of Data/ Instructions How confident.
Programming 2 Intro to Java Machine code Assembly languages Fortran Basic Pascal Scheme CC++ Java LISP Smalltalk Smalltalk-80.
Machine Language Computer languages cannot be directly interpreted by the computer – they are not in binary. All commands need to be translated into binary.
Computer Systems Nat 5 Computing Science
Computer Applications in Business
Topic 2: Hardware and Software
Component 1.6.
Assembler, Compiler, MIPS simulator
GCSE COMPUTER SCIENCE Computers 1.5 Assembly Language.
High or Low Level Programming Language? Justify your decision.
Chapter 5- Assembling , Linking, and Executing Programs
Writing, Compiling and Running a C program
Introduction to programming
Computational Thinking, Problem-solving and Programming: General Principals IB Computer Science.
Programming Language Hierarchy, Phases of a Java Program
Sections Basic Concepts of Programming
Computer Systems Nat 5 Computing Science
Microprocessor and Assembly Language
Machine code Recall that all a computer recognises is binary code.
A451 Theory – 7 Programming 7A, B - Algorithms.
Entry Ticket: High and Low Level Languages
Teaching Computing to GCSE
TRANSLATORS AND IDEs Key Revision Points.
Teaching Computing to GCSE
Translators & Facilities of Languages
Assembler, Compiler, Interpreter
and Executing Programs
Programming Languages
High Level Programming Languages
PROGRAMMING What is it?.
Lesson Objectives Aims Key Words Compiler, interpreter, assembler
Autumn Term Year 10 Slides
Translators & Types of Languages
CS105 Introduction to Computer Concepts Intro to programming
CMP 131 Introduction to Computer Programming
Programming Languages
Assembler, Compiler, Interpreter
PROGRAMMING FUNDAMENTALS Lecture # 03. Programming Language A Programming language used to write computer programs. Its mean of communication between.
ICT Programming Lesson 1:
An Introduction to Programming with C++ Fifth Edition
1.3.7 High- and low-level languages and their translators
Programming language translators
EN Software Carpentry Python – A Crash Course Esoteric Sections Compiled Languages.
Introduction to Computer Science
Presentation transcript:

Why don’t programmers have to program in machine code? Recall that these are machine instructions are binary code. That is, binary digits that represent the program in such a way that the processor can run it. Fortunately we have such things as assemblers, compilers and interpreters. These do the translation into binary that the computer can understand and run.

Assemblers What do they do? Translate assembly code into machine code. Features Each different type of machine/processor requires an assembler of its own (e.g. ARM).

Compilers What do they do? Translate a program written in a high level language (e.g. Python, C) into assembly language or machine code (the executable file). Take an assembly language program and converts each mnemonic into its binary equivalent. Features Checks for errors before the exe is produced. Produce final software for distribution. Can be slow to compile. End user/competitor is unable to hack into the code. (Don’t believe it, but this is ‘the’ answer expected on the test.)

Interpreters What do they do? Translates one line at a time at run time (e.g. Java). Features Slower than compilers. But can be executed straight away. No object code generated. Often used when developing new programs. End users can easily see the code.