computer systems Flashcards
define hardware
any physical components that make up the computer
define software
any program that runs on the computer
what is the symbol for a NOT gate?
a triangle with a circle
what is the symbol for an AND gate?
a D
what is the symbol for an OR gate?
a kite
what is the symbol for an XOR gate?
a kite with an extra line
what is the truth table for a NOT gate?
(opposites)
input a input b
0 1
1 0
what is the truth table for an AND gate?
(all 0, except 1-1)
input a input b output c
0 0 0
0 1 0
1 0 0
1 1 1
what is the truth table for an OR gate?
(all 1, except 0-0)
input a input b output c
0 0 0
0 1 1
1 0 1
1 1 1
what is the truth table for an XOR gate?
(opposites are 1)
input a input b output c
0 0 0
0 1 1
1 0 1
1 1 0
what is the Boolean expression for a NOT gate?
B = Ā (bar above letter represents NOT)
what is the Boolean expression for an AND gate?
C = A . B (dot represents AND)
what is the Boolean expression for an OR gate?
C = A + B (plus represents OR)
what is the Boolean expression for an XOR gate?
C = A ⊕ B (circle with plus represents XOR)
explain what system software means
programs that are helps run or manage a computer system
explain what application software is
programs that enables a user to perform a task
what are some examples of system software?
-operating systems (OS) - Windows, Android, Mac, Chrome
-utility programs
what are some examples of application software?
spreadsheets, databases, word processors
define operating systems (OS)
a group of programs that manages the computer’s resources
what is the function / what does the operating system (OS) manage?
-manages CPU and its processing tasks
-manages memory
-communicate with input/output devices via driver devices
-provide platforms for applications to run on
-manages security
-provides a user interface
explain the main differences between low-level and high-level languages
-one instruction of HL code = many instructions of machine code, whereas one instruction of assembly code = one instruction of machine code
-same HL code works for many different machines/processors, whereas LL code usually for one type of machine
-HL code is easy to read, understand, modify, whereas LL is hard
-HL code must be translated before read, whereas commands in machine code can be executed directly
-HL does not have much control of CPU therefore programs are less memory efficient and slower, whereas LL controls exactly what the CPU does and how it uses memory therefore it is more memory efficient and faster
examples of high-level language
Python, Visual Basic, C++, Java, JavaScript
examples of low-level language
assembly language and machine code
explain the difference between machine code and assembly language
machine code is a set of instructions that the CPU understands directly and can act upon and is expressed in binary (0 and 1s). it is specific to a processor/family of processors.
assembly language is used to develop software for embedded systems and from controlling specific hardware components
what type of programming code should be translated?
high-level
assembly language