Search CSNewbs
290 results found with an empty search
- 3.1 - Compression, Encryption & Hashing | OCR A-Level | CSNewbs
Learn about lossy and lossless compression and the lossless compression algorithms run-length encoding and dictionary coding. This topic also covers symmetric and asymmetric encryption and the uses of hashing. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 3.1 - Compression, Encryption and Hashing Specification: Computer Science H446 Watch on YouTube : Lossy & Lossless Compression Lossless Compression Algorithms Encryption Hashing Lossy vs Lossless Compression Compression is the process of reducing the size of a file so it takes up less storage space and can be transmitted more quickly over a network . It works by encoding data more efficiently or removing unnecessary information . The main benefits of compression include faster file transfer speeds , reduced storage requirements and improved performance when streaming data . Lossy compression permanently removes some data that is less important to human perception , such as subtle sounds or image details , resulting in smaller file sizes but slightly lower quality . Lossless compression reduces file size without losing any data , allowing the original file to be perfectly restored after it is decompressed . YouTube video uploading soon Lossless Compression Algorithms There are two types of lossless compression that you need to know: Run-Length Encoding (RLE ) is a simple form of lossless compression that reduces file size by storing repeating data as a single value and a count . For example, a sequence like AAAAABBBCCCC could be stored as A5B3C4 , saving space in files with many repeated elements , such as pixels in images . Dictionary Encoding replaces repeating patterns of data with shorter codes that reference entries in a dictionary . The dictionary stores common sequences once , and each repetition is replaced by a shorter reference , making it efficient for text and other data with recurring patterns . YouTube video uploading soon Encryption Encryption is the process of converting readable data (plaintext ) into an unreadable form (ciphertext ) to prevent unauthorised access . It ensures the confidentiality and security of information during storage or transmission . There are two key types of encryption : Symmetric encryption uses the same key for both encryption and decryption , meaning the sender and receiver must share the key securely . It is fast and efficient , making it suitable for encrypting large amounts of data . However, key distribution is a major risk if the key is intercepted . Asymmetric encryption uses a pair of keys - a public key for encryption and a private key for decryption . It is more secure for communication but slower due to complex mathematical processes . Asymmetric encryption is often used to exchange symmetric keys securely before data transfer . YouTube video uploading soon Hashing Hashing is the process of applying a mathematical function (hash function ) to data to produce a fixed-size value , known as a hash . It is a one-way process , meaning the original data cannot be reconstructed from the hash . Hashing is commonly used for data integrity checks , password storage and digital signatures . Even a tiny change in the input data produces a completely different hash , making it useful for detecting tampering or corruption . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Compression: lossy compression, lossless compression, run-length encoding, dictionary encoding Encryption: plaintext, ciphertext, key, symmetric encryption, asymmetric encryption Hashing: hash function, hash D id Y ou K now? Alan Turing and his team used pattern recognition to analyse recurring sequences in encrypted German messages , helping to break the Enigma code , which was a major factor in the Allies’ victory in World War II . 2.4 - Programming Languages A-Level Topics 3.2 - Databases
- 4.2 - Signed Binary - Eduqas GCSE (2020 Spec) | CSNewbs
Learn about two methods of representing negative numbers in binary - sign and magnitude and two's complement. Based on the 2020 Eduqas (WJEC) GCSE specification. 4.2: Signed Binary Exam Board: Eduqas / WJEC Specification: 2020 + What are Sign and Magnitude and Two's Complement? Sign and Magnitude and Two's Complement are both methods of writing positive and negative binary values . Sign and Magnitude is simpler but will cause incorrect answers if used in binary calculations . Two's Complement is more complex but will generate correct answers when used in binary calculations . Sign & Magnitude The most significant bit (MSB ) is the largest bit of a binary number - the one furthest to the left . The MSB is the sign - it represents whether the binary value is positive or negative . If the sign is 0 then the binary number is positive . If the sign is 1 then the binary number is negative . The other bits represent the magnitude - the value of the binary number. For an 8-bit binary number , the range is -127 to 127 , because only 7 bits are used to define the magnitude. Sign & Magnitude: Problems Sign and magnitude is not commonly used by computers for two main reasons: Performing binary addition and subtraction (see section 4.3 ) will often cause a wrong result . In the example below, -7 + 3 should equal -4 but the result given is 2. + Sign and magnitude creates two different values for 0 - positive 0 and negative 0 which is incorrect. Two's Complement Two's complement is a method of representing positive and negative binary values. It is used often by computers because binary calculations will work correctly and there is only one value for zero. Two's Complement: Denary to Binary To represent a negative value using two's complement follow these steps: Write out the positive value in binary . Start on the right-hand side and move along, copy all 0s until you get to the first 1 . The first 1 is copied too. After the first 1 invert each value (change to its opposite ). So 0 becomes 1 and 1 becomes 0 . 1. 2. 3. Two's Complement: Binary to Denary To convert a binary number to denary using two's complement you must remember that the MSB is a negative value . Just add the numbers with 1 together to work out the denary value . Q uesto's Q uestions 4.2 - Signed Binary: Sign & Magnitude 1. Using sign and magnitude , convert the following values to denary : a. 00011101 b. 11100011 c. 10110110 d. 01001111 [1 each ] 2. Using sign and magnitude , convert the following values to binary : a. 83 b. -13 c. -102 d. -24 [1 each ] 3. Describe two problems when using sign and magnitude . [ 4 ] 4. Using sign and magnitude , the range of numbers that can be represented in 6 bits is from - 31 to + 31 . State the range of numbers that can be represented using sign and magnitude in the following bits: a. 8 bits b. 4 bits [1 each ] Two's Complement 1. Using two's complement , convert the following values to binary : a. -20 b. -49 c. -87 d. -113 [2 each ] 2. Using two's complement , convert the following values to denary : a. 10110010 b. 11101110 c. 01101011 d. 10011111 [2 each ] Watch the video to learn how sign and magnitude is used to represent negative numbers in binary . Watch the video to learn how two's complement is used to represent negative numbers in binary . Watch on YouTube Watch on YouTube 4.1 - Number Systems Theory Topics 4.3 - Binary Calculations
- All Programming Topics | CSNewbs
A list of programming topics including HTML, Greenfoot, Python. All Programming Topics Python HTML Greenfoot Assembly Language App Inventor 2
- Key Stage 3 Python | The Basics | CSNewbs
The first part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about comments and printing. Python - #1 - The Basics 1. Start with Commenting Programmers write A LOT of code. They need to understand exactly what they have written, especially if they are working as part of a team or returning to code after working on other projects. To help them understand what they have written, programmers use comments to annotate (explain) their code . Task 1 - Create a new Python program and use # to write a comment that says your name and the date. Save the file as 1-Basics.py In Python, type the # symbol then your message to write a comment. Comments are not printed when you run a program! It is a good idea to start every program with a comment, so you know what the program is about . 2. Printing to the Screen The most basic and common command you will use in Python is print . Inside the print brackets, you can write a message within speech marks . Your print command should turn purple - don't use any capital letters in Python unless it is inside speech marks! Task 2 - Write a nice message by using the print command, brackets and speech marks. Press F5 to run your program. 3. More Printing You can write multiple print lines one after another to print on different lines. Task 3 - Add two more print lines to your program. You can choose any message that you like. 4. New Lines You can use the special command \n to start a new line . This allows you to write on multiple lines but only use one print line. Use the backslash ( \ ) not the forward-slash ( / ). Task 4 - Use \n to write a 3 sentence conversation in only one line of code. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Days of the Week Create a new Python program. Save it as ' 1-Week.py ' Add a comment at the top with your name and the date. Create a program that prints the days of the week, with each day on a new line. BONUS : Try to use only one print line. BONUS : Have no empty spaces at the start of each line. When you run it, it should look like this: Challenge Task 2 - Conversation Create a new Python program. Save it as ' 1-Conversation.py ' Add a comment at the top with your name and the date. Create a program that prints a 6-line conversation between two people. It is up to you what these two people are talking about. BONUS : Try to use only one print line. BONUS : Have no empty spaces at the start of each line. When you run it, it could look something like this: #2 Variables >>>
- 1.5 - Performance - Eduqas GCSE (2020 spec) | CSNewbs
Learn about the three factors that affect computer performance - cache memory size and levels, clock speed and the number of cores. Based on the 2020 Eduqas (WJEC) GCSE specification. 1.5: Performance Exam Board: Eduqas / WJEC Specification: 2020 + The performance of a computer system is affected by three main factors: Cache Memory: Size & Levels What is cache memory? Cache memory is temporary storage for frequently accessed data . Cache memory is very quick to access because it is closer to the CPU than other types of memory like RAM . What are the 3 levels of cache memory? Level 1 cache is the smallest level but it is also the fastest . Level 2 cache is larger than level 1 but slightly slower. Level 3 cache is located outside of the CPU core which makes it slower than the first two levels but it is much larger . How does cache memory work? When the CPU searches for data , it looks first in level 1 cache, then level 2 and then level 3 . If the data has been found , this is called a 'cache hit '. If the data is not found then the CPU searches in RAM instead which takes more time - this is called a 'cache miss '. How does cache memory improve performance? Cache memory is closer to the CPU than RAM , meaning that it can provide data and instructions to the CPU at a faster rate . A computer with more cache memory (e.g. 8MB instead of 4MB) should have a higher performance because repeatedly used instructions can be stored and accessed faster . Larger level 1 and level 2 cache sizes will improve a computer's performance as data can be accessed extremely quickly . What is the limitation of cache memory? Cache memory is costly, so most computers only have a small amount . Multiple cache misses will result in data latency (delay) as information is accessed from RAM which is further away from the CPU. Clock Speed What is clock speed? Clock speed is the measure of how quickly a CPU can process instructions . Clock speed is measured in Gigahertz (GHz) . A typical desktop computer might have a clock speed of 3.5 GHz . This means it can perform 3.5 billion cycles a second . How does clock speed improve performance? The faster the clock speed, the faster the computer can perform the FDE cycle resulting in better performance because more instructions can be processed each second . How does overclocking and underclocking affect performance? Typical clock speed: 3.5 GHz Underclocking Overclocking 3.9 GHz 3.1 GHz Overclocking is when the computer's clock speed is increased higher than the recommended rate. This will make the computer perform faster, but it can lead to overheating and could damage the machine . Underclocking is when the computer's clock speed is decreased lower than the recommended rate. This will make the computer perform slower but will increase the lifespan of the machine . Number of Cores What is a core? A core is a complete set of CPU components (control unit, ALU and registers). Each core is able to perform its own FDE cycle . A multi-core CPU has more than one set of components within the same CPU. How does the number of cores improve performance? In theory, a single-core processor can execute one instruction at a time , a dual-core processor can execute two instructions, and a quad-core can execute four instructions simultaneously . Therefore, a computer with more cores will have a higher performance because it can process more instructions at once . What are the limitations of having more cores? If one core is waiting for another core to finish processing, performance may not increase at all. Some software is not written to make use of multiple cores , so it will not run any quicker on a multi-core computer. Q uesto's Q uestions 1.5 - Performance: Cache Size & Levels 1a. What is cache memory ? [ 2 ] 1b. Describe the three levels of cache memory . [ 3 ] 1c. Describe what is meant by a ' cache hit ' and a ' cache miss '. [ 2 ] 1d. Describe two ways that more c ache memory will mean performance is higher . [ 4 ] 1e. Explain why most computers only have a small amount of cache memory. [ 1 ] Clock Speed 2a. What is clock speed ? What is it measured in? [ 2 ] 2b. Explain how a higher clock speed improves performance . [ 2 ] 2c. Explain the terms 'overclocking ' and 'underclocking ' and explain the effects of both on the performance of a computer. [ 4 ] Number of Cores 3a. What is a core ? [ 2 ] 3b. Explain why a quad-core processor should have a higher performance than a dual-core processor . [ 3 ] 3c. Explain two reasons why having more cores doesn't necessarily mean the performance will be better . [ 2 ] 1.4 - Secondary Storage 1.6 - Additional Hardware Theory Topics
- 6.2 - Communication Skills | F160 | Cambridge Advanced National in Computing AAQ
Learn about how communication skills contribute to software application development, including verbal, written and questioning techniques. Based on Unit F160 (Fundamentals of Application Development) for the OCR Cambridge Advanced National in Computing (H029 / H129) (AAQ - Alternative Academic Qualification). Qualification: Cambridge Advanced National in Computing (AAQ) Unit: F160: Fundamentals of Application Development Certificate: Computing: Application Development (H029 / H129) 6.2 - Communication Skills Watch on YouTube : Communication skills Developers working to create applications must be able to effectively communicate with team members , clients and users in a range of different ways . There are five communication skills you need to know: appropriate language , verbal , non-verbal , questioning techniques and written communication . You need to be aware of how each communication skill contributes to software application development and when they would be used appropriately by various job roles and in different stages of application development . Communication Skills Forms of Communication Appropriate language must be used to meet the needs of the audience by tailoring vocabulary , tone and technical detail to suit the client . Non-verbal communication includes body language , facial expressions , gestures , posture , eye contact and appearance . Question techniques have different goals , such as probing questions being used to explore detail and clarifying questions to check understanding . Verbal communication relates to spoken words and includes articulation , tone and pace , but also listening skills . Written communication is through emails , reports , documentation , messages and comments . It requires clarity , accuracy and professionalism . Q uesto's Q uestions 6.2 - Communication Skills: 1. Give examples of when written communication would be used in application development and by which job roles . [3 ] 2. Describe four different types of questions , with an example of each that relates to application development . [4 ] 3. Explain why effective non-verbal communication is important in application development . [ 3 ] Studies estimate that adults ask about 30 questions a day , whereas 4-year-olds ask on average 300 questions a day . D id Y ou K now? 6.1 - Job Roles Topic List
- Old Eduqas Topics (2016 Spec) | CSNewbs
This page contains topics from the 2016 Eduqas / WJEC that are not included in the 2020 Eduqas / WJEC specification. Topics from the 2016 Eduqas Specification This page contains information from the 2016 Eduqas specification that was removed for the 2020 specification. Quick Links: Buses & Instruction Sets (RISC & CISC) Protocols (IMAP & POP3) Network Devices (Gateway) Human-Computer Interaction (Command-Line Interface, Touch-Sensitive Interface, Menu-Driven Interface, Voice-Driven Interface) Cyber Attacks (Dictionary Attack, Buffer Overflow, Human Weakness) Software Protection (Secure by Design, Too Many Permissions, Scripting Restrictions, Validation with Parameters) Data Policies (Acceptable Use Policy, Disaster Recovery, Cookies) Environmental Issues (Tips to Reduce Waste, Positive Impacts of Technology) Object Oriented Programming (Greenfoot and Java) Programming Topics (Assembly Language, HTML, Greenfoot) Buses Buses & Instruction Sets Buses Data is transferred within a computer system along pathways called buses . There are three types of bus: Address Bus Data Bus Control Bus Sends a memory address of where data is stored. The address is sent from the CPU to RAM in the FDE cycle. Transfers data between components. Data is sent both ways . Sends control signals from the control unit to other components of the system. Status signals are sent back to the CPU. An instruction set is a list of all the instructions that a CPU can process as part of the FDE cycle . CPUs can have different sets of instructions that they can perform based on their function. The two most common instruction sets are the simpler RISC (Reduced Instruction Set Computer ) and more complicated CISC (Complex Instruction Set Computer ). Instruction Sets Reduced Instruction Set Computer (RISC) Complex Instruction Set Computer (CISC) Complexity RISC has fewer instructions than CISC and is therefore slower for carrying out complex commands but quick for basic tasks . CISC has more complex instructions available and can therefore perform complicated tasks . Cost RISC is generally cheaper to mass produce because less circuitry is required for the smaller instruction set. CISC CPUs are generally more expensive because they require more circuitry to operate. Power RISC CPUs are designed to use less power and run without dedicated cooling systems (like fans) so that they can be used in devices like smartphones . Because CISC CPUs require more circuitry this means that they generate more heat and may require a fan . CISC CPUs therefore are commonly used in desktop computers . Clock Speed RISC CPUs run at lower clock speeds than CISC CPUs. They can perform simpler tasks more quickly than CISC, but are generally not used to carry out complex instructions . CISC CPUs run at higher clock speeds than RISC CPUs. They can perform complex tasks more quickly than RISC. Protocols Protocols POP3 ( Post Office Protocol 3 ) and IMAP (Internet Message Access Protocol ) are both protocols for receiving and storing emails from a mail server. Gateway Network Devices Gateway A gateway joins together two networks that use different base protocols . For example, a gateway could link together a LAN to a WAN . HCI Human - Computer Interaction Command-Line Interface Touch-Sensitive Interface Other types of user interface do exist, such as a command-line interface (CLI ). This type of interface is entirely text-based and requires users to interact with the system by typing commands . This is a complicated process and mistakes could easily accidentally delete data. There are many commands to learn so only experts who have been trained t o learn this interface will be able to efficiently make use of it. Another type of user interface is a touch-sensitive interface , used with smartphones and tablets . A human interacts with the device by pressing on a touchscreen , making it very intuitive and suitable for most users without training. Touch-sensitive interfaces may not work with dirty or wet fingers and it will take longer to write text compared to using a keyboard. Menu-Driven Interface A menu-driven interface displays data in a series of linked menus . Examples include cash machines (ATMs) and old iPods . This type of interface is generally user friendly and easy to use as commands do not need to be memorised. However it can be annoying to find specific data through a large number of menus without a search feature. Voice-Driven Interface A voice-driven interface can be controlled by speaking commands aloud to a listening device. Examples include Amazon's Alexa devices, Apple's Siri technology and Google Home . This interface is intuitive , can be used hands-free and helps to speed up processes . However commands may be misheard or limited in what can be performed. Cyber Attacks Cyber Attacks Dictionary Password Attack This uses a file containing every word in the dictionary and cycles through them all. This method is relatively easy to program but will only break the simplest passwords . Buffer Overflow Attack A buffer is a temporary storage location . A buffer overflow attack causes a program to try to store more data in a buffer than it can hold which can lead to adjacent memory locations being overwritten . An attacker can use the buffer overflow to insert malicious code to change data or steal confidential data . Human Weakness The biggest weakness in online security is often not the systems in place but carelessness or mistakes made by humans . Social engineering means to trick others into revealing their personal data by posing as a trusted source . For example, impersonating an IT technician via email and asking to send a username and password. Humans can accidentally compromise data by downloading malicious files or being unsafe online, like using the same password for multiple different accounts. Attackers can access unauthorised information in person by shoulder surfing and watching them as they enter sensitive data such as a PIN or password. Software Protection Software Protection The following methods of protection are considered in the design, testing and creation stages of developing software . Secure by Design This method puts security as the most important concept when creating and designing software . By focusing on security when designing software there should be less need for later updates and patches and attacks are less likely to succeed . Too Many Permissions Apps require permission to use device features (such as the camera or microphone of a smartphone) when they are downloaded. Programmers should only request permission for features that the software requires . Some malicious apps steal data or spy on users - and the worst part is that you've given permission for it to do it! Users can avoid suspicious apps by reading reviews, checking there are no unnecessary permission requests , only downloading the software you need / will use and uninstall apps if permissions change . Scripting Restrictions A script is a set of instructions executed on a website. For example, Facebook uses a JavaScript script to post a status and another to read your private messages. The Same Origin Policy (SOP) is a security precaution that prevents websites from using scripts on other sites that you have open . For example, if you are using JavaScript to post a status on Facebook then visit an infected site, that site can't also use JavaScript to access your Facebook data, because even though they both use JavaScript, they are from a different origin . Without SOP an infected website could access personal data or infect a computer with malware by maliciously using the same scripts as other websites you have used . Programmers should set scripting restrictions when creating websites. Validation with Parameters A parameter is a measure that is used when validating data , it is usually a range or limit. For example, the parameters of a length check may be whether the data is between 1 and 10 characters . Programmers must ensure validation is used on websites with suitable parameters to prevent attacks such as an SQL injection. Data Policies Data Policies Data policies are written documents that clearly define how data should be managed in an organisation. It is important that all employees stick to these policies and requirements so that data is kept safe and can be replaced if lost or corrupted. The following methods are examples of common data policies. Acceptable Use Policy (AUP) Workplaces and schools often require people to sign an acceptable use policy (AUP) before being allowed to use the network. It is a list of rules and expected behaviour that users must follow when using the computer systems. Typical rules include: Which websites are off-limits (such as social media or gambling sites), Download permissions (such as who can download and install software) Email communication (such as appropriate language). Punishments if rules of the AUP are broken. The AUP is sometimes known as a Code of Conduct . This is an example of a formal code of practice , with written rules and clear expectations . An informal code of practice would not be officially written down , such as personal habits and preferences (e.g. email layout or desk organisation). Disaster Recovery With important data often stored on a computer network, it is absolutely vital that a detailed and effective disaster recovery policy is in place in the event of data being lost due to an unexpected disaster. Disasters include natural disasters (e.g. fire, flood, lightning), hardware failure (e.g. power supply unit failing), software failure (e.g. virus damage) and malicious damage (e.g. hacking). There are three clear parts to a disaster recovery policy: Before the disaster: All of the possible risks should be analysed to spot if there are any weaknesses in preparation. Preventative measures should be taken after the analysis, such as making rooms flood-proof or storing important data at a different location . Staff training should take place to inform employees what should happen in the event of a disaster. During the disaster: The staff response is very important – employees should follow their training and ensure that data is protected and appropriate measures are put in place. Contingency plans should be implemented while the disaster is taking place, such as uploading recent data to cloud storage or securing backups in a safe room and using alternative equipment until the disaster is over. After the disaster: Recovery measures should be followed, such as using backups to repopulate computer systems. Replacement hardware needs to be purchased for equipment that is corrupted or destroyed. Software needs to be reinstalled on the new hardware. Disaster recovery policies should also be updated and improved . Cookies A cookie is a small piece of data that is stored by websites when you visit them. They allow the website to identify the user and are often used to speed up processes , such as: Automatic login (by saving account details) Save items into a basket (such as pizza delivery sites) Display adverts related to your previous search terms . Although they can be used to save time, some argue that cookies can be intrusive and store too much information. Environmental Issues Environmental Issues Tips to Reduce Waste Turn off computers , monitors and other connected devices when not in use . Adjust power options to help minimise power consumption. Devices with the Energy Star sticker use between 30% and 70% less electricity than usual. Repair older devices rather than throwing them away. Ink jet printers use up to 95% less energy than laser jets. Think twice about printing paper, don't waste ink and remember to recycle paper . Positive Environmental Impacts Communication advancements (such as video messengers) reduces pollution as people do not have to travel to speak to each other. This is especially beneficial in business - workers can talk from the office and do not need to catch a plane to speak. Smart devices can monitor usage and reduce energy waste - such as smart air conditioners and home security systems. Collaboration software (such as cloud-based technology and Google Docs) allows experts to work together and share data. The internet and research databases allows scientists to study the environment more efficiently. Documents can be viewed on a screen rather than printed out - books and newspaper articles can be read on kindles / tablets saving paper and ink . New materials and more environmentally-friendly processes have been developed thanks to increased technology and research. Object Oriented Programming Object-Oriented Programming (OOP) Java is an example of object-oriented programming (OOP) where a programmer is able to code objects that can be visually placed onto a background. Greenfoot is an IDE for Java . Superclass A class from which other 'subclasses' will inherit characteristics ; e.g. hippos, crocodiles and polar bears will inherit properties from the Animals superclass. Object A single object from a class ; e.g. one crocodile object from the Crocodile class. Class A set of objects which share the same properties ; e.g. all PolarBears will behave in a similar way. Comment Two / symbols will allow you to write a comment to explain the code . Method A series of instructions that an object will follow . The act() method will loop in Greenfoot when the play button is pressed. Programming Programming Topics Variable Scope & Lifetime The scope of a variable refers to the parts of the program where the variable can be viewed and used , e.g. a variable with global scope can be accessed anywhere in the program . The lifetime of a variable is the amount of time the variable is stored in memory and therefore can be used , e.g. local variables can only be accessed throughout the subroutine they are created in. Programming Languages: Assembly Language HTML Greenfoot Theory Topics
- 4.8 - Compression - Eduqas GCSE (2020 Spec) | CSNewbs
Learn about the benefits of compression and the differences between lossy and lossless compression. Also, learn how compression ratios work. Based on the 2020 Eduqas (WJEC) GCSE specification. 4.8: Compression Exam Board: Eduqas / WJEC Specification: 2020 + What is compression? To compress a file means to make its size smaller . Benefits of compression include: Files take up less storage space (so more files can be stored). Files can be transferred quicker (because they are smaller). Files can be read from or written to quicker . There are two methods that are used to compress files: Lossy and Lossless . Lossy Compression Lossy compression uses an algorithm (set of instructions) to analyse a file and remove data that cannot be heard or seen by humans . For example, a lossy algorithm would analyse the sound waves of an audio file and remove any frequencies which humans cannot hear. This process reduces the size of the file . Further lossy compression will remove data that humans can see / hear . For example, the dog image to the right has been strongly compressed using a lossy algorithm and some data has clearly been removed. Lossy compression removes the data permanently , so the file can never return to its original form . Lossy compression is often used with images , audio and video to reduce the file size, for example to send over the internet. Lossless Compression Lossless compression reduces the size of a file without permanently removing any data . Because of this, the file is returned to its original form when decompressed, so no quality is lost . A file that is compressed with a lossless algorithm is usually larger than a file compressed with a lossy algorithm because no data has been permanently removed. Lossless compression is used with files that would not work if data was removed, for example executable files (e.g. programs and games) or word documents . Remember that lossy and lossless compression do not just refer to images. Below is an audio file that has been compressed with lossy compression . Data has been removed so the audio quality has decreased. 197 KB 81 KB 43 KB Compression Ratios Original File Size Compression Ratio = Compressed File Size 4 Mb = 5:1 20 Mb Example: A file has been compressed from 20 megabytes down to 4 megabytes. This is a compression ratio of 5:1. To calculate the size after compression , divide the original size by the first ratio value, then multiply it by the second value. For example, the new size for file 1 is (210 ÷ 10) x 3 = 63 MB. Triple-click the final column to see the right answers. Q uesto's Q uestions 4.8 - Compression: 1. Describe 3 benefits of compressing a file . [ 3 ] 2. Describe the differences between lossy and lossless compression . [4 ] 3. A student needs to compress a Microsoft Word document to send in an email. Suggest which type of compression they should use and why . [ 2 ] 4a. A text file was 72 KB and was compressed to 8 KB . State the compression ratio . 4b. An audio file was 4.5 MB and has been compressed to 0.9 MB. State the ratio. 4c. A 20 MB file is compressed with a ratio of 5:2 . What is the size of the compressed file ? [ 1 each ] 63MB 164KB 96KB 4.7 Sound Representation Theory Topics 5.1 - Data Structures
- 3.4 - Hardware & Routing - Eduqas GCSE (2020 spec) | CSNewbs
Learn about six network devices - hub, switch, router, bridge, WAP and NIC. Also, learn about routing tables and cost diagrams. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.4: Network Hardware & Routing Exam Board: Eduqas / WJEC Specification: 2020 + Network Devices Hub A hub receives data packets from a connected device and transfers a copy to all connected nodes . Switch A switch receives data packets , processes them and transfers them on to the device specifically listed in the destination address of the packet. Router Routers are used to transfer data packets between networks . Data is sent from network to network on the internet towards the destination address listed in the data packet. A router stores the address of each computer on the network and uses routing tables to calculate the quickest and shortest path . Bridge A bridge joins together two networks that use the same base protocols . For example, a bridge could link together a LAN to another LAN . Wireless Access Point (WAP) Provides a link between wireless and wired networks . It creates a wireless local area network that allows WiFi enabled devices to connect to a wired network. Network Interface Card (NIC) A Network Interface Card (often shortened to NIC ) is an internal piece of hardware that is required for the computer to connect to a network . It used to be a separate expansion card but now it is commonly built directly into the motherboard (and sometimes known as a network adapter ). Wireless network interface cards ( WNIC ) permit a wireless network connection. Routing A routing table is a list of the optimal routes for data packets to be sent from one device to another. Routing tables should be kept accurate and up to date to ensure that packets are transferred as quickly as possible . During routing the lowest cost route is calculated . This is the shortest path with the fastest nodes to transfer data. Below is a simplified network and basic routing table showing the lowest cost (optimal) route using node A as the source address. Q uesto's Q uestions 3.4 - Network Hardware & Routing: 1a. Describe the difference between a hub and a switch . [ 2 ] 1b. Explain how a modem works. [ 2 ] 1c. Describe the purpose of a router . [ 2 ] 1d. Describe the difference between a gateway and a bridge . [ 2 ] 1e. State what WAP stands for and describe its purpose . [ 2 ] 1f. State what NIC stands for and why it is required . [ 2 ] 2a. Describe what a routing table is and why they should be maintained . [ 2 ] 2b. In terms of routing, what does a low-cost route mean? [ 2 ] 2c. Copy and complete the routing table below using node J as the source address . [ 4 ] 3.3 - Network Topology Theory Topics 3.5 - Protocols
- Key Stage 3 Python | Variables | CSNewbs
The first part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about comments and printing. Python - #2 - Variables 1. Number Variables A variable is a value that can change . Imagine there are 20 biscuits in a jar. Then I eat one. Now there are only 19. You must state what the value of a variable is before it is used . e.g. biscuits = 20 Task 1 - Create a new Python program and save the file as 2-Variables.py Create a variable called sweets and give it the value 15. Then print sweets. Variable names cannot have spaces . You can use underscores if you want, e.g. num_of_eggs When you are printing variables, you don't put them in speech marks . Otherwise, it will print the variable name and not the value. 2. String Variables A string is a programming term for a collection of characters . When you are giving a variable a string value, it must be written in speech marks . Remember when you print the variable however, it is never printed in speech marks . Task 2 - Create a variable called name and give it the value of your name. Then print the name variable. 3. Using Variables in a Sentence When we have printed the variables so far, they have not been very informative! You can print variables together with sentences so that they mean more. Use a comma ( , ) between variables and sentences . Task 3 - Use the pictures to help you add commas and sentences to your program to be more informative. 4. Using Variables Together You can print more than one variable together in the same sentence by separating them with sentences and commas . If this doesn't work, double-check your program has a comma between each variable and sentence . Task 4 - Type a new print line that uses both your name and your sweets variables together. Use the image to help you. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Funny Animals Create a new Python program. Save it as ' 2-FunnyAnimals.py ' Add a comment at the top with your name and the date. Create a variable for a colour and give it a value (e.g. "blue") Create a variable for an animal and give it a value (e.g. "horse") Print a funny sentence that uses both variables. BONUS : Try to use only one print line. BONUS : Try to use only three lines in total . Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: Challenge Task 2 - Funny Sentence Create a new Python program. Save is as ' 2-FunnySentence.py ' Add a comment at the top with your name and the date. Write a program that uses three variables, an adjective (descriptive word), a number and an animal. Print a funny response using all variables. BONUS : Try to use only one print line. BONUS : Try to use only four lines in total . Remember: Break up variables in a print line by using commas. When you run it, it could look something like this: <<< #1 The Basics #3 Inputs >>>
- Algorithms | CSNewbs
Learn how pseudocode and flowcharts are written as part of algorithms. This content is based on the 2016 Eduqas / WJEC GCSE Computer Science specification. Algorithms Pseudocode Pseudocode Pseudocode is not a specific programming language but a more general method of describing instructions . It should be unambiguous, and it should not resemble any particular kind of programming language (e.g. Python or Java), so it can theoretically be turned into real code in any language. Generally, pseudocode can be written in any way that is readable and clearly shows its purpose. However, the Eduqas exam board advises that pseudocode for the programming exam should follow the conventions below : Annotation { Write your comment in curly brackets} Define data type price is integer firstname is string Declare a variable's value set price = 100 set firstname = "Marcella" Input / output output "Please enter your first name" input firstname Selection (must have indentation) if firstname = "Steven" then output "Hello" + firstname elif firstname = "Steve" then output "Please use full name" else output "Who are you?" end if Iteration (while loop) while firstname ! = "Steven" output "Guess my name." input firstname repeat Iteration (for loop) for i in range 10 input item next i Define a subroutine Declare Sub1 [Subroutine content indented] End Sub1 Call a subroutine call Sub1 Flowcharts flowchart A flowchart can be used to visually represent an algorithm. The flowchart symbols are: Algorithm Example example Pseudocode {This is a program to see how many items you can buy in a supermarket before you spend over £100} total is integer, itemsentered is integer, itemprice is integer set total = 0 set itemsentered = 0 while total < 100 output "enter the price of the next item" input itemprice total = total + itemprice itemsentered = itemsentered + 1 repeat if itemsentered >= 20 then output "You are on your way to saving money." elif itemsentered => 30 then output "You're a real money saver." else output "Look for better deals next time." end if Stop Flowchart
- 3.6 - 7 Layer OSI Model - Eduqas GCSE (2020 spec) | CSNewbs
Learn about networking standards and the seven layers of the Open Systems Interconnected (OSI) model - Application, Presentation, Session, Transport, Network, Data Link and Physical. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.6: 7-Layer OSI Model Exam Board: Eduqas / WJEC Specification: 2020 + What are networking standards? Networking standards are rules that allow computer systems to communicate across networks . Standards have been created to ensure devices can exchange data and work together . What is the 7-layer OSI Model? The OSI ( Open Systems Interconnection ) model is split into 7 layers . The model is used to visualise the different parts of a network as each of the seven layers has a specific role . Splitting a network design into layers is beneficial to programmers as it simplifies design , making it easier to modify and use . Each layer has a certain purpose and is associated with different protocols . The seven layers are explained below: 7 Allows humans and software applications to use the network e.g. browsers (HTTP /HTTPS ) and email (SMTP ) and file transfer (FTP ). 6 The purpose of the presentation layer is to display data in a standard format that other devices can accept and understand . 5 The session layer establishes a connection between computers allowing data to be sent between them. Data can be synchronised in each session to allow for efficient data transfer . 4 TCP breaks the data down into data packets . This layer makes sure the data is sent and received in the correct order and reassembled at the destination without errors. 3 IP is responsible for addressing and routing data packets . The optimal route for the data to take is calculated in this layer. Also known as the 'Internet Layer '. 2 Ethernet sets out the format of data packets . This layer handles transmission errors and passes data to the physical layer . 1 This layer converts the data packets into bits so they can be transferred across a physical connection using routers and switches . Q uesto's Q uestions 3.6 - 7-Layer OSI Model: 1a. What are networking standards ? [ 2 ] 1b. Describe why network designs are split into layers . [ 2 ] 2. Create a diagram similar to the one above and describe each layer of the OSI Model. [ 14 ] 3. Look at the statements below and name the layer that is being described: a. This layer ensures data packets are sent and received correctly. b. This layer checks for errors in transmission and sets out the data packet format. c. This layer displays data in a format that can be understood. d. This layer allows software like web browsers to interact with the network. e. This layer transfers bits across a connection using routers. f. This layer establishes a connection between computer systems. g. This layer uses addresses to ensure data packets take the correct route. [ 7 ] 3.5 - Protocols Theory Topics 3.7 - The Internet










