SlideShare a Scribd company logo
Introduction to computers and 
programming
Content 
• Hardware 
• Information storage 
 RAM, ROM 
 HD, DVD 
• Display 
 Images 
 Characters (fonts) 
• File system/type 
 Encryption 
 Compression 
• Network 
 Protocols 
 Packets 
• Programming 
 Algorithm 
 Pseudocode 
 Flowchart 
• Languages 
• Source code 
 Example
The computer
Internally
The connections
Information storage 
• 1 bit 
• 8 bits 
• 16 bits 
• 32 bits 
• 64 bits 
• bit (1 or 0) 
• byte (octet) (28) 
• word (216) 
• double (232) 
• long double (264) 
Encoding information on a fixed element of length n with a 
base b gives bn non-redundant possibilities
Information coding 
• Binary 
 0 or 1 
• Octal 
 0-7 
• Hexadecimal 
 0-9+A-F 
• Decimal 
 0-9 
• How to count 
128 64 32 16 8 4 2 1 
1 0 1 1 0 1 0 1 
• 128+32+16+4+1= 
 181 (decimal) 
 265 (octal) 
 B5 (hexadecimal) 
• Signed vs unsigned 
 0 to 255 
 -127 to +127
Operations on bits 
• Booleans: 
 0 = false = no 
 1 = true = yes 
• Operators: 
 AND 
 OR 
 XOR 
 NOT 
• Example tables 
AN 
D 
0 1 
0 0 0 
1 0 1 
OR 0 1 
0 0 1 
1 1 1 
XO 
R 
0 1 
0 0 1 
1 1 0
RAM/ROM 
Memory mapping 
Address Values 
0000 
0001 
0002 
.. 
.. 
.. 
.. 
FFFF 
• Size reminder: 
• Kilobyte Kb 210 ~103 
• Megabyte Mb 220 ~106 
• Gigabyte Gb 230 ~109 
• Terabyte Tb 240 ~1012 
• Petabyte Pb 250 ~1015 
• … 
1 0 1 1 1 0 0 1 
0 0 0 0 1 1 1 1 
1 1 1 0 0 0 1 1 
0 0 1 0 0 1 0 0
HD/DVD 
track 
sector 
head
Display 
• Screen pixel or dots 
• Color coding: 32 bits 
• 1 pixel = 3 bytes of color (RGB)+1 
byte alpha channel (transparency) 
• 1600x1200x4bytes=7,5 Mb! 
• Fonts 
 Bitmap 
 Vectors 
 TrueType, OpenType, 
PostScript 
QuickTime™ et un 
décompresseur TIFF (non compressé) 
sont requis pour visionner cette image.
Keyboard/Mouse 
• Each key (or combination 
of keys) of the keyboard 
sends a code to the 
computer. 
• The code is interpreted and 
converted to the 
corresponding ASCII or 
Unicode number. 
• The mouse movements 
 1 to 4 bytes (vertical & 
horizontal) 
• Buttons 
 Clicked, pressed, rolled 
buttons
ASCII & Unicode 
• ASCII 7/8 bits 
• Unicode 
 UTF-8/16/32 bits 
 ISO-8859 (Latin) 
• od -c od -h 
•
Software layers 
Files 
Software 
User Interface 
Operating System 
ROM 
Hardware 
Data (.doc, .mp3) 
Word, scripts, mail, web browser… 
Windows 
BIOS 
CLI, X-Windows 
Linux 
CPU, RAM, HD, DVD 
Windows 
Quartz 
MacOSX 
Firmware
File systems 
• Method the OS uses to store information 
 Storage unit, directories, subdirectories (Windows, 
VMS) 
 Single arborescence (Linux, MacOSX, all Unix) 
• What exactly is a file? 
 a piece of information (text, graphic, data, music 
program, script) 
 it is identified by a name and an logical address (or 
path) 
 other informations: date, size, type, creator, 
ownership, physical address…
File system organisation 
Disk 1 Disk 2 
Directories 
Subdirectories 
DOCS PROGS 
WORD EXCEL 
CONFIG DATA 
EXPT1 EXPT2 
Windows 
/ 
/usr /home 
local phil john 
bin lib 
emacs X11 
Unix 
C: D: 
Disk 1 
Disk 2
Path 
• The path is the logical address used by 
the system or the user to locate a file. 
• Example: 
/bd_du_Palais/35/etage/4/appart/12/Dupont_ Jean.txt 
filename 
suffix 
path
File types 
• Executable 
 .exe 
 .app 
 Unix requires « x » 
