unit 6 Fundamentals of computer systems Flashcards
what is hardware?
-electrical and electromechanical parts of a computer system
-physical, tangible parts of the computer and its input, output and storage devices
what is software?
all programs that make the computer function
what are the two categories of software?
system software and application software
what is system software?
software required to run and manage the computer’s hardware and application programs
what makes up the operating system?
-interface
-security
-device management
-application management
-memory management
-processor management
what makes up system software?
operating systems, utility programs, library programs, translators
what are the types of application software?
-general purpose
-special purpose
what is API?
application programming interface
what does API do?
-takes requests from end user and sends it to the OS
what are the three languages?
machine code, assembly language , high-level language
what is machine code?
-binary
-made up of opcode and operand
what is assembly language?
-mnemonics
what are the types of high-level languages?
-imperative: commands
-declarative: focuses on what the program should do without listing the steps
why do people use high-level languages?
-easier to read/code
-allows for abstraction
what is source code?
human readable program
what is object code?
executable machine code
what are the three types of translators?
-assemblers
-compilers
-interpreters
how do assemblers work?
translates each assembly code to its corresponding machine code. each processor has its own assembly code and assembler program. the object code is saved and used when required
how do compilers work?
translates high-level languages into object code. it translates the whole code at once. different hardware platforms require different compilers. it produces intermediate code, optimises it then generates machine code. it carries out semantic analysis, lexical analysis, and syntactical analysis.
how do interpreters work?
translates high-level code into an intermediate form which it then executes. no object code is produced.
what is bytecode?
some compilers produce an intermediate form of code known as bytecode. it is a portable file but needs a virtual machine to be created and run. the translation only has to be done once.