low level languages
-machine code/assembly language
-binary or mnemonics to represent instructions
-hardware dependant
-one specific type of computer only
-refers directly to hardware so programmers must understand the processor
-can be run directly by processor
high level languages
-source code
-english keywords
-hardware independant
-must be translated into machine code before running
-takes alot of CPU power and storage
translators
converts high level programming code into machine code
compilers
-translates every line into machine code and runs it afterwards
-produce an executable file (object code)
-can be run again without recompiling
-can be distributed without users seeing the source code
-compiled code runs quickly
-wont run if there is an error
interpreters
-translates one line of code and runs that line, repeating this
-does not produce object code
-must retranslate to run again
-slower to run
-runs until error found
-not optimised
integrated development environment (IDE)
-provides all tools that a programmer needs to write and test code e.g. idle
-editor, error diagnostics, runtime environment, translators
editor tool
-enter/modify code
-pretty printing (colours)
-auto suggestion
-auto indentation
error diagnostics
-to find and fix errors
-breakpoints stop program at specific point
-stepping runs each line one at a time from a given point
-variable contents checked
runtime environment
-allows code to be run from the IDE
-output can be seen without additional programs
-may involve the use of a virtual machine
what is color depth and sample depth
-number of bits used to represent each pixel’s color
-number of bits used to record each sample
file size formula
resolution x color depth