• Data 
 Text (.txt) 
 Music (.mp3) 
 Image (.jpg, .gif) 
 Movie (.mpg, .mov) 
 Binary (.bin) 
• Special cases in Unix 
 STDIN 
 STDOUT 
 STDERR
Encryption / compression 
• Compression 
 Reducing the size of files 
 E.g., .mp3, .gz, .jpg, .zip 
• Encryption 
 Protecting your privacy 
 E.g., .pgp 
• Packing 
 Grouping the files 
 E.g., .tar
Networks 
• Direct 
 USB 11Mb-480Mb 
 Ethernet 10Mb-1Gb 
• Wired 
 Modem 56Kb 
 ADSL 600Kb-8Mb 
 LAN 10Mb-10Gb 
• Wireless 
 Bluetooth 1Mb-20Mb 
 WIFI (AirPort) 11Mb-54Mb
Network (ethernet or wireless) 
• Computer talk to each 
other via network 
protocols 
 ip, tcp, http, ftp, … 
• TCP/IP 
 transmission control 
protocol/internet protocol 
• Handshaking 
• Transmission 
• Ackowledgement 
• DNS 
 Domain Name Server 
• URL 
 Universal Resource 
Locator 
• IP addess 
 192.42.197.51
DNS reminder 
2 3 
Primary DNS 
Root DNS 
Local DNS 
1 
5 4 
6 
www.expasy.org 
Client query Target server 
129.194.8.64 
*.org 
dns.anywhere.net 
client.anywhere.net 
www.expasy.org ??
Packets 
The data travels within 
units called packets
Packet breakout 
Usual TCP/IP payload per packet: 512 bytes
Introduction to programming
What is a program? 
• How to cook? 
• The algorithm 
• Are you a programmer?
Pseudocode 
• This is the pseudocode for a game of Monopoly
Flowcharts
Flowcharts details
Languages 
• Low level (processor dependent) 
 Machine code, assembler 
• High level: structured, procedural 
 Fortran, C, Pascal… 
• High level: object oriented 
 C++, Java, C#, Perl, Objective-C… 
• Virtual machines 
 Java, C#… 
• Scripting 
 Perl, Python, JavaScript…
Source code -> Object code 
• Compiler+linker 
 Fortran, C, Pascal, C++… 
• Interpreter 
 Basic, Perl… 
• Intermediate 
 Java 
• Compiler+linker 
 Fast to execute, but slow 
to debug 
• Interpreter 
 Slow to execute, but fast 
to debug (no need to 
recompile) 
• Intermediate 
 Slow…
Source code 
• Instructions 
 Statement, blocks 
 Affectation 
 Operators 
 Loops 
 Tests 
 Subroutines 
 Comments 
• Data structures 
 Variable 
 List 
 Array 
 Hash 
 Pointers 
 Objects
Source code (2) 
• Statement, blocks 
 One or more 
instructions for the 
processor 
• Affectation 
 Change to a variable 
• Operator 
 affect one or more 
variable 
 + * - / AND OR NOT… 
• Variable 
 A region in memory 
that can be modified 
 Exists in different 
types 
 Scalar, char, numeric, 
boolean 
 List, array 
 Hash 
 Combination->data 
structure
Source code (3) 
• Loops 
 Allow the computer to 
repeat blocks 
• Tests 
 Decide what to do 
• Subroutines 
 Programs frequently 
called (functions) 
• Comments 
 The most important 
lines of the source 
code… 
• Pointers 
 Reference to region in 
memory (address) 
• Objects 
 Combination of data 
