ITEC1000 Study Guide
ITEC1000 Study Guide
Major Components:
1. Classrooms: The central hub for student learning and teacher interaction.
2. Office: Handles administrative tasks, policy enforcement, and staff management.
3. Library: Provides educational resources and a space for study and research.
4. Gymnasium: Facilitates physical education and school events.
Environmental Factors:
● Government Policies: Regulations and educational standards that the school must
follow.
● Economic Conditions: Funding and financial support which affect school operations and
resources.
● Technological Advancements: Integration of new technologies in teaching and
administrative processes.
● Community Relations: Engagement with parents and local organizations that influence
school activities and support.
Here is a simplified educational diagram of a typical school system's organization. It shows the
major operational components such as classrooms, administrative offices, library, cafeteria, and
gymnasium. The diagram also highlights how these components are interconnected:
Additionally, the diagram depicts external factors such as government policies, economic
conditions, technological advancements, and community relations, which significantly impact the
school's operations.
2. Explain cloud computing in simple terms. Briefly discuss the major advantages and
risks to an organization when considering the adoption of cloud computing.
Cloud Computing is a server which has a physical appearance located off-site in storage
facilities for an organization with different services, such as Software as a Service (SaaS),
Platform as a Service (PaaS), and Infrastructure as a Service (IaaS).
Advantages:
● Reduced costs
● Scalability
● Reduced maintenance downtime
Risks/Disadvantages:
● Critical security quality
● Potential outages or loss of connectivity
● Requirement of long-term commitment
The zipping application (e.g., WinZip) performed what's known as "lossless compression." This
type of compression reduces the file size without any loss of data quality or content. When you
unzip the file, you retrieve data exactly as it was prior to compression. This contrasts with "lossy
compression," which permanently removes some data to reduce file size, often used in media
files like JPEG images or MP3 audio files.
This algorithm combines two separate compression techniques: LZ77 (Lempel-Ziv 1977) and
Huffman coding.
LZ77 Algorithm
● Basic Principle: LZ77 works by replacing repeated occurrences of data within a file with
references to a single copy of that data existing earlier in the uncompressed data
stream.
● Method: It maintains a sliding window during compression. When it finds a matching
string of bytes that has already been seen in the window, it replaces the match with a
pointer to the previous string's position and length, rather than duplicating the same
string.
Huffman Coding
● Basic Principle: Huffman coding uses variable-length codes for encoding symbols,
depending on their occurrence frequency. More frequent symbols are encoded with
shorter codes, while less frequent symbols are encoded with longer codes.
● Method: It constructs a frequency table for all characters in the input stream, then builds
a binary tree where each leaf node represents a character. The path from the root to a
leaf node gives the Huffman code for the corresponding character.
How DEFLATE Works
1. Parsing: The data is parsed into strings. If a string appears earlier in the data, LZ77
replaces it with a reference back to its first occurrence.
2. Encoding: The output from the LZ77 algorithm, which includes literal bytes and pointers
to previous data, is then encoded using Huffman coding. This step optimizes the
compression by reducing the size of common patterns and symbols.
The combination of these two techniques makes DEFLATE effective for a wide variety of data
types, achieving good compression ratios while ensuring that no data is lost, which is critical for
many applications beyond just archiving files, including network data transmission and error
checking.
6. Write a pseudocode (little man’s program) to add three numbers and display the result.
To create a pseudocode for a Little Man Computer (LMC) program that adds three numbers and
displays the result, we'll assume that the three numbers are provided in specific mailbox
locations. Here, I'll use mailboxes 90, 91, and 92 to store these three numbers. The program will
then add these numbers and store the result in another mailbox, and finally, it will output the
result.
START:
// Initialize the accumulator to zero
LDA ZERO // Load zero into the accumulator to clear it
In this pseudocode:
● LDA (Load) loads a value into the accumulator.
● ADD adds the value at the specified mailbox to what's currently in the accumulator.
● STA (Store) saves the value from the accumulator into a specified mailbox.
● OUT outputs the value in the accumulator.
● HLT halts the program.
● DAT is used to declare a data storage mailbox with an optional initial value.
7. Subtract 101012 from 110011012 and show the full subtraction process.
To subtract the numbers 101012 and 110011012, we first need to align them properly and then
perform the subtraction. Here is the full subtraction process:
110011012
- 101012
------------
Now, let's subtract each column, starting from the rightmost digit:
1. Subtract the units column (2 - 2 = 0).
2. Subtract the next column to the left (1 - 1 = 0).
3. The next column (0 - 0 = 0).
4. The next column (1 - 0 = 1).
5. The next column (1 - 0 = 1).
6. The next column (0 - 0 = 0).
7. The next column (0 - 1 = -1; since you cannot have negative digits in subtraction, borrow
1 from the next higher digit, turning the 1 into a 0 and the 0 becomes 10, then 10 - 1 =
9).
8. The next column now becomes (0 - 0 = 0).
9. The highest column (1 - 0 = 1).
So, rearranging the columns and carrying out the correct borrowings:
110011012
- 101012
------------
109910000
Thus,
110011012−101012=109910000