Computer science concepts explained using code snippets written in Kannada, a South Indian language.
The examples in the slides can be used as a guide to writing Arduino programs in Indian languages.
More information is available at http://www.aiaioo.com/arduino_in_local_languages
3. What do you mean by Computer Science Concepts?
Getting an understanding of
1. how a computer works
2. how it is programmed
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
8. Computer Science Concepts
PowerPoint
What is the problem?
Word
Excel
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
1. These are boring
2. They were designed to be used
without knowing how a computer
works
9. Computer Science Concepts
So how do you learn computer
science concepts?
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
1. Learn how a computer stores and
processes information
2. Learn how to program a computer to
do various things
10. Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Computers Students
You can use Arduino to …
1. Demonstrate how a computer stores
and processes information
2. Teach how to program a computer to
do various things
11. Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Computers Students
You can use Arduino to …
1. Demonstrate how a computer stores
and processes information
2. Teach how to program a computer to
do various things
And you can do it in Kannada
13. Computer Concepts
Explaining the basic things a computer can do:
1) Storing Information
2) Arithmetic Operations
3) Logical Operations
4) Bitwise Operations
5) Transfer of Control
6) Repeating Actions
Teaching students to program a computer to do those things.
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
14. Storing Information
A computer stores information as a series of 0s and 1s.
000 = 0
001 = 1
010 = 2
011 = 3
100 = 4
101 = 5
110 = 6
111 = 7
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Binary numbers
Decimal numbers
Memory location
15. Writing a Program for Storing Information
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location
You can give it a name
x
16. Writing a Program for Storing Information
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location
You can give it a name
x
int x = 2;
17. Writing a Program for Storing Information in Kannada
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location
You can give it a name
ಕ
ತನುಂಬುಂಕ ಕ = ೨;
18. A Program to Read Information
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location
You have given the location a name
ಕ
Serial.print(ಕ);
Use that name to display the stored information
19. A Program to Read Information in Kannada
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location
You have given the location a name
ಕ
ಅನ್ನಕರಮ.ಛಾಪಿಸನ(ಕ);
Use that name to display the stored information
20. Arithmetic Operations
A computer manipulates information stored as 0s and 1s.
000 = 0
001 = 1
010 = 2
011 = 3
100 = 4
101 = 5
110 = 6
111 = 7
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
Memory location ಕಿ
Operations
Addition, Subtraction, Multiplication, Division, Remainder
21. Writing a Program for Adding Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location x
x + y
Memory location y
22. Adding Two Numbers (names in Kannada)
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ + ಕಿ
Memory location ಕಿ
23. Subtracting Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ - ಕಿ
Memory location ಕಿ
24. Multiplying Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ * ಕಿ
Memory location ಕಿ
25. Dividing Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ / ಕಿ
Memory location ಕಿ
26. Remainder from Dividing Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ % ಕಿ
Memory location ಕಿ
27. Bitwise Operations
A computer manipulates information stored as 0s and 1s.
000 = 0
001 = 1
010 = 2
011 = 3
100 = 4
101 = 5
110 = 6
111 = 7
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
Memory location ಕಿ
Operations
XOR, Shifting
28. XOR of Two Numbers
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ ^ ಕಿ
Memory location ಕಿ
29. Shifting a Number
Boxes where information is stored are called memory locations.
010 = 2
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ >> 1
30. Logical Operations
A computer manipulates information stored as 0s and 1s.
000 = 0
001 = 1
010 = 2
011 = 3
100 = 4
101 = 5
110 = 6
111 = 7
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
Memory location ಕಿ
Operations
Equal, Not Equal, Greater, Lesser, And, Or, Not
31. Two Numbers Being Equal
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ == ಕಿ
Memory location ಕಿ
32. Two Numbers Being Unequal
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ != ಕಿ
Memory location ಕಿ
33. One Number Being Less Than Another
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ < ಕಿ
Memory location ಕಿ
34. One Number Being Less Than or Equal to Another
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ <= ಕಿ
Memory location ಕಿ
35. One Number Being Greater Than Another
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ > ಕಿ
Memory location ಕಿ
36. One Number Being Greater Than or Equal to Another
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ >= ಕಿ
Memory location ಕಿ
37. And
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
011 = 3
100 = 4
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ >= ಕಿ && ಕನ > ಕ
Memory location ಕಿ
Memory location ಕು
Memory location ಕೆ
38. Or
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
011 = 3
100 = 4
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಕ >= ಕಿ || ಕನ > ಕ
Memory location ಕಿ
Memory location ಕು
Memory location ಕೆ
39. Not
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
! ( ಕ >= ಕಿ )
Memory location ಕಿ
40. Not
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
! ( ಕ >= ಕಿ )
Memory location ಕಿ
41. Transfer of Control
A computer manipulates information stored as 0s and 1s using
instructions stored as 0s and 1s.
000 = 0 000 = assign
001 = 1 000 = assign
010 = 2 010 = +
011 = 3 011 = -
100 = 4 100 = >
101 = 5 111 = jump
110 = 6 001 = print
111 = 7 001 = print
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory Instructions
42. Transfer of Control
A computer manipulates information stored as 0s and 1s using
instructions stored as 0s and 1s.
000 = 0 int a = 1 000 = assign
001 = 1 int b = 2 000 = assign
010 = 2 a = a + b 010 = +
011 = 3 b = a - b 011 = -
100 = 4 a = a - b 100 = -
101 = 5 (a > b) 100 = >
110 = 6 if (a > b) 111 = jump
111 = 7 print a 001 = print
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory Instructions
43. If
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location a
if ( a < b )
Memory location b
44. If (ಆದರ in Kannada)
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಕ
ಆದರ ( ಕ < ಕಿ )
Memory location ಕಿ
45. Repeating Actions
You can repeat actions by jumping backwards.
000 = 0 int i = 0 000 = assign
001 = 1 (i >= 10) 100 = >
010 = 2 if (i >= 10) 111 = jump
011 = 3 sum + a 010 = +
100 = 4 sum = sum+a 000 = assign
101 = 5 (i < 10) 100 = >
110 = 6 if (i < 10) 111 = jump
111 = 7 print sum 001 = print
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory Instructions
46. For
Boxes where information is stored are called memory locations.
000 = 0
000 = 0
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location sum
int sum = 0, i = 0;
for (; i<10; ++i) {
sum = sum + i; }
Memory location i
47. For (ಕರಮವಾಗಿ in Kannada)
Boxes where information is stored are called memory locations.
000 = 0
000 = 0
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location ಒುಂಟಿಗ
ತನುಂಬುಂಕ ಒಟಿಿಗ =0,ಐ=0;
ಕರಮವಾಗಿ (;ಐ<೧೦;++ಐ){
ಒಟಿಿಗ = ಒಟಿಿಗ +ಐ; }
Memory location ಐ
48. While
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
000 = 0
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location a
int sum = 0;
while (sum+a < b) {
sum = sum + a; }
Memory location b
Memory location sum
49. While (ಆಗನವಾಗ in Kannada)
Boxes where information is stored are called memory locations.
010 = 2
101 = 5
000 = 0
Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Memory location a
ತನುಂಬುಂಕ ಒ = 0;
ಆಗನವಾಗ (ಒ+ಕ<ಕಿ) {
ಒ = ಒ + ಕ; }
Memory location b
Memory location sum
51. Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
What can you teach using Arduino?
Electronics
Analog Electronics Digital Electronics
52. Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Analog Electronics
Image from http://www.arduino.org/products/boards/4-arduino-boards/arduino-uno-wifi
Analog Pins
53. Aiaioo Labs (www.aiaioo.com)Arduino in Indian Languages
Writing Analog Values
int pin=3;
analogWrite(pin,
255);
Image from http://www.simplelabs.co.in/content/induino-r5-arduino-r3-usb-clone-board