AS & A Level Computer Science 9608 REVISION NOTES
1.3 Sound How sound is represented and encoded?
-Sound are vibrations that travel through a medium -Sound waves are continuous in nature, which means there is infinite amount of detail for a sound. • Analogue to Digital Converter (ADC): converts analogue sound into digital signals which can be digitally stored • Digital to Analogue Converter (DAC): converts digital signals into analogue sound that can be output • An analogue sound wave is picked up by a microphone and sent to an ADC in the form of analogue electrical signals. Once the sound wave is converted into a digital form it can be stored and manipulated
4.1 Von Neumann Machine What is Von-Neuman Architecture?
1)It uses a single processor 2)It uses one memory for both instructions and data 3)It run programs by doing one instruction after the next in a serial manner using fetch-decode-execute cycle.
4.7 Fetch-Execute Cycle State the NORMAL process of the Fetch-Execute Cycle Process.
1)The Contents of PC is copied into MAR. -2)PC is incremented -3)The contents of memory location, pointed by MAR is COPIED into MDR. -4)The contents of MDR is copied into CIR 5)In CIR, The instruction(Can change incrementation) is decoded and executed 6)The Cycle is reset.
1.4 Video What is meant by temporal redundancy?
>redundancy between frames o This is the correlation between adjacent data points o It is based upon abrupt transitions between frames
1.4 Video What is meant by spatial redundancy?
>redundancy within a frame o An inter-coded frame that is divided into macro blocks o Blocks are not directly encoded with raw pixel values o Encoder finds a block similar to the one in last frame o This frame is the reference frame o This process is done using algorithms
1.1.2 Images How data for a bit-mapped image is encoded?
A bitmapped image is encoded by assigning a solid color to each pixel.
1.5.3 Library programs • describe the benefits to the developer of software constructed using library files, including Dynamic Link Library (DLL) files
Advantages: • Less time consuming • Reduces need for testing • Better/advanced engines Disadvantages: • Prone to viruses • May require manual tweak - tedious
-- backup software
Automatic Backup: • Duplicate important data in the event of a hard drive failure, user error, disaster or accident. • Can be used for individual computers or for an enterprise's computers and servers. • Software can be set to backup selected files and folders on a scheduled basis or as required.
• explain the benefits and drawbacks of using interpreter
COMPILER: Advantages • Can run program any time, even before code finished • Debugging easier/faster Disadvantages • Execution very slow - translated each time run • Interpreter needed • No .exe produced
○○ checksum check
Checksum Check: • Data sent from one place to another as block of bytes rather than individual bytes • Computer adds together all bytes being sent • Any bits lost at most-significant end as carry ignored so answer is an 8 bit number • Checksum calculated before and after data sent • If two bytes different, error occurred therefore block of bytes must be sent again
• show awareness of what kind of errors can occur and what can be done about them
Data held in a computer system may become corrupted in different ways and at many stages during data processing: • Errors on input: data keyed in wrongly, a batch of data could be lost or accidently entered twice • Errors in operating procedures: update master file twice • Program errors: could lead to a corruption of files which may only surface later on • Viruses: files can be corrupted or deleted when a disk is infected with a virus • Transmission errors: interference in communications link may cause bits to be wrongly received
1.6.2 Data integrity • describe error detection and correction measures designed to protect the integrity of data, including: -- data validation -- data verification for data entry
Data validation: checks data entered is sensible • Range check: data must be between a set of values • Character check: data must have correct character type • Format check: data must follow correct pattern/order • Length check: data must have an exact no. of characters • Existence check: data entered must exist (e.g. barcode must correlate to an item) • Check digit: 1 digit is used to be answer to an arithmetic operation of other digits in data. If not matched then data entered incorrectly Data can be valid but this doesn't mean data is accurate
-- defragmenter software
Defragmenter software: • Reorganizes files & unused space on hard disk so operating system accesses data quicker • Files can be big so have to be stored in multiple sectors • Fragmentation, contents of a file are scattered across two or more noncontiguous sectors • Fragmentation slows down disk access and thus the performance of the entire computer. • Defragmenting disk: reorganizing files so they are stored in contiguous sectors
• describe the features of a relational database which address the limitations of a file-based approach
Disadvantages of File Based System: • No enforcing control on organization/structure of files • Data repeated in different files; manually change each • Sorting must be done manually or must write a program • Data may be in different format; difficult to find and use • Impossible for it to be multi-user; chaotic • Security not sophisticated; users can access everything
-- disk contents analysis/disk repair software
Disk content analysis software: • Software utility for visualization of disk space usage • Gets size for each folder and files, and generates a graphical chart showing disk usage distribution according to folders or other user defined criteria.
1.5.2 Utility programs • show an understanding of the need for typical utility software used by a PC computer system: -- disk formatter -- virus checker -- defragmenter software -- disk contents analysis/disk repair software -- file compression -- backup software
Disk formatter: • Carries out the process of preparing a data storage device such as a hard disk drive, for initial use • Formatting, process where the computer 'draws lines' on the surface of disk surface to split it into small areas.
• draw on experience of the writing of programs which include library routines
Dynamic Link Library Files (DLL): • A file acting as a library that contains code and data • Can be used by different programs running simultaneously ∴ reduces strain on memory • Each DLL file can be seen as modules in a more complex program, making it easier to install and run updates
1.7.1 Ethics and the computing professional •• show understanding of the eight principles listed in the ACM/IEEE Software Engineering Code of Ethics
Eight ethics principles of software engineers (SEs): • Public: act consistently in the public interest • Client: act in the best interests of client • Employer: act in the best interests of employer • Product: software and related modifications meet highest possible standards • Judgment: maintain integrity and independence in their professional judgment • Management: team leaders should subscribe to and promote an ethical approach to the management of software development and maintenance. • Profession: advance integrity & reputation of profession • Colleague: be fair to & supportive of colleagues • Self: participate in lifelong learning regarding practice of profession
-- file compression
File compression: • Reduces the size of a file by cutting out much of the duplication of data in the file. • Causes improvements in the computer's performance by reducing the data that needs to be stored
• show understanding of the implications of different types of software licensing: Free Software Foundation,
Free Software Foundation: • License gives user freedom to run, copy, distribute, study, change and improve software. • Condition: any redistributed version of software must be distributed with original terms of free use, modification, and distribution (aka copyleft)
• explain the benefits and drawbacks of using compiler
INTERPRETER: Advantages: • .exe easily distributed • With .exe, don't need compiler software • No source code - users not able to edit/plagiarize Disadvantages: • Only be produced when all errors are fixed • Development process long - locating errors • Uses a lot of resources
4.1 Von Neumann Machine What is a Accumulator? (Single General-purpose register)
It acts as a working area and holds results of processing.
4.1 Von Neumann Machine What is Memory data register (MDR)?
It acts like a buffer and holds anything that is copied from the memory to the processor or vice-versa.
4.5 Performance of a Computer System What is a Bus width?
It determines maximum possible memory capacity of the system. Wider bus width means more bits can be transferred simultaneously.
4.1 Von Neumann Machine What is a Status register (SR)?
It holds results of comparisons to decide later for action, intermediate results of arithmetic performed and any errors occurred during arithmetic.
4.1 Von Neumann Machine What is Memory address register (MAR)?
It holds the address of the memory location that is next to be used.
4.1 Von Neumann Machine What is Program counter (PC)?
It holds the address of the next instruction to be executed, thus controlling sequence of execution.
4.1 Von Neumann Machine What is Current instruction register (CIR)?
It holds the instruction that is to be executed.
4.6 Peripheral Devices What is an I/O controller?
It is a electronic circuit board consisting of: o Interface allowing connection of controller to system o Set of data, command and status registers
4.1 Von Neumann Machine What is a Index register (IR)?
It is a microprocessor register used for modifying operand addresses during run of a program. Used if address indirect; a constant from the instruction added to contents of IR to form address to operand/data
4.3 The Processor What is Arithmetic and logic unit (ALU)?
It is a part of processor that performs arithmetic calculations & logical decisions o Arithmetic operations: add, subtract, multiply etc. o Logical operations: comparing binary patterns and making decisions
1.1.2 Images What is a drawing list?
It is a set of commands used to define a vector
4.4 System Buses What is a Bus?
It is a set of parallel wires that connect various components & provides communication between them.
4.3 The Processor What is a System clock?
It is a timing device connected to the processor that synchronizes when fetch-execute cycle runs.
4.6 Peripheral Devices What is an I/O Port?
It is an Interface that enables the connection of the controller to the device • I/O ports allow I/O devices to be connected to the CPU without having to have specialized hardware for each one i.e. a USB port can connect many different I/Os
4.3 The Processor What is a Control unit?
It is part of processor that fetches instructions from memory, decodes them & synchronizes operations before sending signals to other parts of the computer.
1.3 Sound What is Sampling Resolution?
It is the No. of bits assigned to each sample • The sampling resolution allows you to set the range of volumes storable for each sample • The quality of a sound produced using a sound sampler depends on the sampling rate and sampling resolution
1.4 Video What is meant by Frame Rate?
It is the Number of still Pictures per unit of time of video. -Higher frame rate, better quality video = greater size
1.1.2 Images Define Image Resolution?
It is the amount of pixels an image contains per inch/cm
1.3 Sound What is bit Rate?
It is the number of bits required to store 1 sec of sound 𝐵𝑖𝑡 𝑅𝑎𝑡𝑒 = 𝑆𝑎𝑚𝑝𝑙𝑖𝑛𝑔 𝑅𝑎𝑡𝑒×𝑆𝑎𝑚𝑝𝑙𝑖𝑛𝑔 𝑅𝑒𝑠𝑜𝑙𝑢𝑡𝑖𝑜𝑛 𝐹𝑖𝑙𝑒 𝑆𝑖𝑧𝑒 = 𝐵𝑖𝑡 𝑅𝑎𝑡𝑒×𝐿𝑒𝑛𝑔𝑡ℎ 𝑜𝑓 𝑆𝑜𝑢𝑛𝑑
1.1.2 Images What is color depth?
It is the number of bits used to represent the color of a single pixel An image with n bits has 2^n colors per pixel. File Size = Number of Pixels x Color Depth
4.5 Performance of a Computer System What is a Clock speed?
It is the number of cycles that are performed by the CPU per second. Faster clock speed means processes of fetch, decode and execute occur faster however faster clock speed causes processor to heat up.
1.1.2 Images Define Screen Resolution?
It is the number of pixels per row by the number of pixels per column.
• show awareness that high-level language programs may be partially compiled and partially interpreted, such as Java
LOGIC
○○ parity check
Parity Check: • All data transmitted as bits • Number of 1s in a byte must always be either an odd number or an even number • Parity can be set either as even or odd • Example: two communicating devices decide there will always be an odd number of 1s. A byte is received that has an even number of 1s so error must have occurred and receiving device would ask for it to be sent again • Used also when data sent between parts of the CPU • Not foolproof: if 2 errors made, data accepted
1.1.2 Images What are Pixels?
Pixels are small blocks of addressable areas and the color they have is represented by binary and stored as bits.
4.1 Von Neumann Machine What are Registers?
Registers: an extremely fast piece of on-chip memory, usually 32 or 64 bits in size for temporary storage • Registers are outside the immediate access store and consequently allow faster access to the data they store.
• show appreciation of the need for both the security of data and the security of the computer system
Security Of Data: • Protection of data on a computer system • To prevent corruption of data and prevent hackers from using data • E.g. encryption Security of the Computer: • Protection of the computer system • To prevent access of viruses to the system and prevent hackers to enter your computer system • E.g. ID & Password
shareware and commercial software
Shareware: • Demonstration software that is distributed for free but for a specific evaluation period only • Distributed on trial basis and with an understanding that sometime later a user may be interested in paying for it • Used for marketing purposes Commercial: Requires payment before it can be used, but includes all program's features, with no restrictions
the Open Source Initiative,
The Open Source Initiative: • Source code of an open-source software is readily available to users under a copyright; does not enable user to re-distribute the software • Concept of open-source program relies on fact that a user can review a source-code for eliminating bugs in it
1.5.1 Operating system • explain the key management tasks carried out by the operating system
The operating system (OS) must provide: • Management of resources of the computer system: o Processor management: for multiprogramming decide which job will get the next use of the processor o File management: maintaining a list of files, directories and which fi le allocation units belong to which fi les o Input/output management: control of all input and output devices attached to the computer • An interface between the user and the machine • An interface between applications software & machine • Security for the data on the system • Utility software to allow maintenance to be done
1.1.2 Images What are File Header?
They are a few bytes of binary and represents basic information about the graphic, such as image resolution, size and number of colors.
1.1.2 Images What is a vector graphic?
They are images defined using mathematics & geometry i.e. points, lines, curves & shapes/polygon(s) Objects and properties are stored mathematically
1.1.2 Images How typical features found in bit-mapped and vector graphics software are used in practice?
Vectors are scalable and do not pixelate like a bitmap image therefore are used by corporations to create logos as they can be resized without losing quality Bit-mapped images are used by general computer users as they are not big in file size and can be manipulated.
-- virus checker
Virus checker: • Finds and removes computer viruses from a computer • When files sent from one computer to another, possible it may contain a virus that can infect receiving computer • Virus checker keeps a constant check on files, searching for viruses and deletes it if found.
4.4 System Buses What is a Data Bus?
bi-directional, used to carry data and instructions between system components. The memory data register (MDR) is at one end of the data bus.
4.4 System Buses What is a Control Bus?
bi-directional, used to send control signals from control unit to ensure access/use of data & address buses by components of system does not lead to conflict
4.6 Peripheral Devices What are Peripheral devices?
hardware device outside the CPU • Cannot be connected directly to processor ∴ processor controls and communicates through an I/O controller
1.1.5 Compression techniques What is meant by Lossless Data Compression?
o Breaks data into smaller form of transmission o Allows recreation of original >It is designed to reduce the file size of a file without losing any details so that the original file can be recreated exactly. Eg. 1)Compressing Images 2)Compressing Sounds
1.4 Video What is meant by Multimedia Container Formats?
o Contains different types of data o Can be audio or video or both codecs o This interleaves the different type of data o The video is compressed into codecs o E.g. .avi, .mov, .mp4, .ogg, .rm
1.1 Number Representation What are BCD Representation?
o Each digit in the number is written separately in a series of 4 bits o E.g. 398 in BCD o 3 = 0011 9 = 1001 8 = 1000 o 398 = 0011 1001 1000 o Use of BCD: used in business applications (arithmetic) where every digit has to be retained in a result
1.4 Video What is meant by Progressive encoding? (e.g. 720p):
o Excite every horizontal line simultaneously o Thus frame rate is the same as the number of individual pictures in a video sequence o This gives more detail in each frame o Pros: Crisp, detailed frames and is new and popular o Con: Rough frame transition
4.8 Register Transfer Notation (RTN) State the NORMAL Cycle for Fetch-Execute Cycle?
o MAR ← [PC] o PC ← [PC] + 1 o MDR ← [[MAR]](Contents of memory location) o CIR ← [MDR] o Decode o Execute o Return to start
1.4 Video What is meant by Interlaced encoding? (e.g. 1080i):
o Old Technology (70 years ago) o Each field of a video image displays every other horizontal line of a complete image ∴ doubles FPS o Horizontal lines often visible to eye due to distortion o Pros: Refreshes faster, better visual smoothness and saves bandwidth o Cons: Becoming outdated and interlaced screen will not show fast moving objects clearly
1.1 Number Representation What are Hexadecimal Number?
o The base-16 number system (counting in 16) o After 9, numbers represented by letters from A to F 256 16 1 0 0 0 -(HEXADECIMAL TO DENARY) o E.g. A5 in Denary = (16×10) + (1×5) = 165 -(DENARY TO HEXADECIMAL) o E.g. 65 in Hexadecimal = 65 ÷ 16 = 4 𝑅𝑒𝑚𝑎𝑖𝑛𝑑𝑒𝑟 1 ∴ = 41 H -(HEXADECIMAL TO BINARY) o Quick way of translating hexadecimal to binary is by converting the hexadecimal to BCD o E.g. A5 in Binary: A = 1010, 5 = 0101 A5 = 10100101
1.1.5 Compression techniques What is meant by Lossy Data Compression?
o These programs eliminate unnecessary bits of data o Reduces data file size more than lossless o Unable to get back original version E.g 1) Compressing a Text. RLE 2) Compressing Images
1.4 Video What is meant by Inter-frame compression?
o Type of video compression and decreases file size o It removes neighboring frames which are similar o Some change in image data is redundant o How redundant the change in image between frames is determines the amount of compression possible
1.1 Number Representation What are binaries?
o Values stored as a series of ones and zeroes o A single 0 or 1 is called a binary digit or bit. o Any group of 0s & 1s can represent a character 128 64 32 16 8 4 2 1 0 0 0 0 0 0 0 0 o E.g. 65 in binary is 1000001
1.1 Number Representation What are 2's Complement?
o We can represent a negative number in binary by making the most significant bit (MSB) a sign bit, which will tell us whether the number is positive or negative -128 64 32 16 8 4 2 1 MSB 0 0 0 0 0 0 LSB
4.4 System Buses What is a Address Bus?
unidirectional, carries address of main memory location or input/output device about to be used from processor to memory address register (MAR)
1.5.1 Operating system • describe why a computer system requires an operating system
• A set of programs designed to run in the background on a computer system which o Controls operation of computer system o Provides a user interface o Controls how computer responds to user's requests o Controls how hardware communicate with each other o Provides an environment in which application software can be executed
4.9 Interrupts What is Interrupts?
• A signal from some device or source seeking the attention of the processor • Interrupt register: a special register in the CPU • Before each cycle, the interrupt register is checked. • Depending on the priority of the interrupt, the running process is saved and the control of the processor is passed to the interrupt handler
-- access rights to data (authorisation)
• Access rights to data (authorization): different users are assigned different authorization levels which prevent them from accessing all the data so increase security
1.5.4 Language translators • show an understanding of the need for: -- assembler software for the translation of an assembly language program
• Assembler: o Translates assembly language into machine code o The mnemonics used translates into machine opcodes o Process simple because assembly language has a oneto- one relationship with machine code. o Assembler basically translate mnemonics into binary
-- general authentication techniques, including the use of passwords and digital signatures
• Authentication techniques: o Digital signatures: a unique personal trait required by a computer to access certain data o Password: case-sensitive, unique string of letters, numbers and special characters. o Biometric scans e.g. retina, fingerprint, palm
1.5.3 Library programs • show an understanding that software under development is often constructed using existing code from program libraries
• Collections of resources used to develop software • Made up of pre-written code & functions, subroutines • Provide services to other more complex programs
-- a compiler for the translation of a high-level language program
• Compiler: translation of a high-level language program o Translates high level code into low level code o Reason for translating: create an executable program
1.7.1 Ethics and the computing professional • show a basic understanding of ethics
• Computer Ethics: how computing professionals should make decisions regarding professional & social conduct.
• describe security measures designed to protect the security of data, including: -- data backup
• Data backup: an exact copy of an original piece of data in case the original is lost or corrupted o Can be made on any type of storage device o May be within the same computer system or at a different site
-- data integrity
• Data integrity: entire block copied to user's area when being changed, saved back when done
• show understanding of the features provided by a DBMS to address the issues of: -- data management, including maintaining a data dictionary -- data modelling -- logical schema -- data integrity -- data security, including backup procedures and the use of access rights to individuals/groups of users
• Data management: data stored in relational databases - tables stored in secondary storage • Data dictionary contains: o List of all files in database o No. of records in each file o Names & types of each field
-- data modelling
• Data modeling: analysis of data objects used in database, identifying relationships among them
1.7.2 Ownership of software and data • show understanding of the concept of ownership and copyright
• Data ownership: having legal rights and complete control over a single piece or set of data elements. • Copyright gives the creators of some types of media rights to control how they're used and distributed.
-- data security, including backup procedures and the use of access rights to individuals/groups of users
• Data security: handles password allocation and verification, backups database automatically, controls what certain user's view by access rights of individuals or groups of users
1.6.1 Data security • explain the difference between the terms security, privacy and integrity of data
• Data security: making sure that data is protected against loss and unauthorized access. • Data integrity: making sure that the data is valid. • Privacy of Data: deals with the ability to determine what data is shared with the third party
1.8.1 Database Management Systems (DBMS) • show understanding of the limitations of using a file-based approach for the storage and retrieval of data
• Data stored in discrete files, stored on computer, and can be accessed, altered or removed by the user
• show understanding of how software tools found within a DBMS are used in practice: -- developer interface
• Developer interface: allows creating and manipulating database in SQL rather than graphically
4.9 Interrupts What is Intterupt/Interrupt Service Routine (ISR)?
• Different ISRs are used for different source of interrupt • Typical sequence of actions when interrupt occurs: o Current fetch-execute cycle completed o Contents of all registers, especially PC, stored away o Source of interrupt identified o If low priority: then disabled o If high priority: PC loaded with address of relevant ISR o ISR executed o All registers except for PC are restored to original o Interrupts re-enabled o PC is then restored o Return to start of cycle
-- a disk-mirroring strategy
• Disk-mirroring strategy: real-time strategy that writes data to two or more disks at the same time. o If one fails the other is still there to be read off of o It can be done using more than one extra hard disk
-- encryption
• Encryption: conversion of data to code by encoding it o Data stored in an incomprehensive state o Doesn't prevent illegal access but appears meaningless o Necessary to use decryption software to decode data o Encryption keys complex algorithms; cannot crack
-- firewalls
• Firewalls: o Set of programs, located at network gateway, that protects the resources of a private network from users from other networks o Filters information incoming to computer system o Information packets can be flagged by firewall and thus not allowed through
1.3 Sound how file sizes depend on sampling rate and sampling resolution?
• Higher sampling rate/resolution means larger file size
-- an interpreter for execution of a high-level language program
• Interpreter: execution of a high-level language program o Program translated line-by-line • High level language programs may be partially compiled and partially interpreted, such as Java
-- logical schema
• Logical schema: overall view of entire database, includes: entities, attributes and relationships
• describe the need for legislation to protect ownership, usage and copyright • discuss measures to restrict access to data made available through the Internet and World Wide Web
• Programming ideas and methods can be stolen by competitors, software can easily be copied and bootlegged (sold illegally) hence legislation is needed to protect the ownership, usage and copy right of data.
• show understanding of how software tools found within a DBMS are used in practice: -- query processor
• Query processor: handles high-level queries. It parses, validates, optimizes, and compiles or interprets a query which results in the query plan.
1.3 Sound What is Sampling Rate?
• Sound in analogue form can be represented by wave forms; the height of these waves can be sampled regularly with the height being represented by a bit-code • Sampling Rate: number of samples taken per second
4.7 Fetch-Execute Cycle State the ADVANCED process of the Fetch-Execute Cycle Process.
• THE FETCH STAGE: o Copy the address that is in the PC into the MAR o Increment the PC (ready for the next fetch) o Load the instruction in address of MAR into the MDR o Load the instruction in MDR into the CIR • THE DECODE STAGE: o Identify type of addressing used by instruction o Direct address: load copy into MAR & retrieve data o Indirect address: add address to IR, copy result to MAR o Retrieve contents of new address o Decode the instruction •THE EXECUTE STAGE: o If instruction is a jump instruction, load address operand into PC then go to start o If not, execute instruction then go to start
• describe security measures designed to protect computer systems, ranging from the stand-alone PC to a network of computers, including: -- user accounts
• User Accounts: o Each user has an ID and password which are the log in details for a his user account o User assigned privilege which gives him access to only his workspace, preventing him to have admin rights. o Can assign privilege to files so users with low privileges do not have access.