Podcast
Questions and Answers
Which component within the CPU is responsible for coordinating the execution of instructions by issuing control signals?
Which component within the CPU is responsible for coordinating the execution of instructions by issuing control signals?
- Arithmetic Logic Unit (ALU)
- Decoder
- Memory Unit
- Control Unit (CU) (correct)
Which of the following best describes the primary function of the Arithmetic Logic Unit (ALU)?
Which of the following best describes the primary function of the Arithmetic Logic Unit (ALU)?
- Generating control signals for other CPU components.
- Performing arithmetic and logical operations. (correct)
- Decoding instructions fetched from memory.
- Managing data flow between the CPU and memory.
What is the role of the clock within the Control Unit (CU)?
What is the role of the clock within the Control Unit (CU)?
- To coordinate the activities of the CPU components. (correct)
- To store frequently accessed data.
- To perform complex mathematical calculations.
- To decode instructions into machine code.
A program instruction involves comparing two values to determine if the first value is greater than the second. Which CPU component would perform this operation?
A program instruction involves comparing two values to determine if the first value is greater than the second. Which CPU component would perform this operation?
During the fetch-decode-execute cycle, which stage involves interpreting the instruction and determining the actions to be performed?
During the fetch-decode-execute cycle, which stage involves interpreting the instruction and determining the actions to be performed?
Which of the following is NOT a typical function of the Control Unit (CU)?
Which of the following is NOT a typical function of the Control Unit (CU)?
If a CPU needs to retrieve data from memory, which type of signal would the Control Unit (CU) typically send?
If a CPU needs to retrieve data from memory, which type of signal would the Control Unit (CU) typically send?
The decoder
is a component of the Control Unit (CU). What is its primary function?
The decoder
is a component of the Control Unit (CU). What is its primary function?
During the execution of a program, a conditional statement requires the CPU to determine if one value is less than another. Which component is directly responsible for performing this comparison?
During the execution of a program, a conditional statement requires the CPU to determine if one value is less than another. Which component is directly responsible for performing this comparison?
A CPU is running at a clock speed of 3 GHz. What does this clock speed primarily determine?
A CPU is running at a clock speed of 3 GHz. What does this clock speed primarily determine?
Flashcards
Control Unit (CU)
Control Unit (CU)
Sends signals to other CPU parts, such as memory read/write signals, to control operations.
Fetch-Decode-Execute Cycle
Fetch-Decode-Execute Cycle
Executes programs by repeatedly fetching instructions, decoding them, and then executing them.
Control Unit Components
Control Unit Components
Coordinates CPU activities and includes a decoder, which is a core component of the control unit.
Arithmetic Logic Unit (ALU)
Arithmetic Logic Unit (ALU)
Signup and view all the flashcards
Study Notes
Processor Structure and Function
- The control unit (CU) sends control signals to other CPU parts, like memory read/write signals.
- The CU executes programs via the fetch-decode-execute cycle
- The CU contains the clock which coordinates CPU activity and the decoder
- The arithmetic logic unit (ALU) performs calculations (add, multiply, divide, subtract) and logical operations (>, <, =).
Registers
- The program counter (PC) stores the memory address of the next instruction to be executed.
- The memory address register (MAR) holds the address of data being fetched from or sent to memory.
- The memory data register (MDR) stores the data fetched from or being stored in memory.
- The current instruction register (CIR) stores the most recently fetched instruction, awaiting decoding and execution.
- The accumulator (ACC) holds the results of ALU calculations and operations.
Buses
- The address bus provides memory addresses to system memory or I/O devices.
- The data bus transfers data between the CPU, memory, and I/O devices.
- The control bus provides control signals for memory or I/O read/write operations.
Fetch-Decode-Execute Cycle: Fetch Stage
- PC copies the address of the next instruction into the MAR.
- CU loads the MAR address onto the address bus.
- CU triggers a read signal via the control bus, prompting RAM to put the requested instruction on the data bus.
- The instruction on the data bus is loaded into the MDR.
- The MDR copies the instruction into the CIR.
- The PC is incremented by one to point to the subsequent instruction, completing the fetch stage.
Fetch-Decode-Execute Cycle: Decode Stage
- The contents of the CIR are sent to the CU.
- CU decodes the instruction.
Fetch-Decode-Execute Cycle: Execute Stage
- The CPU carries out the instruction in the CIR.
- Registers can change during execution based on the instruction.
- For LDA/STA instructions, the address in the CIR is loaded into the MAR.
- In STA (store), data from the accumulator goes to memory.
- In LDA (load), data is loaded from memory into the accumulator.
- For calculation instructions (ADD/SUB), MDR and accumulator contents are sent to the ALU, and the result returns to the accumulator.
Factors Affecting CPU Performance: Clock Speed
- The clock sends pulses at fixed intervals to control the speed of the fetch-decode-execute cycle in the CU.
- A higher clock speed allows the CPU to complete more instructions per second.
Factors Affecting CPU Performance: Overclocking & Cache
- Overclocking changes the clock speed, potentially increasing performance but generating more heat and increasing the risk of damage.
- Cache is a small, fast memory within the CPU that stores frequently used, recently used, or soon-to-be-used instructions or data.
- Accessing data from cache is faster for the CPU than accessing it from RAM.
Factors that impact CPU Performance: Number of Cores
- A core is a complete processing unit (CU, ALU, registers, etc.).
- Each core can independently execute the fetch-decode-execute cycle.
- Multiple cores enable simultaneous instruction processing.
- More transistors and a larger physical size contribute to larger power and heat requirements
Factors Affecting CPU Performance: Pipelining
- Pipelining fetches an instruction while decoding the previous one and executing the one before that.
- It's a form of parallel processing.
- A pipeline controller predicts jump instructions to keep the pipeline full.
- Incorrect predictions require flushing the pipeline, which reduces performance.
Processor Architectures: Von Neumann
- Has a single CU and a single ALU.
- Processes instructions sequentially.
- Stores instructions and data together in the same memory unit, using a binary format.
Processor Architectures: Harvard
- Separates memory into two parts: one for data and one for programs.
- Uses different buses to access each memory part.
Processor Architectures: Modern
- Employs parallel processing.
- Pipelining, array processing (SIMD - single instruction, multiple data), and multicore processing (MIMD - multiple instruction, multiple data) are types of parallel processing.
- Array processing uses numerous ALUs to perform one instruction on a large dataset (e.g., graphics cards).
- Multicore processing uses multiple cores within a CPU or multiple CPUs within a system (workstations, supercomputers).
Types of Processors: CISC
- CISC (complex instruction set computing) supports more instructions.
Types of Processors: RISC
- RISC (reduced instruction set computing) supports fewer instructions.
- Fewer transistors and a smaller physical size lead to lower power consumption and less heat generation.
- Instructions typically take a single clock cycle.
GPUs
- GPU (graphics processing unit) is designed for graphics calculations.
- It's an array processor employing SIMD.
- Can be used in modeling physical systems, audio processing, cryptography, cryptocurrency generation, and machine learning.
Multicore and Parallel Systems
- Parallel processing is the simultaneous processing of data and can be considered a non-Von Neumann architecture.
- SIMD performs the same operation on multiple data pieces simultaneously (e.g., GPUs).
- MIMD performs different instructions concurrently on different data pieces, achievable through multicore CPUs.
- MIMD happens on a larger scale with workstations and supercomputers, which can have multiple CPUs, each with multiple cores.
- Distributed computing involves connecting multiple computer systems via a network to work on a problem.
Input/Output and Storage: Input Devices
- Input devices enter data into a computer (keyboard, mouse, microphone, scanner, joystick).
Input/Output and Storage: Output Devices
- Output devices retrieve information from a computer (printer, speakers, monitors, actuators).
Storage Devices: General Considerations
- Storage devices hold data and programs long-term and are non-volatile.
- Considerations include cost per gigabyte, read/write speed, capacity, durability, and reliability.
Storage Devices: Magnetic
- Magnetic storage uses magnetizable material to represent binary sequences (hard disk drives, magnetic tape).
- Has high capacity at a low cost; vulnerable to magnetic fields, x-rays, and physical shock to HDDs.
Storage Devices: Optical
- Optical storage uses lasers (CDs, DVDs, Blu-rays).
- Media is cheap to produce and distribute and is Fairly reliable if not scratched or broken.
Storage Devices: Flash Memory
- Flash memory is non-volatile solid-state memory that can be overwritten (memory sticks, SD cards, SSDs, modern ROM chips).
- Has high read/write speeds, low power consumption, and resistance to sudden movement or shock.
RAM
- RAM (random access memory) is primary memory for temporarily storing programs and data being run by a computer.
ROM
- ROM (read-only memory) is primary memory that can be read from but not written to and is non-volatile.
- Stores the BIOS (basic input/output system)
Virtual / Cloud Storage
- It stores data over the internet instead of on a local device.
- Data is accessible from any location with internet.
Storage Advantages
- Data can be shared easily between people and devices,
- Scalable capacity.
- Backup and security managed externally.
Storage Disadvantages
- Requires a reliable internet connection,
- It can get expensive for large amounts of data,
- Security relies on the service provider.
Operating systems
- An operating system (OS) is the software that manages the computer's hardware and software.
Purposes
- Managing hardware/peripherals, providing a user interface, providing a platform for software, managing system security, managing CPU usage, providing utilities for maintenance, managing memory.
Memory Management
- The memory manager allocates RAM to processes and controls virtual memory.
Interrupts
- If a hardware device or application needs attention, it raises an interrupt with the CPU.
- The relevant interrupt service routine (ISR) is run if the interrupt has higher priority than the current task.
- PC and other registers are copied to the stack. The ISR is loaded by changing the PC to the location in memory of the ISR.
- Previous PC values are restored from memory to the CPU when the ISR completes.
Scheduling
- Schedulers determine how to share processor time among processes.
- Round robin grants each process a fixed time slice.
- First come, first served allows each process to run to completion.
- Shortest job first picks the job with the shortest estimated time.
- Shortest remaining time picks the process estimated to take the least time and switches if a shorter job arrives. Multilevel feedback queues factor in task priority; low-priority tasks get moved up eventually.
Types of Operating Systems
- Multitasking OS allows users to do multiple things at once.
- Multi-user OS allows multiple users to share resources of a powerful machine.
- Distributed OS runs across multiple computers but appears as one system.
- Embedded OS is in hardware and serves a single purpose.
- Real-time OS reacts to input as close to real-time as possible.
Device Drivers & BIOS
- Device drivers tell the OS how to understand and format data to and from external hardware.
- BIOS controls the startup seuqence of the computer and initializes hardware devices.
Virtual Machines
- A virtual machine (VM) simulates a computer in software, can run multiple operating systems, and helps with security; the host OS is unaffected.
Applications
- Application software performs tasks or produces content (word processor, spreadsheet, web browser).
Utilities
- A utility is a small program for system maintenance (disk cleanup, defragmenter, compression, encryption).
Open Source vs Closed Source Software
- Open Source software source code is available, free, amendable.
- Closed Source software source code is proprietary, polished, easier to install, warrantied, customer support available.
Translators
- A translator coverts source code into machine code.
- Types of translators: assembler, interpreter, and compiler.
Assembler
- Converts assembly code into machine code line by line.
- Interpreter converts high level source code into machine code line by line during coding/debbuging.
Compiler
- Compiler converts high-level source code into machine code all at once.
Compilation
- Lexical analysis removes comments/whitespace, turns code into tokens, creates a symbol table to track variables/subroutines.
- Syntax analysis produces an abstract syntax tree, checking valid syntax.
- Code generation converts syntax analysis into object code; optimization can be speed or memory.
Stages of Compilation
- Libraries contain reusable code.
- Linkers incorporate library code into the final program.
- Loaders load an executable file into memory.
Software Development Life Cycle (SDLC)
- Is a process for planning, creating, testing, and deploying high-quality software
Methodologies
- Waterfall, rapid application development (RAD), spiral model, and agile software development
Waterfall Model
- Divides the process into sequential stages, suits large-scale projects, inflexible, problems discovered late, and unsuited to high-risk projects.
Rapid Application Development
- Allows for prototyping, iterative evaluation and refinement, suits projects where some requirements aren't clear, fast product to market, requires heavy client feedback, and does not scale well.
Spiral Model
- Manages risk, requires risk identification, flexible, experts are expensive and complex.
Agile Methods
- Manages changes in requirement.
Extreme programming
- Focuses on high coding quality.
Algorithmic Thinking
- Algorithmic thinking is key to solving any problem, an algorithm is a set of instructions to solve a problem which can be represented as a computer program or recipe for your favorite meal.
Types of Programming Languages
- Paradigms group the language.
- Low level and high level division.
- Imperative and declarative
Machine Code
- Assembly Language is low-level language.
Low Level Language
- Close control of the CPU and efficient/optimized code
High Level Program
- Closer to how we express ourselves. Mixed English and math.
Imperative Programming
- Computer is told what to do step-by-step in Procedural and Object Oriented.
Declarative Logic
- A Qualities of the solution. and has Logic vs functional languages
Procedural Language
- Instructions given in sequence and program broken into key block. such as C and Pascal.
Assembly Language
- is a big topic
- Machine uses binary.
Assemby
- Assembly uses pneumonics that easy for humans each Assembly represents machine code.
- Over here we have the little man computer instruction set that you need to know for your test.
Simple addition Program in Assembly
- Enter a number and store in the accumulator.
- Store Contents of accumulator in Memory.
More complicated Comparison Program in Assembly
- Compare Two number and find which output wins
Modes of Addressing Memory: Immediate
- Data to be used is hardcoded into the instruction.
Modes of Addressing Memory: Direct
- Operand contains the memory address, telling CPU directly where to look.
Modes of Addressing Memory: Indexed
- Final address for the data determined by adding an offset to a base address.
Object-Oriented Programming (OOP)
- OOP organises programs around objects, which have unique attributes and behavior
Main ideas
- Group data/attributes and functions/methods into classes to enccapsulate , reuse code/inheritance, and make it much easier to maintain .
Key object attributes of Object Oriented Programming.
- Object rely on class structure (3).
- Class name, Attributes, and methods.
Object Oriented Languages (Pseudo code examples).
- Class name (for example dwelling). Public values (new key) and Private (security)
Other key OO languages
- Abstraction hide code, implement changes.
- Encapsulation provides better security
- Inheritance is the concept when defining a class.
Object ability in coding
- Use same code to process object according to their type
Compression.
- Involves transmitting files storing number of files, we need to compress data to make storage to a smaller size.
2 main comression types
- Lossy comprestion and lossless compression.
Lossy
- Removes data and irreversible
- Lossless compression does not remove data and always reverisble.
Dictionary Coding.
- Makes use of reduant and repeater data on a text set
Encryption
- Is to only legitimate and authorized use can read.
Symmetric ENcryption
- Same key use to Encrypt and DYcrpty messages.
Asymmetric ENcryption Requires
- Requires 2 diffrent Key to to use to encrypt and decrypt.
As with ENcription
- Having Public Keys and Private Keys helps with security
Hashing
- is generating a value from a string of text using a mathematical function.
Uses of Hashing.
- Faster Searching. And Verify intergity of Files.
Database Fun.
- Is structured collection of data
- Flat type Database is stored in one large table easy to set up.
Relating database tables
- Is ware the database in two tables that link thogehter using Primary and forgien keys.
Key Vocab
- Primary keys, and forgien keys and scodry key
Database Joins
- Foreign keys in one table link to a corresponding primary key in another, establishing relationships.
- Joining tables requires specifying the matching fields using the
ON
clause. - Field names in the
ON
clause do not need to be identical, but the data they contain should correspond. - Example SQL syntax:
SELECT table1.field1, table2.field2 FROM table1 JOIN table2 ON table1.field_name = table2.field_name
.
Transaction Processing
- A transaction is a change to the database, maintaining integrity.
- The database management system ensures transactions move the database from one consistent state to another.
- Records may be locked during transactions to prevent interference from other transactions.
- ACID rules (Atomicity, Consistency, Isolation, Durability) protect the integrity of a database during transaction processing.
- Atomicity: Transactions are completed fully or not at all.
- Consistency: Changes must not violate the database's integrity constraints.
- Isolation: Transactions must not interfere with each other.
- Durability: Completed transactions must persist even in the event of system failure.
Data Integrity
- Data integrity refers to the accuracy and reliability of data.
- Validation and verification techniques help maintain data integrity.
- Referential integrity ensures consistency between tables by enforcing foreign key constraints.
- Foreign key values must match corresponding primary key values
Record Locking
- Record locking prevents multiple users from accessing and modifying the same data simultaneously.
- Tables are locked until a transaction is completed.
- If a transaction fails, the record is unlocked.
Redundancy
- Redundancy involves building multiple clone databases in geographically remote locations.
- This protects against catastrophic system failure, ensuring data availability for critical organizations.
Networks
- Networks are interconnected computer devices used for communication and data sharing.
- Networks provide access to a central data store for all users, as well as resource sharing like printers and storage.
- Centralized data backup becomes easier.
- Network efficiency depends on the network manager.
- Network performance degrades with increased traffic.
- Security concerns are potential drawbacks if not administered properly.
Network Hardware
- NIC (Network Inteface Card): Enables a computer device to connect to a network.
- Switch: Connects devices within a Local Area Network (LAN).
- WAP (Wireless Access Point): Connects wireless devices to a LAN.
- Router: Connects different types of networks.
Transmission Media
- Copper Cables: Transmit electrical signals, used for Ethernet connections.
- Fiber Optic Cables: Utilize thin strands of glass or plastic to transmit data as pulses of light.
- Radio Waves: Transmit data wirelessly using the EM spectrum.
Network Classification by Extent
- LAN (Local Area Network): Covers a small geographic area like a building or small group of buildings.
- WAN (Wide Area Network): Span large geographic area (cities, countries, continents).
- PAN (Personal Area Network): Connects personal devices like phones and tables, typically using Bluetooth.
Network Topologies
- Bus Topology: Attaches nodes along a common backbone; failure of the backbone leads to network failure.
- Ring Topology: Nodes are attached in a circular fashion; data frames are sent in one direction.
- Star Topology: Each node connects to a central switch or hub; cable failures do not affect the whole network.
- Mesh Topology: All nodes are connected to every other node; offers high fault tolerance but is costly to implement in wired setups.
Network Protocols
- Define rules for data transmission between devices on a network.
Common Network Protocols
- TCP (Transmission Control Protocol): Ensures error-free transmission.
- IP (Internet Protocol): Addresses and transfers packets across the internet.
- HTTP (Hypertext Transfer Protocol): Used for accessing and transmitting web documents.
- HTTPS (Hypertext Transfer Protocol Secure): Secure, encrypted form of HTTP.
- FTP (File Transfer Protocol): Used for transferring files.
- SMTP (Simple Mail Transfer Protocol): Used for sending and managing emails.
- POP (Post Office Protocol): Used for retrieving and managing emails.
- IMAP (Internet Message Access Protocol): Advanced protocol for retrieving emails.
Network Protocols and Layering
- Protocols are layered to manage the complexity of network communication.
- TCP/IP model includes these layers:
- Application Layer: handles production, communication, and reception of data
- Transport Layer: establishes connections between networks, ensuring reliable data flow
- Internet Layer: links between networks, creating interoperability between systems
- Network/Link Layer: passes data onto the physical network
Domain Name System (DNS)
- DNS matches domain names (e.g., example.com) to IP addresses through domain name servers.
- URLs (Uniform Resource Locators) uses domain names instead of IP addresses as they are easier to remember than IP addresses.
Circuit Switching vs. Packet Switching
- Circuit Switching: Establishes a physical connection between two communicating entities.
- Packet Switching: Divides messages into packets and sends them across the network via the most efficient route.
Network Security
- Username/password authentication: common and easily circumvented (social engineering, brute force)
- 2FA (two-factor authentication): Sends a code to a phone or requires a security device
- Biometric Identification (fingerprint scanners / facial recognition)
- Firewalls: Monitor and filter incoming and outgoing data
- Uses IP address filtering, packet filtering, and port blocking
- Encryption: Data should always be encrypted before transmission
- Proxies: Placed between a network and a remote resource, masking user's computer
- VPN (Virtual Private Network): Uses encryption to extend a private network across a public network
- Circumvents geo-restrictions and censorship as well as protecting anonymity
Network Architectures
- Client-Server: Clients request resources from a central server.
- Advantages: Clients need not be powerful, data accessible from anywhere, easier maintenance and backup
- Disadvantages: Expensive servers, requires specialist staff, server failure brings down the whole network
- Peer-to-Peer: All computers have equal status, acting as both client and server.
- Advantages: Cheap to set up, Robust, no single peer can bring down the network
- Disadvantages: If a peer goes offline, resources stored on the device can't be accessed, no central software update, no central backup
Web Technologies
- Three components:
- HTML: Content and Structure
- CSS: Presentation and Format
- JavaScript: Interactivity
- HTML: additional HTML may be explained within questions
- CSS: Styling and formatting
- JavaScript: used for outputting information on the screen
Search Engines
- Spiders/Crawlers/Bots build indexes of websites.
- Pages are ranked by links from external sites to assess relevance, ranking depends on the quality of links.
Page Rank Algorithm
- The damping factor (D) can be set between 0 and 1 to reduce potential ranking.
- The damping factor reduces the ranking and also represents the probability that the user will continue.
Client-Side Scripting
- Code runs locally on the user's computer within a web browser.
- Reduces server load and enables client-side data validation.
- Example: Javascript
- Code is visible to users.
Server-Side Scripting
- Code runs on the website's server.
- Has fewer security concerns than client-side scripting.
- Handles SQL and sensitive data processing, protecting it from client-side manipulation.
- Example: PHP
Primitive Data Types
- Character
- String
- Boolean
- Integer
- Real
Binary Representation of Positive Integers
- Computers store and process data using binary numbers.
- Each digit place is multiplied by two moving right to left.
- Converting binary to denary involves adding the values of the place values where there is a one.
- Largest number w/8 bits = 255
- To go from denary to binary, use repeated substraction.
Sign and Magnitude (Binary)
- Most significant bit (MSB) determines the sign: 0 for positive, 1 for negative.
- Has issues like representing 0 in two ways and complicating arithmetic operations.
Two's Complement
- MSB represents a negative value (-128 for an 8-bit number) as opposed to sign and magnitude.
- More effective than sign and magnitude.
- Column headings for 8-bit become -128, 64, 32, 16, 8, 4, 2, 1.
Binary Addition Rules
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 0, carry 1
- 1 + 1 + 1 = 1, carry 1
Binary Subtraction Rules
- 0 - 0 = 0
- 1 - 0 = 1
- 1 - 1 = 0
- 0 - 1 = 1, borrow 1 from the next column
- Conversion is necessary to know how to perform binary addition
Denary to Hexadecimal
- Divide by 16
- Keep the remainder
- If the remainder is 10-15, convert to A-F
Hexadecimal to Denary
- Multiply the correct value by 16^2, 16^1, 16^0
- Add them together
Binary to Hexadecimal
- Divide into nibbles of 4
- Insert 1, 2, 4, 8
- Add
Hexadecimal to Binary
- Convert each hexidecimal numeral to denary
- Use the same 'nibbles' process above to convert to binary
Floating Point Representation In Binary
Mantissa and exponent are used
- Significant digits
- power of 2
- the questions will specify bit size of the mentissa and exponent
Negative Floating Point Example
- Convert to sign and magnitude by inverting the bits and + 1
- The exponent remains 3
- To calculate - move the binary point to the right 3 bits
- Remember if given a binary that begins with a 1- its negative
Normalization of Floating Point Numbers
- Floating point improves accuracy, mantissa shouldn't waste bits with wasted digits at the start
- Floating moves binary around
Floating Point Rules
-
- #'s always in 2's complement
- if the mantissa / exponent begin w/ 0 -its positive 1 = negative 2's complement - + mantissa
- to perform, shift/ add decimal place to the right and exponent grows larger.
Manipulating Bitwise and Masks
- Binary shift- left = # * 2 - shifting left # is multiplied Binary right- # gets divided by 2- results in under/overflow (AND/OR/EXOR)-
- ALU- performs bitwise operations
- and or Exor
Masking- important
- Allows users to manipulate each bit within an operand - by 1 to allow bis through/or block
- mask can be used w/ zero = excludes operand _ exor_
- with a on e checks that there are 2 bits - if same re turn 0 and vise versa
Character Sets
- ASCII =
- represent text value, ASCII
- digits + symbol = represented w/ agreed binary patters
-
- originally based w/ 8-bit binary pattern
- more modern unicode: org 16 - updated to 16 to remove by using series of code pages w/ each page rep language
- original ASCII rep includes part of original set w/ same # values
Data Structures
Arrays
- fixed size, static
- contains same data type stored in contagious memory
- 1D - single set of data/single row, easy to visualize
- 2D - set of data that shows structure in rows/columns
- 3D - collection of 2D arrays; more complex, tables on top of each other
- a Record is accessed through an attribute
- unordered structure, indexes/programs the data ordered through a specific attribute
- ability to access= easier to use
- defining attributes before use = complex to initialize
- a List is ordered and accessed through an index
- index indicates position= no predefined # of elements
- not needing to define attributes= simplifies to initialize
- straight forward index= program
- a Tuple is an immutable list , data not modified
- linked list consists of linked data and links to sort data via various factors
- data is stored and pointers link data in the correct order
- start pointer= identifies #1
- null = identify last
- free = the available free location
- Ques
- add to list
- remove to start
- 1st IN 1st OUT
- implemented by other lists
- either way 2 points
- static / Dynamic
- operations carry ques / function / code depending
- various uses= scheduling.
- Linear / Circle
- linear moves when removed
- data processing and circle- required processing
- the operation needs 2-3 bits
STACKS:
- data ADDED to the top , data REMOVED to top
- last in first out
- PUSH command to insert
- Pop to remove
- top of stack / used to improve orders/items
Data Trees
- Data that doesn't fit into a list
- Nodes - start the structure / known as root node
- parents + / - child- branch joins nodes
- binary
- specific / only allowed up to 2 . child
- left pointer | data right pointer
- alpha
- left subtree contains numbers < root and vice versa
Traverse structures
- pre-order
- inorder
- postOrder
Graphs
- data connections between them= vertices connect w/ data
- undirected
- edges - may be assigned
- directional = connected data
- 2 types of graph = breath/ data
Traverse graphs:
- breath first = visit all adjoining
- Depth first = travels down one route as far as possible before reversing and travel to next as far down the next
HASH Tables
- structure where maps keys= values hash function is needed to make the index ( Hash code / Array) collision- the best way to generate unique index algorithm
Boolean Algebra
- truth tables / notation
Half Adder
- with output and input logic circuit = add in binary -recognize table & gates
Flip Flops
- can store / 2 are combined w/ - d type flip flops
D- type circuits
- clocks- two inputs w/ data delays by 1 + output association /communication and negation
- the laws apply
Carom maps
- useful to keep track of expressions
- maps enable pattern reg / modified as truth table
Legislation
- computer misuse 1990= made illegal to conduct crimes towards the computer
- data protect protect
- 1998, strengthened - control the storage date about ppl GDPR - responsibility for accuracy data
- used by - fair. valid / stated. adequate/ relevant - no longer, transferred only to states = security
Copyright, Design, and Act
- to copy/distribute w/o permission = against the act
Communal
- give licensing when content produce to have license + permission
Regulate investigator Act
- to check communication via internets or bodies/ public places
Moral Ethical
- play important part + changing the environment + skill-set
Automate Decision Making:
- machine is IMPOSSIBLE = use by a human/ depend- accuracy and data
Artificial Intel:
- program from experience
Environment Issues:
- technology stop/ thrown away - E waste pollution / communication waste
Censorship - monitor + control
Lay out color paradigm
- layout = read from RIGHT to left Color = culture - associations change charcter settings = additional letter
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
Understand the roles of the control unit (CU), arithmetic logic unit (ALU), and various registers (PC, MAR, MDR, CIR, ACC) within a CPU. Learn how these components facilitate program execution through the fetch-decode-execute cycle.