# G11

Topic 1—System fundamentals (20 hours)

Topic 2—Computer organization (6 hours)

Topic 3—Networks (9 hours)

Topic 4—Computational thinking, problem-solving and programming (45 hours)

Topic 5—Abstract data structures (23 hours)

Topic 6—Resource management (8 hours)

Topic 7—Control (14 hours)

Week 1 Lesson  Binary representation & Logic Gates

At the end of Lesson, students  are expected to:

• Understand Boolean operators : AND, OR, NOT, NAND, NOR and XOR
• Able to construct simple truth tables with no more than 3 inputs

Lesson Continued

• Construct logic diagrams based on no more than 3 inputs
• Able to construct PHP code that will perform an action based on logical conditions

Students to draw 3 truth tables working in teams ( on white board ) (15mins)

Students to draw the associated logic diagrams for truth tables ( on white board ) ( 15 mins )

Student application of gate using simulation Gate Simulator Click here (10 mins )

Last 20 plus mins Students update their blogs with answers to the questions below please see student from last year on how to set up your  Blog click here :

Update your BLOG :  Translate the the following logical expression into both a Truth Table

(a OR b) AND ( a NAND b)

Q1 Identify a single logical operator  that is the equivalent

Q2 Create truth tables for the following sets of Boolean logic

Precedence  NOT=high AND medium OR low

•  (A and B) or C
• not A and (B or C)
• not C and (A and B)

Week 2 (15Aug2018)  Tpic 2   Computer Architecture Data Representation

• Understand data representation ( ASCII and UNICODE )
• Be able to convert from Binary to Hex and Vice versa
• Understand how colors are represented using Hex
• Describe the difference between primary and secondary memory

Compuational Thinking ( Topic 45 Hours )

Before Moving to the next topic spend 15 mins applying what you have learnt using logic operators ( AND,OR and NOT) - Do not go past exercise near_hundred ( see image below ) - this falls under the computational thing Topic...

• 1
Covert  the following   93 to binary   /    Convert 2A to Binary /   Convert 133 to Binary
• 2
Convert 11111111 to Hexadecimal  /  Convert 00000000 to Hex /  Convert  00011111 to Hex
• 3
Explain how colors are represented by using RGB
• 4
How many colors can be represented
• 5
Explain the limitations of ASCII and why we need UNICODE?

Watch at Home for Next Lesson on Friday 17th August

Week 2 Lesson  Computer Architecture ( CPU, Secondary, Primary, Cache & Instruction Cylce)

• Explain memory hierarchy, memory organization, memory storage devices and cache memory
• All students can draw block diagram of the Von Nuemann model and understand the importance of this model
• Understand the basic workings of the CPU by using the Little Man Computer

## The inside of a computer is as dumb as hell but it goes like mad!”

— Richard P. Feynman

Teacher led discussion on Memory and the Von Nuemann model

Key Vocab Memory : RAM ROM SECONDARY PRIMARY PERSISTENT VOLATILE HIT RATE  CACHE  DATA DECAY

## Fetch - Decode - Execute - Store Cycle

Little Man Computer references

 Numeric code Mnemonic code Instruction Description 1xx ADD ADD Add the value stored in mailbox xx to whatever value is currently on the accumulator (calculator).Note: the contents of the mailbox are not changed, and the actions of the accumulator (calculator) are not defined for add instructions that cause sums larger than 3 digits. 2xx SUB SUBTRACT Subtract the value stored in mailbox xx from whatever value is currently on the accumulator (calculator).Note: the contents of the mailbox are not changed, and the actions of the accumulator are not defined for subtract instructions that cause negative results - however, a negative flag will be set so that 8xx (BRP) can be used properly. 3xx STA STORE Store the contents of the accumulator in mailbox xx (destructive).Note: the contents of the accumulator (calculator) are not changed (non-destructive), but contents of mailbox are replaced regardless of what was in there (destructive) 5xx LDA LOAD Load the value from mailbox xx (non-destructive) and enter it in the accumulator (destructive). 6xx BRA BRANCH(unconditional) Set the program counter to the given address (value xx). That is, value xx will be the next instruction executed. 7xx BRZ BRANCH IF ZERO (conditional) If the accumulator (calculator) contains the value 000, set the program counter to the value xx. Otherwise, do nothing.Note: since the program is stored in memory, data and program instructions all have the same address/location format. 8xx BRP BRANCH IF POSITIVE (conditional) If the accumulator (calculator) is 0 or positive, set the program counter to the value xx. Otherwise, do nothing.Note: since the program is stored in memory, data and program instructions all have the same address/location format. 901 INP INPUT Go to the INBOX, fetch the value from the user, and put it in the accumulator (calculator)Note: this will overwrite whatever value was in the accumulator (destructive) 902 OUT OUTPUT Copy the value from the accumulator (calculator) to the OUTBOX.Note: the contents of the accumulator are not changed (non-destructive). 0 HLT HALT Stop working. DAT DATA This is an assembler instruction which simply loads the value into the next available mailbox. DAT can also be used in conjunction with labels to declare variables. For example, DAT 984 will store the value 984 into a mailbox.