and code
Example: a text to treat 
« Noon rings out. A wasp, making an ominous sound, a sound akin to a klaxon or a 
tocsin, flits about. Augustus, who has had a bad night, sits up blinking and purblind. Oh 
what was that word (is his thought) that ran through my brain all night, that idiotic word 
that, hard as I'd try to pun it down, was always just an inch or two out of my grasp - fowl 
or foul or Vow or Voyal? - a word in a quizz which, by association, brought into play an 
incongruous mass and magma of nouns, idioms, slogans and sayings, a confusing, 
amorphous outpouring which I sought in vain to control or turn off but which wound 
around my mind a whirlwind of a cord, a whiplash of a cord, a cord that would split again 
and again, would knit again and again, of words without communication or any possibility 
of combination, words without pronunciation, signification or transcription but out of 
which, notwithstanding, was brought forth a flux, a continuous, compact and lucid flow: an 
intuition, a vacillating frisson of illumination as if caught in a flash of lightning or in a mist 
abruptly rising to unshroud an obvious sign - but a sign, alas, that would last an instant 
only to vanish for good. » 
Gilbert Adair
Result… 
a=97 
b=15 
c=26 
d=35 
f=23 
g=32 
h=44 
i=90 
j=1 
k=5 
l=33 
m=17 
n=91 
o=104 
p=15 
q=1 
r=43 
s=59 
t=77 
u=52 
v=4 
w=31 
x=2 
y=13 
z=2 
Do you see any problem?? 
Try with this: 
« The quick brown fox, jumps 
over the lazy dog. »
Flowchart
Source code example 
#!/usr/bin/perl -w # essential line of all perl scripts 
$filename = "avoid.txt"; # affect « avoid.txt » to the variable $filename 
# open the file, or exit 
open(FILE, $filename) || die "Cannot open file ‘$filename’nn"; 
@text = <FILE>; # add each line of the file to an array 
close FILE; 
foreach $line (@text) { # read one line from the array into $line and repeat for each line 
@table = split(//,$line); # read each character of the line in an array 
while ($char=pop(@table)) { # read one character of the array 'table' and repeat for all 
$char =~ s/[^a-z]//; # keep only the alphabetical character a to z 
if ($char) { # check if the character exists and execute the block 
$count{$char}++; # if yes, increment by one the hash 'count' 
} 
} 
} 
# print each character and its number of occurence one per line 
foreach $c (keys %count) { 
print "$c=$count{$c}n"; 
} 
exit; # quit the program
Tips 
• Think about your 
problem 
• Create a flowchart 
• Create the 
pseudocode 
• Verify the memory 
used by your 
variables 
• Write the code 
• Test the code 
 For all the possible 
functions or cases (if 
possible) 
 Give it to users as a 
beta (if not possibe) 
 Sell it (if you work for 
Microsoft©… ;-) 
• Debug
Summary of the week 
• Monday 
 Intro computers & 
programming 
 Intro Unix 
 Tutorial Unix 
• Tuesday 
 Intro Perl 
 Regexp & Perl In-liners 
• Wednesday 
 Object Oriented 
programming 
 BioPerl 
 EMBOSS 
• Thursday 
 Database indexing 
 BLAST 
 HTML & cgi-bin 
• Friday 
 Finish exercises 
 Users questions
Unix 
• Next presentation… 
VVaassssiilliiooss aalliiaass 
UUnniixxMMaann!!!!!!

More Related Content

Similar to COMPUTER INTRODUCTION

Intro compute
Intro computeIntro compute
Intro compute
GHOTRAANGEL
 
Intro computeRRR
Intro computeRRRIntro computeRRR
Intro computeRRR
GHOTRAANGEL
 
R tech introcomputer
R tech introcomputerR tech introcomputer
R tech introcomputer
Rose Rajput
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computersVisualBee.com
 
C101 – Intro to Programming with C
C101 – Intro to Programming with CC101 – Intro to Programming with C
C101 – Intro to Programming with C
gpsoft_sk
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristicsSher Shah Merkhel
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristics
Anwal Mirza
 
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
midnite_runr
 
Designs, Lessons and Advice from Building Large Distributed Systems
Designs, Lessons and Advice from Building Large Distributed SystemsDesigns, Lessons and Advice from Building Large Distributed Systems
Designs, Lessons and Advice from Building Large Distributed Systems
Daehyeok Kim
 
Session01_Intro.pdf
Session01_Intro.pdfSession01_Intro.pdf
Session01_Intro.pdf
RahnerJames
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
Olivier Bonaventure
 
add9.5.ppt
add9.5.pptadd9.5.ppt
add9.5.ppt
AshenafiGirma5
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristics
dilip kumar
 
Bioinformatics v2014 wim_vancriekinge
Bioinformatics v2014 wim_vancriekingeBioinformatics v2014 wim_vancriekinge
Bioinformatics v2014 wim_vancriekinge
Prof. Wim Van Criekinge
 
Philip polstra
Philip polstraPhilip polstra
Philip polstra
Philip Polstra
 
Computer Concepts
Computer ConceptsComputer Concepts
Computer Concepts
Phoebe Kim
 
Debugging multiplayer games
Debugging multiplayer gamesDebugging multiplayer games
Debugging multiplayer games
Maciej Siniło
 
Inside The Computer
Inside The ComputerInside The Computer
Inside The ComputerNasir Jumani
 
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
Trends in Programming Technology you might want to keep an eye on af Bent Tho...Trends in Programming Technology you might want to keep an eye on af Bent Tho...
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
InfinIT - Innovationsnetværket for it
 
Максим Харченко. Erlang lincx
Максим Харченко. Erlang lincxМаксим Харченко. Erlang lincx
Максим Харченко. Erlang lincx
Alina Dolgikh
 

Similar to COMPUTER INTRODUCTION (20)

Intro compute
Intro computeIntro compute
Intro compute
 
Intro computeRRR
Intro computeRRRIntro computeRRR
Intro computeRRR
 
R tech introcomputer
R tech introcomputerR tech introcomputer
R tech introcomputer
 
Introduction to computers
Introduction to computersIntroduction to computers
Introduction to computers
 
C101 – Intro to Programming with C
C101 – Intro to Programming with CC101 – Intro to Programming with C
C101 – Intro to Programming with C
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristics
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristics
 
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
Patching Windows Executables with the Backdoor Factory | DerbyCon 2013
 
Designs, Lessons and Advice from Building Large Distributed Systems
Designs, Lessons and Advice from Building Large Distributed SystemsDesigns, Lessons and Advice from Building Large Distributed Systems
Designs, Lessons and Advice from Building Large Distributed Systems
 
Session01_Intro.pdf
Session01_Intro.pdfSession01_Intro.pdf
Session01_Intro.pdf
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
 
add9.5.ppt
add9.5.pptadd9.5.ppt
add9.5.ppt
 
10 instruction sets characteristics
10 instruction sets characteristics10 instruction sets characteristics
10 instruction sets characteristics
 
Bioinformatics v2014 wim_vancriekinge
Bioinformatics v2014 wim_vancriekingeBioinformatics v2014 wim_vancriekinge
Bioinformatics v2014 wim_vancriekinge
 
Philip polstra
Philip polstraPhilip polstra
Philip polstra
 
Computer Concepts
Computer ConceptsComputer Concepts
Computer Concepts
 
Debugging multiplayer games
Debugging multiplayer gamesDebugging multiplayer games
Debugging multiplayer games
 
Inside The Computer
Inside The ComputerInside The Computer
Inside The Computer
 
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
Trends in Programming Technology you might want to keep an eye on af Bent Tho...Trends in Programming Technology you might want to keep an eye on af Bent Tho...
Trends in Programming Technology you might want to keep an eye on af Bent Tho...
 
Максим Харченко. Erlang lincx
Максим Харченко. Erlang lincxМаксим Харченко. Erlang lincx
Максим Харченко. Erlang lincx
 

Recently uploaded

1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
nhiyenphan2005
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
JungkooksNonexistent
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
keoku
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
Javier Lasa
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
laozhuseo02
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
nirahealhty
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
harveenkaur52
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
GTProductions1
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
CIOWomenMagazine
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
Gal Baras
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Florence Consulting
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 

Recently uploaded (20)

1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
Bài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docxBài tập unit 1 English in the world.docx
Bài tập unit 1 English in the world.docx
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
 
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
Internet of Things in Manufacturing: Revolutionizing Efficiency & Quality | C...
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 

COMPUTER INTRODUCTION

  • 1. Introduction to computers and programming
  • 2. Content • Hardware • Information storage  RAM, ROM  HD, DVD • Display  Images  Characters (fonts) • File system/type  Encryption  Compression • Network  Protocols  Packets • Programming  Algorithm  Pseudocode  Flowchart • Languages • Source code  Example
  • 6. Information storage • 1 bit • 8 bits • 16 bits • 32 bits • 64 bits • bit (1 or 0) • byte (octet) (28) • word (216) • double (232) • long double (264) Encoding information on a fixed element of length n with a base b gives bn non-redundant possibilities
  • 7. Information coding • Binary  0 or 1 • Octal  0-7 • Hexadecimal  0-9+A-F • Decimal  0-9 • How to count 128 64 32 16 8 4 2 1 1 0 1 1 0 1 0 1 • 128+32+16+4+1=  181 (decimal)  265 (octal)  B5 (hexadecimal) • Signed vs unsigned  0 to 255  -127 to +127
  • 8. Operations on bits • Booleans:  0 = false = no  1 = true = yes • Operators:  AND  OR  XOR  NOT • Example tables AN D 0 1 0 0 0 1 0 1 OR 0 1 0 0 1 1 1 1 XO R 0 1 0 0 1 1 1 0
  • 9. RAM/ROM Memory mapping Address Values 0000 0001 0002 .. .. .. .. FFFF • Size reminder: • Kilobyte Kb 210 ~103 • Megabyte Mb 220 ~106 • Gigabyte Gb 230 ~109 • Terabyte Tb 240 ~1012 • Petabyte Pb 250 ~1015 • … 1 0 1 1 1 0 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0 1 0 0
  • 11. Display • Screen pixel or dots • Color coding: 32 bits • 1 pixel = 3 bytes of color (RGB)+1 byte alpha channel (transparency) • 1600x1200x4bytes=7,5 Mb! • Fonts  Bitmap  Vectors  TrueType, OpenType, PostScript QuickTime™ et un décompresseur TIFF (non compressé) sont requis pour visionner cette image.
  • 12. Keyboard/Mouse • Each key (or combination of keys) of the keyboard sends a code to the computer. • The code is interpreted and converted to the corresponding ASCII or Unicode number. • The mouse movements  1 to 4 bytes (vertical & horizontal) • Buttons  Clicked, pressed, rolled buttons
  • 13. ASCII & Unicode • ASCII 7/8 bits • Unicode  UTF-8/16/32 bits  ISO-8859 (Latin) • od -c od -h •
  • 14. Software layers Files Software User Interface Operating System ROM Hardware Data (.doc, .mp3) Word, scripts, mail, web browser… Windows BIOS CLI, X-Windows Linux CPU, RAM, HD, DVD Windows Quartz MacOSX Firmware
  • 15. File systems • Method the OS uses to store information  Storage unit, directories, subdirectories (Windows, VMS)  Single arborescence (Linux, MacOSX, all Unix) • What exactly is a file?  a piece of information (text, graphic, data, music program, script)  it is identified by a name and an logical address (or path)  other informations: date, size, type, creator, ownership, physical address…
  • 16. File system organisation Disk 1 Disk 2 Directories Subdirectories DOCS PROGS WORD EXCEL CONFIG DATA EXPT1 EXPT2 Windows / /usr /home local phil john bin lib emacs X11 Unix C: D: Disk 1 Disk 2
  • 17. Path • The path is the logical address used by the system or the user to locate a file. • Example: /bd_du_Palais/35/etage/4/appart/12/Dupont_ Jean.txt filename suffix path
  • 18. File types • Executable  .exe  .app  Unix requires « x » • Data  Text (.txt)  Music (.mp3)  Image (.jpg, .gif)  Movie (.mpg, .mov)  Binary (.bin) • Special cases in Unix  STDIN  STDOUT  STDERR
  • 19. Encryption / compression • Compression  Reducing the size of files  E.g., .mp3, .gz, .jpg, .zip • Encryption  Protecting your privacy  E.g., .pgp • Packing  Grouping the files  E.g., .tar
  • 20. Networks • Direct  USB 11Mb-480Mb  Ethernet 10Mb-1Gb • Wired  Modem 56Kb  ADSL 600Kb-8Mb  LAN 10Mb-10Gb • Wireless  Bluetooth 1Mb-20Mb  WIFI (AirPort) 11Mb-54Mb
  • 21. Network (ethernet or wireless) • Computer talk to each other via network protocols  ip, tcp, http, ftp, … • TCP/IP  transmission control protocol/internet protocol • Handshaking • Transmission • Ackowledgement • DNS  Domain Name Server • URL  Universal Resource Locator • IP addess  192.42.197.51
  • 22. DNS reminder 2 3 Primary DNS Root DNS Local DNS 1 5 4 6 www.expasy.org Client query Target server 129.194.8.64 *.org dns.anywhere.net client.anywhere.net www.expasy.org ??
  • 23. Packets The data travels within units called packets
  • 24. Packet breakout Usual TCP/IP payload per packet: 512 bytes
  • 26. What is a program? • How to cook? • The algorithm • Are you a programmer?
  • 27. Pseudocode • This is the pseudocode for a game of Monopoly
  • 30. Languages • Low level (processor dependent)  Machine code, assembler • High level: structured, procedural  Fortran, C, Pascal… • High level: object oriented  C++, Java, C#, Perl, Objective-C… • Virtual machines  Java, C#… • Scripting  Perl, Python, JavaScript…
  • 31. Source code -> Object code • Compiler+linker  Fortran, C, Pascal, C++… • Interpreter  Basic, Perl… • Intermediate  Java • Compiler+linker  Fast to execute, but slow to debug • Interpreter  Slow to execute, but fast to debug (no need to recompile) • Intermediate  Slow…
  • 32. Source code • Instructions  Statement, blocks  Affectation  Operators  Loops  Tests  Subroutines  Comments • Data structures  Variable  List  Array  Hash  Pointers  Objects
  • 33. Source code (2) • Statement, blocks  One or more instructions for the processor • Affectation  Change to a variable • Operator  affect one or more variable  + * - / AND OR NOT… • Variable  A region in memory that can be modified  Exists in different types  Scalar, char, numeric, boolean  List, array  Hash  Combination->data structure
  • 34. Source code (3) • Loops  Allow the computer to repeat blocks • Tests  Decide what to do • Subroutines  Programs frequently called (functions) • Comments  The most important lines of the source code… • Pointers  Reference to region in memory (address) • Objects  Combination of data and code
  • 35. Example: a text to treat « Noon rings out. A wasp, making an ominous sound, a sound akin to a klaxon or a tocsin, flits about. Augustus, who has had a bad night, sits up blinking and purblind. Oh what was that word (is his thought) that ran through my brain all night, that idiotic word that, hard as I'd try to pun it down, was always just an inch or two out of my grasp - fowl or foul or Vow or Voyal? - a word in a quizz which, by association, brought into play an incongruous mass and magma of nouns, idioms, slogans and sayings, a confusing, amorphous outpouring which I sought in vain to control or turn off but which wound around my mind a whirlwind of a cord, a whiplash of a cord, a cord that would split again and again, would knit again and again, of words without communication or any possibility of combination, words without pronunciation, signification or transcription but out of which, notwithstanding, was brought forth a flux, a continuous, compact and lucid flow: an intuition, a vacillating frisson of illumination as if caught in a flash of lightning or in a mist abruptly rising to unshroud an obvious sign - but a sign, alas, that would last an instant only to vanish for good. » Gilbert Adair
  • 36. Result… a=97 b=15 c=26 d=35 f=23 g=32 h=44 i=90 j=1 k=5 l=33 m=17 n=91 o=104 p=15 q=1 r=43 s=59 t=77 u=52 v=4 w=31 x=2 y=13 z=2 Do you see any problem?? Try with this: « The quick brown fox, jumps over the lazy dog. »
  • 38. Source code example #!/usr/bin/perl -w # essential line of all perl scripts $filename = "avoid.txt"; # affect « avoid.txt » to the variable $filename # open the file, or exit open(FILE, $filename) || die "Cannot open file ‘$filename’nn"; @text = <FILE>; # add each line of the file to an array close FILE; foreach $line (@text) { # read one line from the array into $line and repeat for each line @table = split(//,$line); # read each character of the line in an array while ($char=pop(@table)) { # read one character of the array 'table' and repeat for all $char =~ s/[^a-z]//; # keep only the alphabetical character a to z if ($char) { # check if the character exists and execute the block $count{$char}++; # if yes, increment by one the hash 'count' } } } # print each character and its number of occurence one per line foreach $c (keys %count) { print "$c=$count{$c}n"; } exit; # quit the program
  • 39. Tips • Think about your problem • Create a flowchart • Create the pseudocode • Verify the memory used by your variables • Write the code • Test the code  For all the possible functions or cases (if possible)  Give it to users as a beta (if not possibe)  Sell it (if you work for Microsoft©… ;-) • Debug
  • 40. Summary of the week • Monday  Intro computers & programming  Intro Unix  Tutorial Unix • Tuesday  Intro Perl  Regexp & Perl In-liners • Wednesday  Object Oriented programming  BioPerl  EMBOSS • Thursday  Database indexing  BLAST  HTML & cgi-bin • Friday  Finish exercises  Users questions
  • 41. Unix • Next presentation… VVaassssiilliiooss aalliiaass UUnniixxMMaann!!!!!!