0% found this document useful (0 votes)
3 views

ITEC1000 Study Guide

The document outlines various topics including the structure of a school organization, the concept of cloud computing, number base conversions, data compression techniques, pseudocode for arithmetic operations, and binary subtraction. It describes the major components of a school, their interconnections, and environmental factors affecting operations. Additionally, it explains cloud computing advantages and risks, details a lossless compression algorithm, and provides examples of number conversions and arithmetic operations.

Uploaded by

jouhanp2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

ITEC1000 Study Guide

The document outlines various topics including the structure of a school organization, the concept of cloud computing, number base conversions, data compression techniques, pseudocode for arithmetic operations, and binary subtraction. It describes the major components of a school, their interconnections, and environmental factors affecting operations. Additionally, it explains cloud computing advantages and risks, details a lossless compression algorithm, and provides examples of number conversions and arithmetic operations.

Uploaded by

jouhanp2002
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

1. Consider a representation of a school with which you are familiar.

Identify the major


components that characterize the primary operations within the organization and draw a
simplified diagram that represents the system’s organization. Show and identify the links
that connect the various components. Identify the major environmental factors that
impact the organization.

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.

Connections Between Components:


●​ Classrooms and Library are connected to share resources and support academic
research.
●​ Offices are linked to all components to oversee operations and provide central
coordination.
●​ Gymnasium links with Classrooms to integrate physical education into the school
curriculum.

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:

●​ Classrooms are linked to the library for resource sharing.


●​ Administrative offices connect to all units to provide oversight and coordination.
The gymnasium is connected to classrooms to integrate physical education into the
curriculum.

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

3. Use the division conversion method to convert 3212_10 into base 8.

Conversion of 3212 (Decimal) to Base 8


1.​ Divide the number by 8, noting the quotient and remainder.
2.​ The remainder becomes the least significant digit (rightmost) of the new base number.
3.​ Continue dividing the quotient by 8 until the quotient is 0.
4.​ The remainders, read from bottom to top after the last division, give you the number in
the new base.

Let's perform the conversion for 3212:


1.​ 3212 ÷ 8 = 401 remainder 4
2.​ 401 ÷ 8 = 50 remainder 1
3.​ 50 ÷ 8 = 6 remainder 2
4.​ 6 ÷ 8 = 0 remainder 6
Reading the remainders from bottom to top, 3212 in decimal converts to 6214 in base 8.

4. Multiply 1101_2 by 101_2.


5. Let you use a zipping application (e.g. WinZip) to zip your data (Your data could be a
collection of text files, image files, or video files) into a single .zip file. After zipping, you
notice that the size of the .zip file gets reduced significantly compared to the total file
size of your data. Now, you unzip the .zip file and see your data is back to its original
format and size. What type of compression did that zipping application (e.g. WinZip) do?
Explain a commonly used algorithm for that type of compression.

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.

Commonly Used Algorithm for Lossless Compression: DEFLATE

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

// Add the first number to the accumulator


ADD NUM1 // Add the value in mailbox 90 to the accumulator
STA RESULT // Store the result back in another mailbox

// Add the second number to the accumulator


ADD NUM2 // Add the value in mailbox 91 to the accumulator
STA RESULT // Store the updated result

// Add the third number to the accumulator


ADD NUM3 // Add the value in mailbox 92 to the accumulator
STA RESULT // Store the final result

// Output the result


LDA RESULT // Load the result
OUT // Output the value in the accumulator

HLT // Halt the program

// Data and storage locations


ZERO: DAT 0 // A place to store the number 0
NUM1: DAT // First number to add (stored in mailbox 90)
NUM2: DAT // Second number to add (stored in mailbox 91)
NUM3: DAT // Third number to add (stored in mailbox 92)
RESULT: DAT // Storage for the result (e.g., mailbox 93)

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

You might also like