Class Activity

Type in these example instructions to that will add 2 numbers:    INP, STA 99, INP, ADD  99, OUT, HLT

The instructions are held in RAM / Memory

The instruction register holds the instruction code

First of all, type in the following code in the LMC as shown in the animation in order to see how it works

INP
STA 20
OUT
HLT

Where is the input stored?

Where are the program instructions stored?

The same can be achieved the following way too - specifying a variable - A in this case - without specifying a particular memory cell.

INP
STA A
OUT
HLT
A    DAT

Here is the code to subtract 2 numbers , try it out

INP
STA A
INP
STA B
LDA A
SUB B
OUT
HLT
A    DAT
B    DAT

Activity Challenge  -  I will be marking Question 1 below Only , please answer using google classroom

• write assembler to accept 3 numbers as input and output the sum

## Assessment Monday

Monday will be assessment day : please review the following Logic Operatotrs,

• Boolean Logic Operators
• Truth Tables
• Types of memory
• The Von Nuemann model

## Week 3  22 August 2018

• Students can describe the difference between secondary and primary memory
• All students understand the function of RAM memory within a computer
• Describe how having a memory cache can improve speed of the computer CPU
• Understand the purpose of ROM when a computer is scwitched on ( a start up program that can not be erased )

Teacher review of memory types ( primary secondary and cache )

Students to prepare 3 minute presentation describing the role that Secondary storage , Primary storage and ROM play in the operation of a modern computer.  Lose points if over 3 minutes.

Extension/Homework -  Actvity   -   Complete CodingBat activity ( items marked with green tick ) below. Click Here to Begin/Complete the logic exercises ( Nick and Natina Excucluded)

## Week 3  24 August 2018

Week 3 Lesson  Computer Architecture ( CPU, Secondary, Primary, Cache & Instruction Cycle)

• Review Von Nuemann Model
• Understand the difference between RAM can be  Dynamic or Static ( describe advantages / disadvantages
• High level understanding of the operating system ( will cover in more detail under option 6.1.5-6.1.8 role of operating system)

Students to give presentation ( no prompts )

teacher brief overview of the role of the operating system

## Learning Objectives

• Understand what pseudo code is
• Understated the term recursion and base case
• Able to describe program efficiency using N notation

// Find Name Rollins College in Directory

Step 0 Pickup book

Step 1 Open in Middle

Step 2 Look at Names

Step 3 If Rollins College is among names

Step 5      Else if earlier in book

Step 6               Open to middle left half of book

Step 7               Go back to Step 2

Step 8     Else if later in book

Step 9                 Open to middle right half of book

Step 10               Go back to Step 2

Step 11       Else

Step 12                 Stop

Verb Actions -   Boolean expressions (T/F) answers - Loop / Recursive

This is an example of psudeo code . Note the recursive nature Go Back to Step 2  with Base Case ( Exit Case ) when

Big O Notation describes the worst case scenario for run time, example search an unsorted  list size N worse case is N steps  (O)n

What is Syntax?

Syntax  : English sentence "dog car boy" ( about grammar) invalid as no verb in sentence

In Python indentation, : after if statements ( these are found at compile time)

Semantics: Does the sentence have valid meaning "Colorless green ideas sleep furiously"  is grammatically/syntactically  correct , but what does it mean?  ( these are found at run time)

Create a flow chart to represent the following algorithm. Prompt the user for input  X and Y Please refer to this document for IB flowchart approach click here

if x < y :

print ( "x less than y" )

else if  x > y :

print ( "x greater than y" )

else:

print ( "x equal y" )

Week ? Option Web Science Searching the Web

Lesson  Searching the Web ( 6 hours )

Lesson  The evolving Web ( 6 hours )

Cloud Computing

Control Systems

Students to investiage and give class prsentation select from

1. Automatic Doors
2. Heating systems
3. Taxi meters
4. Elevators
5. Washing machines
6. Domestic robots
7. Traffic lights
8. Discussion of social impacts and ethical considerations associated with the use of embedded systems (Tagging prisoners, surveillance, CCTV) (Calixto)

Collection of activities and exercises

Activities Find the error in the code and BIG O efficiency in loops  click here

Logic Gates applying to PHP and create code based on log conditions  click here

Web Science Activities